c# - 检查表是否存在的最干净的方法 - MySQL

标签 c# mysql visual-studio prepared-statement

在此处使用 C# 和 MySQL(Visual Studio 12 和 MySQL Workbench 6.1)。

这就是我目前所拥有的。

string strCheck = "SHOW TABLES LIKE \'emp\'";
MySqlCommand cmd = new MySqlCommand(strCheck, con);
cmd.Prepare();

if (cmd.ExecuteNonQuery() > 0)
{
     Console.WriteLine("exists");
}
else
{
     Console.WriteLine("does not");
}

我在这里看到了很多问题(大部分与 PHP 相关),但它们似乎对我不起作用。另外,我不想要一个我们检查表是否有任何行的解决方案,因为表可以是空的,而我想知道的是它是否存在。

谢谢。

最佳答案

试试下面的 SELECT 语句:

SELECT EXISTS(
    SELECT
        `TABLE_NAME`
    FROM
        `INFORMATION_SCHEMA`.`TABLES`
    WHERE
        (`TABLE_NAME` = 'emp')
        AND
        (`TABLE_SCHEMA` = 'mydb')
) as `is-exists`;

关于c# - 检查表是否存在的最干净的方法 - MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25618386/

相关文章:

C# FolderBrowserDialog RootFolder "Mycomputer"在 Windows 10 上无法运行

c# - Entity Framework 在 where 子句上添加了一个额外的条件

javascript - 检查帖子是否在收藏夹列表中的最佳方法

mysql - 为什么 COALESCE() 不起作用?

qt - 如何强制 Qt Creator 使用 MinGW 而不是 Visual Studio

c# - 调试时,我可以在 LINQ 中查看导致异常的对象吗?

c# - unity 中游戏对象的唯一不变标识符

c# - 项目引用和方法签名问题

c# - 将文件中的数据加载并解析到数组中

.net - 我可以使用 Visual Studio 以外的其他 IDE 在 .net 中进行编码吗?