Wednesday, February 21, 2007

Is it really so hard to understand why Macs are easier?

It's no secret to anyone that Microsoft caters to developers while Apple is faithful to end-users.  I happen to like Apple's approach since, as a developer, I actually do qualify as a user.  Microsoft should really be concerned since I don't think I would find too many people that would disagree when I say that if the market shares were even, Apple would seriously be in the driver seat.  I use Windows because that's where my money is made and where most of the applications I use exist.  Here is just one example where Microsoft unnecessarily makes things complicated.  Consider this screenshot of my installed apps (I'm using Vista x64).


Now, why do I have separate items listed for SQL Server VSS write, and setup support files, and native client?  Those items are not updated independently and I can't ever see a user removing them individually.  So why in the h*ll do I have to see them here?  Just bundle them as part of my SQL Server Express product. 

The same goes for all the Visual Studio junk.  64bit Prerequisites?  Remote debugger?  Tools for Office runtime?  Visual J# redist package?  I should see one item here for VS 2005 and it would be called, drumroll please, "Visual Studio 2005 Team Suite".  Done.  That's all.  If I want to add/remove options from the product, them I start setup for VS 2005 and change things.

Tuesday, February 13, 2007

Excellent turnout for today's .NET webinar

I was feeling pretty ill on Monday but I managed to recover enough to present today's webinar on developing applications for MySQL with Visual Studio.  We had a terrific turnout of +150 people and I've been told the presentation came off pretty well.  As a reminder, if you attended the webinar and have any question that you were not able to ask during the session, please email me directly and I'll get you an answer.

Even more exciting is the community feedback.  I received an email just a couple of hours ago from Jeffrey McManus who blogs about MySQL and .NET (among other things).  He wrote up a nice little article on installing MySql.Data into the GAC.  You can read it here.  Thanks Jeffrey, and keep them coming!

Friday, February 2, 2007

MySQL Connector/Net 1.0.9 now available!

MySQL Connector/Net 1.0.9 has been released. MySQL Connector/Net is an all-managed ADO.Net provider for MySQL. This release is suitable for use in production environments and with any version of MySQL.

It is now available in source and binary form from the Connector/Net download pages at and mirror sites (note that not all mirror sites may be up to date at this point of time - if you can't find this version on some mirror, please try again later or choose another download site.)

This release includes many bug fixes along with the following enhancements/changes:

* Implemented a stored procedure cache. By default, the connector caches the metadata for the last 25 procedures that are seen. You can change the number of procedures that are cached by using the 'procedure cache=<size>' connection string setting. You can disable the procedure cache by setting a zero size.

* Shared memory connections now work as expected.

* Queries containing a large number of parameters now run many times faster than before. As an example of the performance gains seen, an internal testing app that needed more than 30 minutes to execute using 1.0.7, completes in less than 8 seconds using 1.0.9.

* We are no longer providing binaries compiled with .NET 1.0 or 2.0 with this branch of the connector. We are doing this for a couple of reasons. First, we believe the vast majority of our users are using .NET 1.1 or 2.0 so not shipping 1.0 binaries reduces our testing workload while affecting a small number of developers. Also, any user building applications with .NET Framework 2.0 should use our new 5.0 product which fully implements the ADO.Net interfaces.

* ICSharpCode ZipLib is no longer used by the connector and is no longer being distributed with it.

* The installer will continue registering the assembly into the Global Assembly Cache. Any user that does not want this behavior is encouraged to download our no-installer packages.

* Turned MySqlPoolManager into a static class and added a static constructor to avoid any race conditions related to initializing the hash table.

* Added 'Ignore Prepare' connection string option for disabling prepared statements application-wide. This was added because we found that server-side prepared statements did not always work as expected. Using this option, a user can continue to use existing code that calls Prepare() while having that call emulated in a non-prepared way. The default for this option is true.

* A nicer exception is displayed if you have added a parameter without the parameter marker.

* Improved CommandBuilder.DeriveParameters to first try and use the procedure cache before querying for the stored procedure metadata.

* Return parameters created with DeriveParameters now have the name RETURN_VALUE.

* Fixed problem with parameter name hashing where the hashes were not getting updated when parameters were removed from the collection. This could cause "item has already been added to the hash" errors.

* Fixed problem where pooled connections that are added back to the idle pool may be still in the closed state.

* Fixed problem where SingleRow and SchemaOnly behaviors now work correctly when calling stored procedures or using server-side prepared statements.

Thank you for checking out this release of Connector/Net.

MySQL Tools for Visual Studio 1.1.2 now available

Today we have released MySQL Tools for Microsoft Visual Studio 1.1.2 -- a downloadable plug-in for Visual Studio 2005 that allows Windows developers to quickly build MySQL data-driven applications with Visual Studio. With this plug-in, developers will be able to create, modify and manage MySQL database objects with an easy-to-use interface from within the Visual Studio IDE. This product is delivered as a package compatible with Visual Studio 2005.

This release is identical to 1.1.0 in functionality. We identified and corrected some problems with the installers for 1.1.0 and the unreleased 1.1.1.

The 1.1 series plugin adds support for using the DataSource wizard and the DataSet designer in Visual Studio 2005. The Data Source wizard can be found by choosing Data|Add Data Source from the Visual Studio menu. It provides a way to connect the generic data-handling capabilities of Visual Studio to our provider. Once a data source is added then custom datasets can be created using the DataSet Designer. Using this designer, you can drag and drop database tables onto the design surface and use the created TableAdapter classes to populate the tables.

MySQL will be presenting a webinar showing these new capabilities. You can find the details of this webinar and register for the event at

Thank you for your time and effort in checking out this product. Please don't hesitate to use the following resources for posting your bug reports, questions, or concerns.

Bugs: (use the Connector/Net category)