在C#中部署SQL存储过程

时间:2009-11-06 20:45:54

标签: c# sql stored-procedures

我的系统上有一个存储的proc .sql文件。我希望能够将此文件作为C#代码中的sp移动到数据库中。

我可以打开文件,以字符串形式阅读,然后执行它,但我觉得应该有更好的方法。

6 个答案:

答案 0 :(得分:2)

为什么不呢?这是一个简单的方法,它可以工作,你从文件中读取sql脚本并执行它
我觉得这样很好

答案 1 :(得分:1)

您是在谈论将存储过程驻留在数据库而不是C#代码中的字符串查询吗?

我可能会偏离基地,但你的问题不是很明确......

您是否查看了TSQL命令CREATE PROCEDURE

答案 2 :(得分:0)

Sql解析器必须编译“create procedure .....”语句,将其转换为服务器的内部表示形式。即使你能找到解决方法,为什么呢?这是将数据输入和输出服务器的可接受方式 - 即使该数据是代码。

答案 3 :(得分:0)

我不认为有办法在C#或.net中做你想要的。您可以使用SMO在sql server上获取存储过程并将它们保存到文件中,但不是相反。如果要在计算机上直接执行.sql文件,则可能必须使用powershell。

答案 4 :(得分:0)

可以将命令行工具用于您用于创建存储过程的任何数据库服务器。使用正确的参数从C#执行exe。

他们经常接受文件名作为参数,因此您不需要以字符串形式加载sql。

不知道你的目标是否正常,但它应该有效。

答案 5 :(得分:0)

我相信您正在寻找的是“SQL Server管理对象(SMO)”。它安装在SQL Server安装的“客户端工具”部分下,您可以使用C#和Visual Studio 2008对其进行编程。