临沂阿里云代理商:asp.net数据库编程实例

假设我们要创建一个学生管理系统,其中需要对学生信息进行增删改查操作。我们可以使用ASP.NET和SQL Server进行开发。

首先,我们需要在SQL Server中创建一个名为“Student”的表,包含以下字段:ID(自增主键)、Name(文本)、Gender(布尔型)、Age(整数)、Class(文本)。

然后,在Visual Studio中创建一个ASP.NET Web应用程序,并添加一个默认页面(例如Default.aspx)。在页面中,我们可以使用ASP.NET数据控件(例如GridView)来显示学生信息。

下面是一些示例代码:

  1. 添加学生信息:

    protected void btnAdd_Click(object sender, EventArgs e)
    {
     // 获取文本框中的值
     string name = txtName.Text.Trim();
     bool gender = radMale.Checked;
     int age = Convert.ToInt32(txtAge.Text.Trim());
     string className = ddlClass.SelectedValue;
     
     // 将学生信息插入到数据库中
     SqlConnection conn = new SqlConnection("连接字符串");
     SqlCommand cmd = new SqlCommand();
     cmd.Connection = conn;
     cmd.CommandText = "INSERT INTO Student(Name, Gender, Age, Class) VALUES(@Name, @Gender, @Age, @Class)";
     cmd.Parameters.AddWithValue("@Name", name);
     cmd.Parameters.AddWithValue("@Gender", gender);
     cmd.Parameters.AddWithValue("@Age", age);
     cmd.Parameters.AddWithValue("@Class", className);
     conn.Open();
     cmd.ExecuteNonQuery();
     conn.Close();
     
     // 重新加载页面以显示新的学生信息
     Response.Redirect("Default.aspx");
    }
  2. 修改学生信息:

    protected void gvStudent_RowEditing(object sender, GridViewEditEventArgs e)
    {
     // 进入编辑模式
     gvStudent.EditIndex = e.NewEditIndex;
     // 重新加载页面以显示编辑表单
     BindData();
    }
    
    protected void gvStudent_RowUpdating(object sender, GridViewUpdateEventArgs e)
    {
     // 获取编辑后的值
     int id = Convert.ToInt32(gvStudent.DataKeys[e.RowIndex].Value);
     string name = ((TextBox)gvStudent.Rows[e.RowIndex].Cells[1].Controls[0]).Text.Trim();
     bool gender = ((RadioButtonList)gvStudent.Rows[e.RowIndex].Cells[2].FindControl("radEditGender")).SelectedValue == "True";
     int age = Convert.ToInt32(((TextBox)gvStudent.Rows[e.RowIndex].Cells[3].Controls[0]).Text.Trim());
     string className = ((DropDownList)gvStudent.Rows[e.RowIndex].Cells[4].FindControl("ddlEditClass")).SelectedValue;
     
     // 更新数据库中的学生信息
     SqlConnection conn = new SqlConnection("连接字符串");
     SqlCommand cmd = new SqlCommand();
     cmd.Connection = conn;
     cmd.CommandText = "UPDATE Student SET Name=@Name, Gender=@Gender, Age=@Age, Class=@Class WHERE ID=@ID";
     cmd.Parameters.AddWithValue("@Name", name);
     cmd.Parameters.AddWithValue("@Gender", gender);
     cmd.Parameters.AddWithValue("@Age", age);
     cmd.Parameters.AddWithValue("@Class", className);
     cmd.Parameters.AddWithValue("@ID", id);
     conn.Open();
     cmd.ExecuteNonQuery();
     conn.Close();
     
     // 结束编辑模式
     gvStudent.EditIndex = -1;
     // 重新加载页面以显示更新后的学生信息
     BindData();
    }
  3. 删除学生信息:

    protected void gvStudent_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
     // 获取要删除的学生ID
     int id = Convert.ToInt32(gvStudent.DataKeys[e.RowIndex].Value);
     
     // 删除数据库中的学生信息
     SqlConnection conn = new SqlConnection("连接字符串");
     SqlCommand cmd = new SqlCommand();
     cmd.Connection = conn;
     cmd.CommandText = "DELETE FROM Student WHERE ID=@ID";
     cmd.Parameters.AddWithValue("@ID", id);
     conn.Open();
     cmd.ExecuteNonQuery();
     conn.Close();
     
     // 重新加载页面以显示更新后的学生信息
     BindData();
    }
  4. 查询学生信息:

    protected void btnSearch_Click(object sender, EventArgs e)
    {
     // 获取查询条件
     string name = txtName.Text.Trim();
     bool? gender = null;
     if (radMale.Checked)
     {
         gender = true;
     }
     else if (radFemale.Checked)
     {
         gender = false;
     }
     int? age = null;
     if (!string.IsNullOrEmpty(txtAge.Text.Trim()))
     {
         age = Convert.ToInt32(txtAge.Text.Trim());
     }
     string className = ddlClass.SelectedValue;
     
     // 查询数据库中的学生信息
     SqlConnection conn = new SqlConnection("连接字符串");
     SqlCommand cmd = new SqlCommand();
     cmd.Connection = conn;
     cmd.CommandText = "SELECT * FROM Student WHERE 1=1";
     if (!string.IsNullOrEmpty(name))
     {
         cmd.CommandText += " AND Name=@Name";
         cmd.Parameters.AddWithValue("@Name", name);
     }
     if (gender != null)
     {
         cmd.CommandText += " AND Gender=@Gender";
         cmd.Parameters.AddWithValue("@Gender", gender);
     }
     if (age != null)
     {
         cmd.CommandText += " AND Age=@Age";
         cmd.Parameters.AddWithValue("@Age", age);
     }
     if (!string.IsNullOrEmpty(className))
     {
         cmd.CommandText += " AND Class=@Class";
         cmd.Parameters.AddWithValue("@Class", className);
     }
     SqlDataAdapter da = new SqlDataAdapter(cmd);
     DataSet ds = new DataSet();
     da.Fill(ds, "Student");
     
     // 绑定查询结果到GridView中
     gvStudent.DataSource = ds.Tables["Student"];
     gvStudent.DataBind();
    }

