识别sqlserver中的存储过程和表
本文关键字:存储过程 sqlserver 识别 | 更新日期: 2023-09-27 18:19:33
我从用户那里得到一个SQL数据库连接字符串,然后我想检查数据库中的特定表或特殊存储过程?
我如何在C#中做到这一点?
这方面的快捷方式是(在SQL中):
SELECT OBJECT_ID('tableName')
或
SELECT OBJECT_ID('storedprocedurename')
如果这些返回null(DBNull.Value),则该项不存在。否则,它会。
因此,在C#中,这将类似于:
using (var conn = new SqlConnection(connectionString))
{
conn.Open();
var cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandText = @"SELECT OBJECT_ID('" + MyObjectName + @"')";
if (cmd.ExecuteScalar() == DBNull.Value)
{
Console.WriteLine("Does not exist");
}
else
{
Console.WriteLine("Does exist");
}
}