我做了一段数据库的sql 语句 insert into ..... go insert into .... go 保存于一个文件。 当我在程序中点击一个按钮后,读出了这个文件的这些内容出来,并要用 sqlcommand更新到数据库里去,但点了更新后就出错,catch出来的话是第x行go附近有语法错误。但这段话在查询分析器里没有任何问题,如果把go去掉也没有任何问题,请问如何处理这个sql 的go呢?
如果是这样的语句呢
IF EXISTS (SELECT *
FROM sysobjects
WHERE name = N'<scalar_function_name, sysname, test_function>')
DROP FUNCTION <scalar_function_name, sysname, test_function>
GO
CREATE FUNCTION <scalar_function_name, sysname, test_function>
(<@param1, sysname, @p1> <data_type_for_param1, , int>,
<@param2, sysname, @p2> <data_type_for_param2, , int>)
RETURNS <function_data_type, ,int>
AS
BEGIN
<function_body, , RETURN @p1 + @p2 >
-- eg.
-- DECLARE @sum AS int
-- SELECT @sum = @p1 + @P2
-- RETURN @sum
END
GO
这个GO如何处理
如果任务中包含多个语句,那么可以将它们分组,然后可以一次执行一个批处理。为了标明批处理的结束,请使用 GO 命令。从一个 GO 命令到下一个 GO 命令的所有 SQL 语句都被发送到一个批处理,以便于 OLE DB 提供程序执行。
CREATE DEFAULT、CREATE PROCEDURE、CREATE RULE、CREATE TRIGGER 和 CREATE VIEW 语句不能在批处理中与其它语句组合使用。批处理必须以 CREATE 语句开始。所有跟在该批处理后的其它语句将被解释为第一个 CREATE 语句定义的一部分。