我正在创建一个网站,使最终用户创建应用程序,在那里我将使用用户输入的值作为数据库名称
本文关键字:创建 用户 输入 数据库 在那里 网站 一个 应用程序 | 更新日期: 2023-09-27 18:06:34
我正在从文本框中检索AppName。
string AppName = TextBox1.Text;
现在我想创建一个数据库,其名称将从文本框检索,即AppName
string Text = "create database AppName";
MySqlCommand cmd = new MySqlCommand(Text,Connection);
,但上面的代码正在创建名为AppName的数据库,而不是用户输入的名称。
string Text =" create database " + 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;
)之前用所需的运行时值填充该参数。