抱歉,我是语言模型AI,缺乏实际操作经验,无法分享编程实例,但可以为您提供相关知识点。

ASP.NET中,数据库编程主要采用ADO.NET进行操作,其中包括连接到数据库,执行SQL语句和存储过程,读取数据库中的数据等基本操作。以下是一个简单示例:

连接到数据库:

临沂阿里云代理商:asp.net数据库编程实例
//创建连接对象
SqlConnection con = new SqlConnection("Data Source=.SQLEXPRESS;Initial Catalog=TestDB;Integrated Security=True");

//打开连接
con.Open();

执行SQL语句:

//创建命令对象
SqlCommand cmd = new SqlCommand("INSERT INTO Student (Name, Age) VALUES ('张三', 22)", con);

//执行命令
int rows = cmd.ExecuteNonQuery();

//关闭连接
con.Close();

读取数据:

//创建命令对象
SqlCommand cmd = new SqlCommand("SELECT * FROM Student", con);

//执行命令并返回DataReader对象
SqlDataReader dr = cmd.ExecuteReader();

//循环读取数据
while(dr.Read())
{
   string name = dr["Name"].ToString();
   int age = Convert.ToInt32(dr["Age"]);
}

//关闭连接
con.Close();

以上是一个简单的ASP.NET数据库编程示例,希望能对您有所帮助。

发布者:luotuoemo,转转请注明出处:https://www.jintuiyun.com/158901.html

(0)
luotuoemo的头像luotuoemo
上一篇 2024年3月10日 01:48
下一篇 2024年3月10日 02:20

相关推荐

  • 阿里云服务语音通知

    阿里云提供了语音通知服务,您可以利用语音通知服务,通过语音呼叫或发送语音短信,向用户发送即时通知或提醒。语音通知服务可以应用于多种场景,如验证码验证、订单提醒、账号安全验证等。 通过阿里云语音通知服务,您可以灵活地配置通知内容、语速、音量等,实现与用户的快速有效的沟通。在实际应用过程中,您只需要调用相应的API接口,即可实现语音通知的功能。 阿里云提供了语音…

    2023年9月28日
    36800
  • 阿里云客服抢不到班怎么办

    如果阿里云客服抢不到班,你可以尝试以下方法解决问题: 刷新页面:有时候客服班次可能已经被他人预约完毕,但仍有可能有人取消预约。通过刷新页面或重新进入客服系统,你可能有机会抢到班次。 寻找其他时间段:如果你一直无法抢到自己想要的班次,可以尝试选择其他时间段的客服班次。可能其他时间段的班次相对较少,抢到的机会会更大。 提前预约:阿里云客服系统一般会提前开放一段时…

    2023年9月10日
    40500
  • 芜湖阿里云代理商:APP开发

    芜湖阿里云代理商针对APP开发提供以下服务: 云服务器:提供稳定可靠的云服务器,为APP提供强大的计算能力和扩展能力。 云数据库:提供高性能的云数据库,支持大规模数据存储和快速读写,满足APP的数据存储需求。 CDN加速:通过阿里云的CDN加速服务,提供快速、稳定的内容分发,提升APP的访问速度和用户体验。 移动推送:提供移动推送服务,实现APP消息推送功能…

    2024年1月8日
    35500
  • 阿里云关系型数据库和云数据库

    阿里云关系型数据库(ApsaraDB for RDS)和云数据库(ApsaraDB for PolarDB)都是阿里云提供的数据库服务。 阿里云关系型数据库(ApsaraDB for RDS):它是基于云平台的一种传统关系型数据库服务。提供了多种数据库引擎选择,如 MySQL、SQL Server、PostgreSQL、PPAS(PostgreSQL的增强版…

    2023年8月16日
    36100
  • 阿里云第一行代码藏品

    代码里用的是阿里云数据库 数据库的数据怎么导出来 数据库有好多种, 不知道你用的是哪一种, 常用的是sql server和mysql如果是sql server 可以备份成bak文件 保存在阿里云本地如果是mysql 可以直接用navicat将数据同步到本地 相当于是导出来了不论哪一种, 前提是你要知道阿里云里面你这个数据库的帐号密码, 如果用的是RDS, 现…

    2023年8月26日
    34700

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

4000-747-360

在线咨询: QQ交谈

邮件:ixuntao@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
购买阿里云服务器请访问:https://www.4526.cn/