无法执行SQL查询

无法执行SQL查询,sql,vb.net,Sql,Vb.net,我有以下代码在vb.net中执行SQL查询: opdragaliaens.CommandText=“更新UBH”& “设置吨=总吨/净吨”& “来自UniekeBlokkeHistories UBH”& “内部联接(”& “选择种植者、区块、区段、oesjaar、总和(净额)作为总净”& “来自wbridge_历史”& “按种植者、区块、区段、oesjaar分组”& “)作为wh ON”& “wh.grower=UBH.Lid_No”& “和wh.[block]=UBH.Plaas_no”& “

我有以下代码在vb.net中执行SQL查询:

opdragaliaens.CommandText=“更新UBH”&
“设置吨=总吨/净吨”&
“来自UniekeBlokkeHistories UBH”&
“内部联接(”&
“选择种植者、区块、区段、oesjaar、总和(净额)作为总净”&
“来自wbridge_历史”&
“按种植者、区块、区段、oesjaar分组”&
“)作为wh ON”&
“wh.grower=UBH.Lid_No”&
“和wh.[block]=UBH.Plaas_no”&
“和wh.section=UBH.Blok_no”&
“和wh.oesjaar=UBH.oesjaar”&
“更新()t1”&
“设置”&
t1.alias=t2.alias&
“t1.Plaasnaam=t2.blkname,”&
“t1.Kultivar=t2.variation,”&
“t1.Klas=t2.yearclass”&
“来自”&
“UniekeBlokkeHistories t1”&
“内部连接wbridge_历史记录t2”&
“在t1.Lid_No=t2.grower上”&
“和t1.Plaas_no=t2。[块]”&
“和t1.Blok_no=t2.section”&
“和t1.Oesjaar=t2.Oesjaar”
尝试
opdragaliaens.ExecuteNonQuery()
特例
MsgBox(例如消息)
结束尝试
运行查询时,我会收到一条消息:

“(”附近的语法不正确

我看不出错误发生在哪一行

查询在SQLServerManagementStudio中工作

我在VB.net中缺少什么


关于

在您的更新脚本之间有一个左括号和一个右括号
“Update()t1”和
。我建议在您的第二次约会时单独打个电话

opdragaliaens.CommandText=“更新UBH”&
“设置吨=总吨/净吨”&
“来自UniekeBlokkeHistories UBH”&
“内部联接(”&
“选择种植者、区块、区段、oesjaar、总和(净额)作为总净”&
“来自wbridge_历史”&
“按种植者、区块、区段、oesjaar分组”&
“)作为wh ON”&
“wh.grower=UBH.Lid_No”&
“和wh.[block]=UBH.Plaas_no”&
“和wh.section=UBH.Blok_no”&
“和wh.oesjaar=UBH.oesjaar;”&
“更新t1”&
“设置”&
t1.alias=t2.alias&
“t1.Plaasnaam=t2.blkname,”&
“t1.Kultivar=t2.variation,”&
“t1.Klas=t2.yearclass”&
“来自”&
“UniekeBlokkeHistories t1”&
“内部连接wbridge_历史记录t2”&
“在t1.Lid_No=t2.grower上”&
“和t1.Plaas_no=t2。[块]”&
“和t1.Blok_no=t2.section”&
“和t1.Oesjaar=t2.Oesjaar”
尝试
opdragaliaens.ExecuteNonQuery()
特例
MsgBox(例如消息)
结束尝试

编写包含所有这些连接的SQL会让阅读变得更加困难。如果您使用的是最新版本的VB支持的多行字符串文字,我建议您使用一个多行字符串文字,否则使用XML文字。这两个选项都避免了所有引号和符号,从而使文本噪音更小、更易于阅读且更不容易出错。
()
中的“Update()”
可能意味着更少