我有几个脚本需要在我的数据库上运行。所以我有几个问题。
在打开与数据库的连接时,我只是使用 Connection、CommandText、CommandType 和 CommandTimeout。
第一个问题 - 有谁知道通过这种方法,我可以创建永久表,而不是临时表?
其次 - 我将如何运行这个文件?我可以将文件设置为参数,然后在查询中运行参数吗?
谢谢
在 C# 中——
您可以通过这种方式创建永久表和临时表。
将脚本作为命令对象的 CommandText 运行。
来自 MSDN 的示例:如何在查询中设置参数,
private static void UpdateDemographics(Int32 customerID,
string demoXml, string connectionString)
{
string commandText = "UPDATE Sales.Store SET Demographics = @demographics "
+ "WHERE CustomerID = @ID;";
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlCommand command = new SqlCommand(commandText, connection);
command.Parameters.Add("@ID", SqlDbType.Int);
command.Parameters["@ID"].Value = customerID;
command.Parameters.AddWithValue("@demographics", demoXml);
try
{
connection.Open();
Int32 rowsAffected = command.ExecuteNonQuery();
Console.WriteLine("RowsAffected: {0}", rowsAffected);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}
您可以在 .NET SQL 连接中执行您可以在 SQL 脚本中执行的任何操作。至于“运行文件”,您需要将文件文本加载到内存中并将加载的文本作为单个命令执行。
我们在我们的应用程序中做了类似的事情。我们的数据库脚本存储在 SQL 脚本中。我们将每个文件从磁盘顺序加载到内存中并执行它。