如何从数据库加载数据并将其显示在网页上?

时间:2018-10-25 19:19:49

标签: c# asp.net sql-server webforms

我有一个完整的表格,可以将输入保存到SQL Server数据库中。现在,我想在文本框中的同一页面中显示旧记录。我创建了一个文本框和一个加载按钮,我想在其中输入作业编号,它显示数据库中的那一行数据。我使用C#作为背后的代码,除此之外,我不确定您需要什么信息。任何帮助都值得欢迎和赞赏。这是我的第一个在批处理文件之外进行编码的项目,所以我是一块空白画布。

Web Form all asp tags

1 个答案:

答案 0 :(得分:1)

所以,这里的基本流程:

  1. 设置您的连接字符串(定义要连接的数据库服务器,要使用的用户名/密码以及要查看的服务器上的特定数据库)。参见https://www.connectionstrings.com/

  2. 声明并初始化必要的对象:

    • 使用您之前的连接字符串的 Connection 对象;

    • Command 对象,告诉数据库要通过连接提取哪些数据;和

    • 数据读取器,用于将实际记录数据加载到其中,然后可以在后面的代码中使用该数据填充字段。
  3. 将数据读取到页面。

作为示例,请考虑以下代码:

using System.Data.SQLClient

。 。

string ConString = "Server=localhost\\SQLEXPRESS2017;Initial Catalog=MyDatabaseName;User=DatabaseUser;Password=SomeSecretPassword;";

SqlConnection conn;
SqlCommand cmd;
SqlDataReader rdr;

conn = new SqlConnection(ConString);
conn.Open();

cmd = new SqlCommand("SELECT Field1, Field2 FROM TableName WHERE Field3=@0;", conn);
cmd.Parameters.AddWithValue("@0", txtJobNo.Text); // This prevents SQL Injection

rdr = cmd.ExecuteReader();

if (rdr.HasRows)
{
    rdr.Read();

    txtField1.Text = rdr.GetString(0);
    txtField2.Text = rdr.GetString(1);

} else
{
    // Some custom error handling for JobID not found
}

rdr.Close();
conn.Close();

当然,这需要根据您的情况(连接字符串,字段名称等)进行调整