gpt4 book ai didi

c# - 检查 SQL Server 数据库表中是否存在表或列

转载 作者:行者123 更新时间:2023-12-04 00:42:24 25 4
gpt4 key购买 nike

在 SQL Server 数据库中创建列或表之前,我想检查所需的表和/或列是否存在。

到目前为止,我已经四处搜索并找到了两种方法。

  1. 我不想使用的存储过程
  2. 通过使用 SqlCommand.ExecuteScalar() 方法并捕获异常以确定表/列是否存在,这对我来说是一种解决方法,但不是一个完美的解决方案。

还有其他方法可以检查 SQL Server 中是否存在表/列吗?

最佳答案

要在创建架构之前检查架构是否存在,请执行以下操作:

检查列是否存在; you use IF NOT EXISTS然后将您的实际查询放入其中。

IF NOT EXISTS(SELECT * FROM sys.columns 
WHERE [name] = N'columnName' AND [object_id] = OBJECT_ID(N'tableName'))
BEGIN
ALTER TABLE ADD COLUMN MYCOLUMN
END

对于一张 table ,the query is a little similar :

IF (NOT EXISTS (SELECT * 
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = 'TheSchema'
AND TABLE_NAME = 'TheTable'))
BEGIN
CREATE TABLE MYTABLE
END

关于c# - 检查 SQL Server 数据库表中是否存在表或列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28575336/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com