gpt4 book ai didi

sql - 无法将 vb.net 项目与 Access 号进行比较

转载 作者:搜寻专家 更新时间:2023-10-30 22:12:53 25 4
gpt4 key购买 nike

编辑:对于遇到此问题的任何人,不要错过有关仅使用的提示参数,而不是将值直接插入到 SQL 查询中。


我的 vb.net 项目遇到了一个大问题,我坚持了一个星期

我有一个组合框项目,我需要将它与 Access 号进行比较,这是我的数据库以检索一些信息,但我只是收到一个错误,无论我将我的组合框项目转换成什么格式,它都说我的数据类型不兼容用表达式

这是我的代码中的一个 SQL 查询:

Dim dt1 As New DataTable 

'This query select some itens from a row that match with the selected combobox number

Dim find1 As New OleDb.OleDbDataAdapter("SELECT Product, Number," _
& " Customer, Quantity, ProductionDate, AskDay, Pack, Company FROM RegOPE" _
& " WHERE Number ='" & CInt(mycombobox.SelectedItem) & "'", cn)

'Ive tried SelectedItem, Item, Text, SelectedValue...
'For conversion i tried parse, tryparse, conversion...

cn.Open() 'Opens database connection
find1.Fill(dt1) <- I got the error here
cn.Close() 'Close database connect
mydatagrid.DataSource = dt1 'Show the result in datagridview

最佳答案

数字标准应该没有引号

Dim find1 As New OleDb.OleDbDataAdapter("SELECT Product, Number, " _
& "Customer, Quantity, ProductionDate, AskDay, Pack, Company FROM RegOPE " _
& "WHERE Number =" & CInt(mycombobox.SelectedItem), cn)

但最好始终使用参数:

Dim comm = New OleDb.OleDbCommand("SELECT Product, Number, " _
& "Customer, Quantity, ProductionDate, AskDay, Pack, Company FROM RegOPE " _
& "WHERE Number =?", cn)

comm.Parameters.AddWithValue("unusedName", mycombobox.SelectedItem)

Dim find1 As New OleDb.OleDbDataAdapter(comm)

关于sql - 无法将 vb.net 项目与 Access 号进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21023767/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com