例:C#查询test数据库中是否存在命名为“menuTable”的表,如果不存在,则创建menuTable表。
方法:利用抛出异常的方法查找表是否存在。
string MyConnectionString = "server = localhost; uid = root; pwd = ******; database = test";
MySqlConnection conn = new MySqlConnection(MyConnectionString);
conn.Open();
MySqlDataAdapter adp = new MySqlDataAdapter();
DataTable dt = conn.GetSchema();
try
{
MySqlCommand cmd = new MySqlCommand("select * from menutable", conn);
cmd.ExecuteNonQuery();
}
catch(MySqlException ex)
{
switch (ex.Number)
{
case 1146:
MessageBox.Show("menuTable表不存在,系统正在为您创建!");
string mySelectQuery = "CREATE TABLE menuTable(name VARCHAR(20),sex CHAR(1))";
MySqlCommand cmd = new MySqlCommand(mySelectQuery, conn);
cmd.ExecuteNonQuery();
……
break;
default:
MessageBox.Show(ex.Message);
break;
}
}
北京贝斯曼信息技术有限公司 技术部 奉华成