C# 不同的;选择";MYSQL中带“的语法;dtTable.选择";在.NET中
我在下面使用MYSQL查询浏览器尝试了“选择”MYSQL语法,工作正常。当我在dtTable.Select()中使用此语法时,错误是“表达式上的语法错误”。请帮帮我,谢谢C# 不同的;选择";MYSQL中带“的语法;dtTable.选择";在.NET中,c#,vb.net,datatable,sql,datatable.select,C#,Vb.net,Datatable,Sql,Datatable.select,我在下面使用MYSQL查询浏览器尝试了“选择”MYSQL语法,工作正常。当我在dtTable.Select()中使用此语法时,错误是“表达式上的语法错误”。请帮帮我,谢谢 Dim dtTable As DataTable = MyDataset.Tables("machine") Dim sql As String = String.Format("SELECT product_name, operator_name, totalizer_name
Dim dtTable As DataTable = MyDataset.Tables("machine")
Dim sql As String = String.Format("SELECT product_name, operator_name, totalizer_name
FROM product, operator, totalizer_type, machine
WHERE product.product_id = machine.product_id AND
operator.operator_id = machine.operator_id AND
totalizer_type.totalizer_id = machine.totalizer_id
ORDER BY machine.machine_id ASC;")
Dim rowSearching() As DataRow
rowSearching = dtTable.Select(sql) ' <--- (error in here - "Syntax error on expression")
If rowSearching.Length > 0 Then
For Each dr As DataRow In rowSearching
MessageBox.Show(CStr(dr.Item(0)) & " " & CStr(dr.Item(1)) & " " & CStr(dr.Item(2)))
Next
End If
Dim dtTable As DataTable=MyDataset.Tables(“机器”)
Dim sql As String=String.Format(“选择产品名称、操作员名称、累加器名称
来自产品、操作员、累加器类型、机器
其中product.product\u id=machine.product\u id和
operator.operator\u id=machine.operator\u id和
累加器\类型.累加器\ id=机器.累加器\ id
按机器订购。机器(id ASC;))
Dim rowSearching()作为数据行
rowSearching=dtTable。然后选择(sql)'0
对于行搜索中的每个dr As数据行
MessageBox.Show(CStr(dr.Item(0))和“&CStr(dr.Item(1))和“&CStr(dr.Item(2)))
下一个
如果结束
数据表。选择
不会那样工作。它只接受其列上的过滤器,其语法类似于sql中的where子句语法
例子:
将返回dtTable
中具有operator\u id=1的所有行
有关更多信息:
您错误地理解了Select在Datatable对象上的工作方式
你需要按照这些思路使用一些东西
Dim conn As New MySqlConnection
Dim myCommand As New MySqlCommand
Dim myAdapter As New MySqlDataAdapter
Dim myData As New DataTable
Dim SQL As String
conn.ConnectionString = myConnString
conn.Open()
myCommand.Connection = conn
myCommand.CommandText = SQL
myAdapter.SelectCommand = myCommand
myAdapter.Fill(myData)
有关详细教程,请参阅。@Mike Miller,谢谢。我试图消除“String.Format”,但仍然出现错误:“语法错误:“product_name”运算符后缺少操作数”。:(我已经在mysql中创建了一个数据库,然后我使用“MySQLDataAdapter”中的“Fill”方法放入数据集。我的困难是当我想从四个数据表中检索数据时,这些数据表掌握了数据集中相关的细节。我创建的数据表之间的关系。但是当我尝试执行命令“rowSearching=dtTable.Select(sql)”时若要显示DataTable中的某些数据,我尚未成功。谢谢谢谢。我想从多个DataTable中检索数据,并在数据集中包含与主详细信息相关的数据。如何操作?
Dim conn As New MySqlConnection
Dim myCommand As New MySqlCommand
Dim myAdapter As New MySqlDataAdapter
Dim myData As New DataTable
Dim SQL As String
conn.ConnectionString = myConnString
conn.Open()
myCommand.Connection = conn
myCommand.CommandText = SQL
myAdapter.SelectCommand = myCommand
myAdapter.Fill(myData)