Access ADO 中的 GO 语句
Posted
技术标签:
【中文标题】Access ADO 中的 GO 语句【英文标题】:GO statement in Access ADO 【发布时间】:2019-10-10 05:59:16 【问题描述】:我正在尝试在从 MS Access 2019 中的 VBA 代码传递到 SQL Server 2017 的查询中使用 GO 语句。执行导致运行时错误:
80040e14 “GO 附近的语法不正确”。
在 SSMS 中执行的查询完全相同。
我做错了什么?如果我删除 GO 行,它会起作用。
在访问模块中:
Public SQLDB As Object
Public ADOcom As Object
Public Const adCmdText as Long = 1
Sub CreateDB()
Dim sql As String, connectionstring As String
connectionstring = "Driver=SQL Server Native Client 11.0;" & _
"Server=mysqlServer;" & _
"Trusted_Connection=yes;" & _
"Provider=SQLNCLI11;" & _
"DataTypeCompatibility=80;" & _
"MARS Connection=True;"
Set SQLDB = CreateObject("ADODB.Connection")
Set ADOcom = CreateObject("ADODB.Command")
SQLDB.Open connectionstring
Set ADOcom.ActiveConnection = SQLDB
ADOcom.CommandType = adCmdText
sql = "USE Master;" & vbCrLf & _
"GO" & vbCrLf & _
"CREATE DATABASE MyTest"
ADOcom.CommandText = sql
ADOcom.Execute
End Sub
【问题讨论】:
Incorrect syntax near 'GO'的可能重复 【参考方案1】:GO 不是 Transact-SQL 语句,而是可识别的命令 由 Sql Server Management Studio(即 SSMS)、SQLCMD 和 OSQL 实用程序。
Reference
你不需要在commandText中使用GO语句
【讨论】:
啊,就这么简单!谢谢。以上是关于Access ADO 中的 GO 语句的主要内容,如果未能解决你的问题,请参考以下文章
在 ADO.NET 中使用 ODBC 调用预定义的 Access 查询