当我想保存时,我的项目出错了 [英] My project is giving an error when I want to save
问题描述
我在说SQL语句中有问题
这里是代码
我尝试了什么:
Dim sqlinsert As String
sqlinsert =INSERT INTO CLASS(ID,STUDENT_ID,DOP,ACCOUNT, CLASS TEACHER,CLASS NAME)&
VALUES(@ ID,@ STUDENT_ID,@ DOP,@NAME OF ACCOUNT,@ CLASS TEACHER,@ CLASS NAME)
Dim CMD As New OleDbCommand(sqlinsert,conn1)
CMD.Parameters.Add(New OleDbParameter(@ ID,txt_id))
CMD.Parameters.Add(新的OleDbParameter(@ STUDENT_ID,txt_std))
CMD.Parameters.Add(新的OleDbParameter(@ DOP,txtx_dop))
CMD.Parameters.Add(新的OleDbParameter(@ NAME OF ACCOUNT,txt_acc))
CMD.Parameters.Add(新OleDbParameter(@ CLASS TEACHER,txt_teacher))
CMD.Parameters .Add(新OleDbParameter(@ CLASS NAME,txt_teacher))
conn1.Open()
CMD.ExecuteNonQuery()
conn1.Close()
DGV1.Refresh()
IT IS SAYING THAT THERE IS A PROBLEM IN MY SQL SYNTAX
HERE IS THE CODE
What I have tried:
Dim sqlinsert As String
sqlinsert = "INSERT INTO CLASS(ID, STUDENT_ID, DOP, NAME OF ACCOUNT, CLASS TEACHER, CLASS NAME)" &
"VALUES(@ID, @STUDENT_ID, @DOP, @NAME OF ACCOUNT, @CLASS TEACHER, @CLASS NAME)"
Dim CMD As New OleDbCommand(sqlinsert, conn1)
CMD.Parameters.Add(New OleDbParameter("@ID", txt_id))
CMD.Parameters.Add(New OleDbParameter("@STUDENT_ID", txt_std))
CMD.Parameters.Add(New OleDbParameter("@DOP", txtx_dop))
CMD.Parameters.Add(New OleDbParameter("@NAME OF ACCOUNT", txt_acc))
CMD.Parameters.Add(New OleDbParameter("@CLASS TEACHER", txt_teacher))
CMD.Parameters.Add(New OleDbParameter("@CLASS NAME", txt_teacher))
conn1.Open()
CMD.ExecuteNonQuery()
conn1.Close()
DGV1.Refresh()
推荐答案
你的参数名中不能有这样的空格
You can't have spaces in your parameter names like that
Dim sqlinsert As String
sqlinsert = "INSERT INTO CLASS(ID, STUDENT_ID, DOP, NAME OF ACCOUNT, CLASS TEACHER, CLASS NAME)" &
"VALUES(@ID, @STUDENT_ID, @DOP, @NAME_OF_ACCOUNT, @CLASS_TEACHER, @CLASS_NAME)"
Dim CMD As New OleDbCommand(sqlinsert, conn1)
CMD.Parameters.Add(New OleDbParameter("@ID", txt_id))
CMD.Parameters.Add(New OleDbParameter("@STUDENT_ID", txt_std))
CMD.Parameters.Add(New OleDbParameter("@DOP", txtx_dop))
CMD.Parameters.Add(New OleDbParameter("@NAME_OF_ACCOUNT", txt_acc))
CMD.Parameters.Add(New OleDbParameter("@CLASS_TEACHER", txt_teacher))
CMD.Parameters.Add(New OleDbParameter("@CLASS_NAME", txt_teacher))
你好,
很可能你的列名包含空格因此错误来了。
将这些列放在方括号中。
这样改变,
Hello ,
Most probably you column name contains spaces , hence error comes .
put those columns in square braces .
Change like this way ,
Dim sqlinsert As String
sqlinsert = "INSERT INTO CLASS(ID, STUDENT_ID, DOP, [NAME OF ACCOUNT], [CLASS TEACHER], [CLASS NAME])" &
"VALUES(@ID, @STUDENT_ID, @DOP, @NAME_OF_ACCOUNT, @CLASS_TEACHER, @CLASS_NAME)"
Dim CMD As New OleDbCommand(sqlinsert, conn1)
CMD.Parameters.Add(New OleDbParameter("@ID", txt_id))
CMD.Parameters.Add(New OleDbParameter("@STUDENT_ID", txt_std))
CMD.Parameters.Add(New OleDbParameter("@DOP", txtx_dop))
CMD.Parameters.Add(New OleDbParameter("@NAME_OF_ACCOUNT", txt_acc))
CMD.Parameters.Add(New OleDbParameter("@CLASS_TEACHER", txt_teacher))
CMD.Parameters.Add(New OleDbParameter("@CLASS_NAME", txt_teacher))
谢谢
Thanks
这篇关于当我想保存时,我的项目出错了的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!