我需要能够查看我的MySQL数据库中是否已经存在View,以及它是否创建了一个 - 通过c#。我真的可以做一些帮助,并指出正确的方向 - 如果可能的话。
答案 0 :(得分:3)
您可以使用information_schema查询是否存在服务器对象(在您的情况下为视图)。我在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();
}
}
答案 1 :(得分:1)
您是否可以使用创建或替换视图view_name作为...?