PDA

View Full Version : error while executing 'A Batch Cmd' at line 0;sql error



m_zamani
دوشنبه 28 اردیبهشت 1388, 09:39 صبح
error while executing 'A Batch Cmd' at line 0;sql error
سلام
اين خطا يعني چي؟

m_zamani
دوشنبه 28 اردیبهشت 1388, 10:33 صبح
وقتي ميخوام اطلاعاتي رو از فايل text بريزم توي table اين پيغام خطا رو ميده .

shamsoft
دوشنبه 28 اردیبهشت 1388, 10:47 صبح
توی نام SP Insert خودتون از کوتیشن استفاده کردید؟ اگه آره باید کوتیشنو حذف کنید. تو اسم Stored Procedure نباید از کوتیشن استفاده بشه!

m_zamani
دوشنبه 28 اردیبهشت 1388, 10:52 صبح
اما من از كوتيشن استفاده نكردم

m_zamani
دوشنبه 28 اردیبهشت 1388, 10:54 صبح
"BULK INSERT table1 FROM '" + TextBox1.Text.ToString + "' WITH (FIELDTERMINATOR = ',')"

اين خط مشكل داره؟

m_zamani
سه شنبه 29 اردیبهشت 1388, 09:38 صبح
"BULK INSERT table1 FROM '" + TextBox1.Text.ToString + "' WITH (FIELDTERMINATOR = ',')"

اين خط مشكل داره؟

كسي نميدونه اشكال اين كد چيه كه باعث ميشه اين خطا رو بده؟

anooshiran
سه شنبه 29 اردیبهشت 1388, 10:44 صبح
سلام دوست عزيز

syntax كد شما كاملا درست به نظر مياد. البته به گفته msdn اين ارور زماني حادث ميشه كه نام store procedure بين كوتيشن قرار گرفته باشد. البته راه حلي هم پيش نهاد داده كه كد زير را به ابتداي استرينگت اضافه كن



SET QUOTED_IDENTIFIER ON


اين را امتحان كن
اگر نشد بعد از ON كلمه Go را استفاده كن

فكر مي كنم از تركيب اينها به نتيجه برسي
به هر صورت سعي مي كنم خودم هم تست كنم . شما هم تست نتيجه را اطلاع بده

anooshiran
سه شنبه 29 اردیبهشت 1388, 11:38 صبح
سلام دوست عزيز

من با كدهاي زير تست كردم و كاملا جواب گرفام بدون هيچ مشكلي





Dim sqlCon As New SqlClient.SqlConnection("Integrated Security=SSPI;Data Source=. ;Initial Catalog='Test'")
Dim sqlDtAdp As New Data.SqlClient.SqlDataAdapter("", sqlCon)
Dim sqlCom As New SqlClient.SqlCommand("", sqlCon)
sqlCon.Open()
'sqlCom.CommandText = "SET QUOTED_IDENTIFIER ON BULK INSERT table1 FROM '" + TextBox1.Text.ToString + "' WITH (FIELDTERMINATOR = ',')"
sqlCom.CommandText = "BULK INSERT table1 FROM '" + TextBox1.Text.ToString + "' WITH (FIELDTERMINATOR = ',')"
sqlCom.ExecuteScalar()
sqlCon.Close()





اين توضيح لازم است كه من حتي با commandtext ي كه remark كردم هم تست كردم و جواب گرفتم.

تنها مشكلي كه شايد پيش بياد اين است كه در شبكه باشي و time out بگيري

امتحان كن و لطفا نتيجه را اعلام كن