【发布时间】:2012-02-01 18:57:22
【问题描述】:
我们数据库中的 Schema 名称是动态的。为什么以下不起作用?
public void ReadVersion(string connString, string schemaName)
{
string selectCommand = "SELECT major FROM [@SchemaName].[version]");
using (SqlConnection sqlConn = new SqlConnection(connString))
{
using (SqlCommand cmd = new SqlCommand(selectCommand, sqlConn))
{
sqlConn.Open();
cmd.Parameters.AddWithValue("@SchemaName", schemaName);
object result = cmd.ExecuteScalar();
}
}
}
命令执行时,参数值不被替换。这是 SqlCommand 参数的限制吗?
【问题讨论】:
标签: c# sql-server tsql ado.net