Thank you Jonathan, there is actually a sqlmetal.bat in the bin dir that does what you suggested.
Anyway, I got passed that and the password thing (see http://www.digitalpeer.com/id/mysql). But it still gets an error complaining about worng "syntax near '?db'"... it looks like it's not resolving the database name that I pass in the conn string (I also try using separate arguments instead of the conn, but very same error) C:\PROGRA~1\Mono-2.6\bin>sqlmetal /conn:Server=localhost;Database=adventureworks;Uid=root;Pwd=somePwd /code:AdventureWorks.cs /provider=MySQL DbLinq Database mapping generator 2008 version 0.19 for Microsoft (R) .NET Framework version 3.5 Distributed under the MIT licence (http://linq.to/db/license) >>> Reading schema from MySQL database sqlmetal failed:ByteFX.Data.MySqlClient.MySqlException: You have an error in you r SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '?db' at line 3 at ByteFX.Data.MySqlClient.Driver.ReadPacket () [0x00000] at ByteFX.Data.MySqlClient.Driver.Send (DBCmd cmd, System.Byte[] bytes) [0x000 00] [...] I really don't know how to troubleshoot this one. THanks again for the help Cos -------------------------------------------------- From: "Jonathan Pryor" <[email protected]> Sent: Monday, December 07, 2009 10:51 PM To: "Costantino Pipero" <[email protected]> Cc: <[email protected]> Subject: Re: [Mono-list] sqlmetal on Mono 2.6 preview > On Mon, 2009-12-07 at 19:42 -0500, Costantino Pipero wrote: >> No matter what syntax I try (I am trying to connect to a MySQL db >> called "adventureworks"), I get the same error. > > As a side note, you're missing the /provider option, so you should > actually be seeing an error message about missing the /provider option, > not spew about a TypeLoadException. That said... > >> For example: >> >> C:\Program Files\Mono-2.6\lib\mono\2.0>sqlmetal /server:localhost:3306 >> /namespace:sdventureworks /code:AdventureWorks.cs /language:csharp > > You're launching it wrong. This will use .NET to start sqlmetal... > >> returns >> >> Unhandled Exception: System.TypeLoadException: Could not load type >> 'DbLinq.Facto >> ry.ObjectFactory' from assembly 'System.Data.Linq, Version=3.5.0.0, >> Culture=neut >> ral, PublicKeyToken=b77a5c561934e089'. >> at DbMetal.Program.Main(String[] args) > > ...and (obviously?) .NET's System.Data.Linq.dll won't contain > DbLinq.Factory.ObjectFactory. > > You need to use Mono to start sqlmetal, thus ensuring that Mono's class > library is used to launch the app, e.g. > > path\to\mono.exe path\to\sqlmetal.exe ... > > - Jon > > _______________________________________________ Mono-list maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-list
