use information_schema; SELECT COUNT[*] FROM schemata WHERE SCHEMA_NAME="";
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }
Trong MySQL, quy trình được lưu trữ của
+-------------+ | @table_type | +-------------+ | BASE TABLE | +-------------+5 kiểm tra xem một bảng nhất định có tồn tại dưới dạng bảng thông thường, bảng
+-------------+ | @table_type | +-------------+ | BASE TABLE | +-------------+6 hay dạng xem hay không. Quy trình trả về loại bảng trong một tham số
+-------------+ | @table_type | +-------------+ | BASE TABLE | +-------------+7
Ví dụ
CALL sys.table_exists['Music', 'Albums', @table_type];
SELECT @table_type;
Kết quả
+-------------+ | @table_type | +-------------+ | BASE TABLE | +-------------+
Lưu ý rằng nếu tồn tại cả bảng tạm thời và bảng cố định với tên đã cho, thì
+-------------+ | @table_type | +-------------+ | BASE TABLE | +-------------+6 được trả về
Bảng +-------------+
| @table_type |
+-------------+
| BASE TABLE |
+-------------+
9
Một cách khác để kiểm tra xem một bảng có tồn tại hay không là truy vấn bảng
+-------------+ | @table_type | +-------------+ | BASE TABLE | +-------------+9
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }0
Kết quả
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }1
Trong trường hợp này, tôi đã trả lại bảng cơ sở có tên là
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }01 từ cơ sở dữ liệu có tên là
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }02. Truy vấn điều này mà không lọc kết quả bằng
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }03 trả về các bảng cơ sở từ tất cả các cơ sở dữ liệu. Truy vấn nó mà không lọc bởi
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }04 trả về tất cả các loại bảng
Nếu chúng tôi không cần tất cả thông tin đó, chúng tôi có thể làm điều này
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }6
Kết quả
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }7
Hoặc chúng ta có thể nhận được số lượng
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }8
Kết quả
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }9
Lệnh public bool DBExists[string conn, string dbName]
{
bool functionReturnValue = false;
using [MySqlConnection dbconn = new MySqlConnection[conn]] {
using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] {
functionReturnValue = false;
cmd.Parameters.AddWithValue["@dbName", dbName];
dbconn.Open[];
if [cmd.ExecuteNonQuery[] != 0] {
functionReturnValue = true;
}
dbconn.Close[];
}
}
return functionReturnValue;
}
05
Lệnh
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }05 liệt kê các bảng, trình tự và chế độ xem không phải ____26 trong cơ sở dữ liệu MySQL nhất định. Chúng ta có thể sử dụng mệnh đề
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }08 để thu hẹp nó thành một loại nhất định
Chúng ta cũng có thể sử dụng công cụ sửa đổi
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }09 để trả về cột thứ hai hiển thị loại
+-------------+ | @table_type | +-------------+ | BASE TABLE | +-------------+5
Kết quả
+-------------+ | @table_type | +-------------+ | BASE TABLE | +-------------+6
Trong trường hợp này, tên cơ sở dữ liệu là
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }02, và vì vậy cột đầu tiên là
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }11
Lệnh public bool DBExists[string conn, string dbName]
{
bool functionReturnValue = false;
using [MySqlConnection dbconn = new MySqlConnection[conn]] {
using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] {
functionReturnValue = false;
cmd.Parameters.AddWithValue["@dbName", dbName];
dbconn.Open[];
if [cmd.ExecuteNonQuery[] != 0] {
functionReturnValue = true;
}
dbconn.Close[];
}
}
return functionReturnValue;
}
12
Trong MySQL, lệnh
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }12 tương tự như lệnh
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }05 nhưng cung cấp nhiều thông tin hơn về mỗi bảng [không phải
+-------------+ | @table_type | +-------------+ | BASE TABLE | +-------------+6]
Ví dụ
+-------------+ | @table_type | +-------------+ | BASE TABLE | +-------------+0
Kết quả
+-------------+ | @table_type | +-------------+ | BASE TABLE | +-------------+1
Khách hàng public bool DBExists[string conn, string dbName]
{
bool functionReturnValue = false;
using [MySqlConnection dbconn = new MySqlConnection[conn]] {
using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] {
functionReturnValue = false;
cmd.Parameters.AddWithValue["@dbName", dbName];
dbconn.Open[];
if [cmd.ExecuteNonQuery[] != 0] {
functionReturnValue = true;
}
dbconn.Close[];
}
}
return functionReturnValue;
}
16
Một cách khác để kiểm tra các bảng trong cơ sở dữ liệu MySQL là sử dụng ứng dụng khách
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }16
Để sử dụng tiện ích này, hãy mở cửa sổ nhắc/thiết bị đầu cuối dòng lệnh và chạy lệnh sau
+-------------+ | @table_type | +-------------+ | BASE TABLE | +-------------+2
Đảm bảo thay thế
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }02 bằng cơ sở dữ liệu mà bạn quan tâm và
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }19 bằng người dùng hiện hành. Bit
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }60 dẫn đến việc người dùng được nhắc nhập mật khẩu
Kết quả
+-------------+ | @table_type | +-------------+ | BASE TABLE | +-------------+3
Ứng dụng khách
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }16 trả về các khung nhìn và bảng
Đầu ra chỉ hiển thị tên của những cơ sở dữ liệu, bảng hoặc cột mà người dùng có một số đặc quyền
Nếu không có cơ sở dữ liệu nào được cung cấp thì tất cả các cơ sở dữ liệu phù hợp sẽ được hiển thị. Nếu không có bảng nào được đưa ra, thì tất cả các bảng phù hợp trong cơ sở dữ liệu sẽ được hiển thị. Nếu không có cột nào được cung cấp, thì tất cả các cột và loại cột phù hợp trong bảng sẽ được hiển thị
Kiểm tra xem một bảng đã tồn tại trước khi tạo nó
Nếu bạn cần tạo bảng nếu nó không tồn tại, bạn có thể sử dụng mệnh đề
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }62 của câu lệnh
public bool DBExists[string conn, string dbName] { bool functionReturnValue = false; using [MySqlConnection dbconn = new MySqlConnection[conn]] { using [MySqlCommand cmd = new MySqlCommand["SELECT COUNT[*] FROM information_schema.schemata WHERE SCHEMA_NAME=@dbName", conn]] { functionReturnValue = false; cmd.Parameters.AddWithValue["@dbName", dbName]; dbconn.Open[]; if [cmd.ExecuteNonQuery[] != 0] { functionReturnValue = true; } dbconn.Close[]; } } return functionReturnValue; }63. Nếu bảng không tồn tại, nó sẽ được tạo. Nếu nó đã tồn tại, nó sẽ không được tạo ra