使用Connector / NET Programming创建数据库?

如何使用连接器/网络编程创建数据库? 为什么以下不起作用?

string connStr = "server=localhost;user=root;port=3306;password=mysql;"; MySqlConnection conn = new MySqlConnection(connStr); MySqlCommand cmd; string s0; try { conn.Open(); s0 = "CREATE DATABASE IF NOT EXISTS `hello`;"; cmd = new MySqlCommand(s0, conn); conn.Close(); } catch (Exception e) { Console.WriteLine(e.ToString()); } 

您可能想要执行MySqlCommand。 现在您只需创建一个,但它不会执行您的查询。

试试这个:

 conn.Open(); s0 = "CREATE DATABASE IF NOT EXISTS `hello`;"; cmd = new MySqlCommand(s0, conn); cmd.ExecuteNonQuery(); conn.Close(); 

您需要执行命令并确保正确处置对象:

 string connStr = "server=localhost;user=root;port=3306;password=mysql;"; using (var conn = new MySqlConnection(connStr)) using (var cmd = conn.CreateCommand()) { conn.Open(); cmd.CommandText = "CREATE DATABASE IF NOT EXISTS `hello`;"; cmd.ExecuteNonQuery(); } 

执行您的命令并尝试此function

 public void createDatabase(string server, string port, string database, string username, string password) { string connectionstring = string.Format("Server = {0}; Port ={1}; Uid = {2}; Pwd = {3}; pooling = true; Allow Zero Datetime = False; Min Pool Size = 0; Max Pool Size = 200; ", server, port, username, password); using (var con = new MySqlConnection { ConnectionString = connectionstring }) { using (var command = new MySqlCommand { Connection = con }) { if (con.State == ConnectionState.Open) con.Close(); try { con.Open(); } catch (MySqlException ex) { msgErr(ex.Message + " connection error."); return; } try { command.CommandText = @"CREATE DATABASE IF NOT EXISTS @database"; command.Parameters.AddWithValue("@database", database); command.ExecuteNonQuery();//Execute your command } catch (MySqlException ex) { msgErr(ex.Message + " sql query error."); return; } } } } 

Imports MySql.Data.MySqlClient Public Class Form1 Private dBf As String =“Empresa”Private str As String =“Server = localhost; uid = root; pwd =; Database = mysql; pooling = false;” Private Cmd As MySqlCommand Private Con As New MySqlConnection(str)Private Sub Form1_Load()Handles MyBase.Load Try Con.Open()Cmd = New MySqlCommand(“Create database If If exists”+ dBf,Con)Cmd.ExecuteNonQuery(): Con.ChangeDatabase(dBf)Cmd = Con.CreateCommand Cmd.CommandText =“CREATE TABLE Empleado”&“(Id Char(10)COLLATE utf8_spanish_ci Not Null,”&“name VarChar(50)COLLATE utf8_spanish_ci Not Null,”&“email VarChar(50)COLLATE utf8_spanish_ci Not Null,“&”网站VarChar(50)COLLATE utf8_spanish_ci Not Null,“&”Primary Key(id))ENGINE = MyISAM“Cmd.ExecuteNonQuery()MsgBox(”Registros,ok !!!“ ):Con.Close()Catch ex As Exception MsgBox(Err.Description)结束尝试结束子结束类