C# 根据textbox 得到数据库中对应行数的其他信息
时间: 2023-11-27 22:50:34 浏览: 91
假设你的数据库表名为 `myTable`,包含以下列:`id`、`name`、`age`、`address`,其中 `id` 列为主键。你想根据用户在 `textBox1` 中输入的 `id` 值得到该行的其他信息。
你可以使用 SQL 语句来实现这个过程。首先,你需要创建 SQL 连接对象并打开数据库连接。然后,构造一个 SQL 查询语句,使用 `textBox1.Text` 来获取用户输入的 `id` 值,并将其与查询语句中的 `id` 列进行匹配。最后,使用 `ExecuteReader` 方法执行查询语句,并使用 `while` 循环读取查询结果中的数据行。
下面是一个示例代码:
```csharp
using System.Data.SqlClient;
// 创建 SQL 连接对象并打开连接
SqlConnection conn = new SqlConnection("Data Source=myServerAddress;Initial Catalog=myDataBase;User ID=myUsername;Password=myPassword;");
conn.Open();
// 构造 SQL 查询语句
string query = "SELECT name, age, address FROM myTable WHERE id = " + textBox1.Text;
// 执行查询语句并读取结果
SqlCommand cmd = new SqlCommand(query, conn);
SqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
// 获取查询结果中的数据行
string name = reader.GetString(0);
int age = reader.GetInt32(1);
string address = reader.GetString(2);
// 在界面上显示数据行的其他信息
textBox2.Text = name;
textBox3.Text = age.ToString();
textBox4.Text = address;
}
// 关闭连接和查询结果
reader.Close();
conn.Close();
```
请注意,上述示例代码仅为演示目的,没有进行任何错误处理或防范 SQL 注入攻击。在实际开发中,你应该对用户输入的值进行验证和过滤,并使用参数化查询语句来防止 SQL 注入攻击。
阅读全文