【发布时间】:2021-10-06 14:33:48
【问题描述】:
我编写了一个向 Ase Sybase 服务器发送 sql 查询的程序。 这个奇迹在 Ado Net Core.AseClient 的帮助下发挥了作用,并且总体上成功地解决了这个问题。
关键功能是一次向多个选定的服务器发送请求。这很方便,但是当涉及到带有 GO 分隔符的长程序时,这里它成功报告:
'go' 附近的语法不正确
我知道为什么会发生这种情况,因为 Transact-SQL 不支持此分隔符。当然,GO 运算符被 SQL Server Management Studio (SSMS)、sqlcmd 和 osql 识别,但我对在 AseClient 上工作的拐杖感兴趣。
【问题讨论】:
-
您需要在 GO 分隔符上拆分完整的命令文本,并作为单独的请求发送
-
go不是ASE所理解的 T-SQL 语言的一部分;go是客户端命令;这告诉客户端(例如,isql)何时向数据服务器提交批处理/请求/操作;正如 Hans 所提到的,您需要将go子句替换为您的应用程序用于向数据服务器提交新批处理/请求/操作的任何内容 -
问题到底是什么?
-
请提供足够的代码,以便其他人更好地理解或重现问题。