我正在从文本框中检索 AppName。
string AppName = TextBox1.Text;
现在我想创建一个数据库,其名称将从文本框中检索,即 AppName
string Text = "create database AppName";
MySqlCommand cmd = new MySqlCommand(Text,Connection);
但上面的代码正在创建名为 AppName 的数据库,但不是用户输入的名称。
我正在从文本框中检索 AppName。
string AppName = TextBox1.Text;
现在我想创建一个数据库,其名称将从文本框中检索,即 AppName
string Text = "create database AppName";
MySqlCommand cmd = new MySqlCommand(Text,Connection);
但上面的代码正在创建名为 AppName 的数据库,但不是用户输入的名称。
您没有在 SQL 查询中使用实际值,而是每次都使用相同的文字字符串:
"create database AppName"
相反,您需要合并输入的实际值。我不是 100% 熟悉 MySQL 语法或查询对象,但一般来说它看起来像这样:
string appName = TextBox1.Text;
string commandText = "CREATE DATABASE @DBName";
using (MySqlCommand cmd = new MySqlCommand(commandText, connection))
{
cmd.Parameters.Add("@DBName", System.Data.SqlDbType.NVarChar, 50);
cmd.Parameters["@DBName"].Value = appName;
cmd.Connection.Open();
cmd.ExecuteNonQuery();
}
这是徒手代码,因为我没有可用的相关对象。但想法是,您将在查询 () 中创建一个可变参数@TableName
,然后在执行查询 () 之前使用所需的运行时值填充该参数cmd.Parameters["@TableName"].Value = appName;
。
string Text = "创建数据库" + AppName;