English 中文(简体)
SLDataAdapter 不与 GO 合作
原标题:SQLDataadapter not working with GO

我使用 SQLDataAdapter 运行脚本。 脚本如下:

ALTER TABLE dbo.Table1 SET (LOCK_ESCALATION = TABLE)
GO
COMMIT
select Has_Perms_By_Name(N dbo.Table1 ,  Object ,  ALTER ) as ALT_Per, Has_Perms_By_Name(N dbo.Table1 ,  Object ,  VIEW DEFINITION ) as View_def_Per, Has_Perms_By_Name(N dbo.Table1 ,  Object ,  CONTROL ) as Contr_Per BEGIN TRANSACTION
GO
ALTER TABLE dbo.Table2
DROP CONSTRAINT DF_Table2
GO

它在 Go 附近的不正确的语法给我错误。 如果我从查询文本中删除 Go, 它就会正常工作 。 但我只需要执行此脚本 。

这里是 c# 代码。 查询文本是一个字符串, 包含全部查询以及 SET 和 GO 。

DataSet ds = new DataSet();
SqlConnection conn = new SqlConnection(_connectionString);
SqlDataAdapter da = new SqlDataAdapter(QueryText, conn);
da.Fill(ds);

有谁知道怎么用它吗?

Thanks in advance,
Vijay

最佳回答

GO is a marker for Management Studio or other SQLServer command lines tools and serve as final delimiter to send a batch of commands to SQL Server.
In your code, you need to replicate this behavior.
Separate the script in subparts using the GO as delimiter.
Send each part using a single command (for the ALTER TABLE) and use your SqlDataAdapter for the SELECT part.
Also you should remove the COMMIT and BEGIN TRANSACTION from the script parts and use, inside your code, the SqlTransaction object from the SqlConnection.

问题回答

暂无回答




相关问题
Anyone feel like passing it forward?

I m the only developer in my company, and am getting along well as an autodidact, but I know I m missing out on the education one gets from working with and having code reviewed by more senior devs. ...

NSArray s, Primitive types and Boxing Oh My!

I m pretty new to the Objective-C world and I have a long history with .net/C# so naturally I m inclined to use my C# wits. Now here s the question: I feel really inclined to create some type of ...

C# Marshal / Pinvoke CBitmap?

I cannot figure out how to marshal a C++ CBitmap to a C# Bitmap or Image class. My import looks like this: [DllImport(@"test.dll", CharSet = CharSet.Unicode)] public static extern IntPtr ...

How to Use Ghostscript DLL to convert PDF to PDF/A

How to user GhostScript DLL to convert PDF to PDF/A. I know I kind of have to call the exported function of gsdll32.dll whose name is gsapi_init_with_args, but how do i pass the right arguments? BTW, ...

Linqy no matchy

Maybe it s something I m doing wrong. I m just learning Linq because I m bored. And so far so good. I made a little program and it basically just outputs all matches (foreach) into a label control. ...

热门标签