如何在 C# 中检查数据库(ACCESS 或 SQL)中是否存在表

wil*_*iam 3 c# sql ms-access

我发现很多关于这个问题的问题。

但是有没有什么简单的语句可以完成这个任务呢?

对于 SQL 和 ACCESS

Skr*_*lin 5

IF (EXISTS (SELECT 1 FROM sys.tables WHERE name = 'table_name'))
BEGIN
    -- do stuff
END
Run Code Online (Sandbox Code Playgroud)

sys.tables还可以为您提供有关表对象的一些信息,例如,该is_replicated列告诉您该表是否是通过复制创建的,或者该has_replication_filter列告诉您该表是否设置了复制过滤器

注意:这是针对 SQL Server 的

编辑:访问:

SELECT COUNT(*) as Exists from MsysObjects 
WHERE type = 1
AND name = 'MY_TABLE_NAME' 
Run Code Online (Sandbox Code Playgroud)