java执行sql列名无效_Sql异常:列名无效

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 17:02   1901   0

Quote: System.Data.SqlClient.SqlException:'无效的列名'Mugs'。'

我不确定错误,因为我从一段代码中复制了另一个完美无缺的表格。

我使用按钮上的文本从数据库中提取信息。按钮标记为"Mugs",项目描述也标记为"Mugs"。列名是"ItemDescription"。

所有变量都是从Form1公开共享的。

代码:

私人 Sub Button1_Click(发件人作为 对象,e 作为 EventArgs)句柄 Button1.Click

如果 Form1.lst_Receipt.Items .Count = 0 然后

Form1.noitemcost = 0

Form1.noitemtax = 0

Form1.noitemtotal = 0

Form1.lst_Receipt.Items.Add(" UTA Planetarium")

Form1.lst_Receipt.Ite ms.Add(FormatDateTime(Today,DateFormat.LongDate))

Form1.lst_Receipt.Items.Add(FormatDateTime(Today,DateFormat.LongTime))

Form1.lst_Receipt.Items.Add(" ")

Form1.lst_Receipt.Items.Add(" SubTotal:$" + Form1.noitemcost.ToString)

Form1.lst_Receipt.Items.Add(" 税:$" + Form1.noitemtax.ToString(" F2"))

Form1.lst_Receipt.Items.Add(" 总计:$" + Form1.noitemtotal.ToString(" F2"))

结束 如果

如果佛rm1.reset = 1 然后

Form1.subtotal = 0

Form1.tax = 0

Form1.total = 0 < / span>

Form1.tickettax = 0

Form1.reset = 0

结束 如果

Form1.itemdesc = Button1.Text

Form1.sqlConnection1.Open()

' 我相信下一个行是它挂起的地方。

Form1.cmd = 新 SqlClient.SqlCommand(" SELECT * FROM Inventory WHERE [ItemDescription] =" + Form1.itemdesc,Form1.sqlConnection1)

Form1.reader = Form1.cmd.ExecuteReader

Form1.reader.Read()

Form1.itemcost = Form1.reader(11)

Form1.proddesc = Form1.reader(3)

' Form1.itemdesc = Form1.reader(2)

' itemdesc = reader(2).ToString

Form1.sqlConnection1.Close()

Form1.lst_Receipt.Items.RemoveAt(Form1.lst_Receipt.Items .Count - 1)

Form1.lst_Receipt.Items.RemoveAt(Form1.lst_Receipt.Items.Count - 1)

Form1.lst_Receipt.Items.RemoveAt(Form1.lst_Receipt.Items.Count - 1)

Form1.lst_Receipt.Items .Add(Form1.proddesc + vbTab + Form1.quantity + vbTab + Form1.itemcost.ToString(" F2"))

Form1.lst_Receipt.Items.Add(" SubTotal:$" + Form1.subtotal.ToString(" F2"< / span>))

Form1.lst_Receipt.Items.Add(" Tax:$" + Form1.tax.ToString(" F2"))

Form1.lst_Receipt.Items。添加(" 总计:$" + Form1.total.ToString(" F2"))

Form1.TextBox1.Text = String .Empty

Form1.TextBox2.Text = " "

Form1.TextBox1。焦点()

关闭()

结束 Sub

这是一个标有"立即窗口"的框:

ClientConnectionId:dfec050c-bd3f-4cef-9e0e-ad871a9487e2

错误号码:207,状态:1,类:16< / ExceptionString>< DataItems>< ;数据>< Key> HelpLink.ProdName< / Key>< Value> Microsoft SQL Server< / Value>< / Data>< Data>< Key> HelpLink.ProdVer< / Key>< Value> 13.00 0.4001&LT; /值及GT;&LT; /数据与GT;HelpLink.LinkId20476 TraceRecord>

希望这足够了。这是我第一次在vb.net和sql写作。

如果您有任何疑问,请告诉我。

我尝试了什么:

我检查了两者的语法。使用条形码通过SQL查找时,它工作正常。与该代码的唯一区别是它需要从button1.text获取此特定形式。

解决方案

" + Form1.noitemcost.ToString )

Form1.lst_Receipt.Items.Add(" Tax:

" + Form1.noitemtax.ToString(" F2"))

Form1.lst_Receipt.Items.Add(" 总计:

" + Form1.noitemtotal.ToString(" F2"))

结束 如果

如果 Form1。 reset = 1 然后

Form1.subtotal = 0

Form1.tax = 0

Form1.total = 0

Form1.tickettax = 0

Form1.reset = 0

结束 如果

Form1.itemdesc = Button1.Text

Form1.sqlConnection1.Open ()

' 我相信下一行是挂在哪里。

Form1.cmd = 新 SqlClient.SqlCommand(" SELECT * FROM Inventory WHERE [ItemDescription] =" + Form1.itemdesc,Form1.sqlConnection1)

Form1.reader = Form1.cmd。 ExecuteReader

Form1.reader.Read()

Form1.itemcost = Form1.reader(11)

Form1.proddesc = Form1.reader(3)

' Form1.itemdesc = Form1.reader(2)

' itemdesc = reader( 2).ToString

Form1.sqlConnection1.Close()

Form1.lst_Receipt.Items.RemoveAt(Form1.lst_Receipt.Items.Count - 1)

Form1.lst_Receipt.Items.RemoveAt(Form1.lst_Receipt.Items.Count - 1)

Form1.lst_Receipt.Items.RemoveAt(Form1.lst_Receipt.Items.Count - 1)

Form1.lst_Receipt.Items.Add (Form1.proddesc + vbTab + Form1.quantity + vbTab + Form1.itemcost.ToString(" F2" ))

Form1.lst_Receipt.Items.Add(" SubTotal:

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP