Проблема в MySQL bulk insert с использованием datatable и mysqldataadapter
привет, у меня возникла странная проблема в MySQL insert с использованием dataadapter и datatable.... я не могу понять, в чем собственно проблема..
Только одна вставка строки, а затем ошибка givien
У вас есть ошибка в синтаксисе SQL; проверьте руководство, которое соответствует вашей версии сервера MySQL для правильного синтаксиса для использования рядом; SP_InsertCTC; SP_InsertCTC; SP_InsertCTC; SP_InsertCTC; в строке 1
public void BulkCopyCTC(List<EmployeeDet> list) { DataTable dt = new DataTable(); dt.Columns.Add(new DataColumn("employee_id",typeof( System.String))); dt.Columns.Add(new DataColumn("employee_name", typeof(System.String))); dt.Columns.Add(new DataColumn("emp_ctc",typeof( System.Decimal))); foreach (EmployeeDet item in list) { DataRow dr = dt.NewRow(); dr["employee_id"] = item.GetID(); dr["employee_name"] = item.GetName(); dr["emp_ctc"] = item.GetCTC(); dt.Rows.Add(dr); } MySqlConnection con = new MySqlConnection(new ConnectionUtils().GetConnectionString()); if (con.State == ConnectionState.Open) { con.Close(); } con.Open(); MySqlCommand cmd = new MySqlCommand("SP_InsertCTC", con); cmd.CommandType = CommandType.StoredProcedure; cmd.UpdatedRowSource = UpdateRowSource.None; cmd.Parameters.Add("?e_id", MySqlDbType.String).SourceColumn= "employee_id"; cmd.Parameters.Add("?e_name", MySqlDbType.String).SourceColumn= "employee_name"; cmd.Parameters.Add("?emp_ctc", MySqlDbType.Decimal).SourceColumn= "emp_ctc"; MySqlDataAdapter da = new MySqlDataAdapter(); da.InsertCommand = cmd; da.UpdateBatchSize = 100; int records = da.Update(dt); Response.Write("<script>alert('inserted " + records +" Rows')</script>"); con.Close(); } } Table CREATE TABLE `employee_ctc` ( `emp_id` VARCHAR(20) NULL DEFAULT NULL, `emp_name` VARCHAR(50) NULL DEFAULT NULL, `CTC` DECIMAL(10,2) NULL DEFAULT NULL ) Store Procedure DELIMITER $$ CREATE DEFINER=`root`@`localhost` PROCEDURE `SP_InsertCTC`( e_id VARCHAR(20), e_name VARCHAR(50), emp_ctc DECIMAL(10,2)) BEGIN INSERT INTO Employee_CTC(emp_id,emp_name,CTC) VALUES(e_id ,e_name,emp_ctc); END $$ DELIMITER ;
Member 832086
Привет Дорогой ,
У меня есть вопрос .
Я использую тот же пример в проекте MySQL .
Но da. Update (dt) не работает корректно .
Я получаю этот результат от функции da. Update (dt): int records = 0;
число записей равно нулю .
Почему?
Спасибо
с уважением
Member 832086
У меня есть вопрос .
MySqlDataAdaptor Update не обновляет базу данных ?
Я использую тот же пример в проекте MySQL .
Но da. Update (dt) не работает корректно .
Я получаю этот результат от функции da. Update (dt): int records = 0;
число записей равно нулю .
Почему?
Спасибо
с уважением