c# - 通过 C# 在 MySQL 中检查和创建 View

标签 c# mysql

我需要能够查看 View 是否已存在于我的 MySQL 数据库中,以及它是否没有创建一个 - 通过 C#。如果可能的话,我真的需要一些帮助和正确的方向。

最佳答案

您可以使用 information_schema 来查询服务器对象(在您的情况下为 View )是否存在。我在 C# 中的示例代码片段如下。

String conn = @"Data Source=myserverName;
       Initial Catalog=myCatalogName;Integrated Security=True";
string cmdStr = "select count(*) from 
      information_schema.views where table_schema = 'mySchemaName' 
      AND table_name = 'MyViewName'";

using (MySqlConnection conn = new MySqlConnection(conn))
{
    MySqlCommand cmd = new MySqlCommand(cmdStr, conn);
    conn.Open();
    MySqlDataReader reader = cmd.ExecuteReader();
    while (reader.Read())
    {
       int count = reader.GetInt32(0);
       if (count == 0)
       {
           MessageBox.Show("View does not exists!");
             MySqlCommand command = new MySqlCommand("Create View myView
             as select
             * from myTable;", conn)
           command.ExecuteNonQuery();

       }
       else if (count == 1)
       {
           MessageBox.Show("View exists!");
       }
        conn.Close();
    }
}

关于c# - 通过 C# 在 MySQL 中检查和创建 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23219848/

相关文章:

c# - Unity Raycast 问题

c# - 如何在不影响数据源的情况下交换 WPF 中已过滤数据网格中的行?

mysql - 我可以有一个使用不同表参数的触发器吗?

PHP:如何将用户在文本字段中输入的数据发送到txt文件?

mysql - 使用聚合函数优化 MySQL View

c# - 你如何获得主机的主 IP 地址?

c# - OpenFileDialog 切断预填充的文件名

c# - 如何覆盖抽象类的属性?

c# - 用C#向mySQL插入点符号错误

mysql - SQL - 表中的循环+更新