如何将数据字符串发送到 SQL 查询?
How do I send strings of data to a SQL query?
我使用 c# 在 visual studio 中创建了一个简单的用户名和密码登录表单,效果很好,然后我对其进行了编码,以便将输入到两个文本框中的任何用户名和密码都保存为一个字符串...现在我想将这些字符串作为参数传递并将它们存储到 SQL 查询中......知道我将如何去做吗?
我强烈建议不要将密码存储为纯文本。而是研究散列密码方法。
首先您需要指定一个连接字符串。这可以在 config
文件中完成,如下所示:
<connectionStrings>
<add name="myConnectionString" connectionString="server=ServerAddress;database=myDb;uid=myUser;password=myPass;" />
</connectionStrings>
现在您想从 config
文件中读取连接字符串,您可以在 C# 代码中执行此操作:
string connectionString = ConfigurationManager.ConnectionStrings["myConnectionString"].ConnectionString;
我假设您要插入记录。如果要更新记录,则需要更改查询。对于插入记录:
string myQuery = "INSERT INTO MyTable (UserNameColumn,PasswordColumn) VALUES (@UserName, @Password)";
最后执行查询并传递我们可以做的参数
using (SqlConnection connection = new SqlConnection(connectionString))
{
using (SqlCommand cmd = new SqlCommand(myQuery, connection))
{
cmd.Parameters.Add("@UserName", SqlDbType.NVarChar).Value = UserNameTextBox.Text;
cmd.Parameters.Add("@Password", SqlDbType.NVarChar).Value = PasswordTextBox.Text;
connection.Open();
cmd.ExecuteNonQuery();
}
}
不要忘记包含命名空间 using System.Configuration;
我使用 c# 在 visual studio 中创建了一个简单的用户名和密码登录表单,效果很好,然后我对其进行了编码,以便将输入到两个文本框中的任何用户名和密码都保存为一个字符串...现在我想将这些字符串作为参数传递并将它们存储到 SQL 查询中......知道我将如何去做吗?
我强烈建议不要将密码存储为纯文本。而是研究散列密码方法。
首先您需要指定一个连接字符串。这可以在 config
文件中完成,如下所示:
<connectionStrings>
<add name="myConnectionString" connectionString="server=ServerAddress;database=myDb;uid=myUser;password=myPass;" />
</connectionStrings>
现在您想从 config
文件中读取连接字符串,您可以在 C# 代码中执行此操作:
string connectionString = ConfigurationManager.ConnectionStrings["myConnectionString"].ConnectionString;
我假设您要插入记录。如果要更新记录,则需要更改查询。对于插入记录:
string myQuery = "INSERT INTO MyTable (UserNameColumn,PasswordColumn) VALUES (@UserName, @Password)";
最后执行查询并传递我们可以做的参数
using (SqlConnection connection = new SqlConnection(connectionString))
{
using (SqlCommand cmd = new SqlCommand(myQuery, connection))
{
cmd.Parameters.Add("@UserName", SqlDbType.NVarChar).Value = UserNameTextBox.Text;
cmd.Parameters.Add("@Password", SqlDbType.NVarChar).Value = PasswordTextBox.Text;
connection.Open();
cmd.ExecuteNonQuery();
}
}
不要忘记包含命名空间 using System.Configuration;