Hi, I am attempting to replace the database in an application with MariaDB. This application is written in C# and previously accessed the database (mostly inserts) with LINQ. When I attempt to insert (other transactions have the same type of issue) I get the error message:

"You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '[t0].[Id], [t0].[BirthYear], [t0].[FirstName], [t0].[Gender], [t0].[LastName], [' at line 1"

The table in MariaDB is setup the same as it was in MS SQL.

Any thoughts on this subject would be most appreciated. I could go back and remove all use of LINQ and write SQL by hand, but if I can get it to work as is it will save a great deal of time, and therefore money.

Thanks in advance.

Have you set the connection to use the MySQL provider? MariaDB may not be compatible with MSSQL Server commands.

Yes, the connection is set to MySQL, but linq continues to spit out incorrect SQL ([ and ] rather than ' or "). Is there a settings I'm perhaps missing somewhere?

Connection string: server=localhost;port=3306;database=physiodata;uid=root;pwd=root
MySQL Connector version: .net 6.6.5

Not planning to use root as the user, or the password for root, just trying to get this up and will change it later.

I went ahead and added "sqlservermode=True;" to my connectionstring, now it works. Thanks

This article has been dead for over six months. Start a new discussion instead.