Seems all my stored procedures are broken.
They were working, the only thing I did was to change the driver.
See for example:
Code: Select all
DROP PROCEDURE IF EXISTS sp_stsn_CheckState; CREATE PROCEDURE sp_stsn_CheckState ( _Country Char(2), _State Char(2), _CityName Varchar(70) ) BEGIN Select 'X' From STSN_STATE Where CTRY_CODE = _Country And STAT_CODE = _State; SET @rows = ROW_COUNT(); if @rows = 0 Then Insert Into STSN_STATE Values ( _Country , _State , _CityName); End If; END;
I'm passing the values '00', '00' and '' to this stored. It is the same stored was working 3 minutes ago. Same code, same everything.
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ':'00'_Country,:'00'_State,:''_CityName)' at line 1
at CoreLab.MySql.b.a(e& A_0, Int32& A_1)
at CoreLab.MySql.b.a(Byte A_0, Int32 A_1, Boolean A_2)
at CoreLab.MySql.MySqlCommand.a(CommandBehavior A_0, IDisposable A_1, Int32 A_2, Int32 A_3)
at CoreLab.Common.DbCommandBase.b(CommandBehavior A_0)
I don't know, I change nothing, but the DLL to use. If I comment the part of my code that use this stored and let it go, it will broke in the next store with very similar error and so on.
Do I have to modify my stored procedure syntax to use CoreLab's provider?