第7周学习笔记——ADO.Net中DataTable的应用

这篇博客主要介绍了ADO.NET中的DataTable,它用于存储数据表。通过DataAdapter的Fill()方法,可以从数据库填充数据到DataTable。文章详细讲解了DataTable的Rows和Columns属性的常用操作,如添加、插入、删除行和列的方法。还提供了一个示例代码,展示如何使用SqlConnection、SqlCommand、SqlDataAdapter填充DataTable,并将其绑定到数据网格视图。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在ADO.NET中,DataSet包括了DataTable、DataRow、DataColumn等类。

DataTable用于存储一张表,调用DataAdapter的Fill()方法,可以把来自数据库的数据填充到本机的DataTable中。一个DataSet中可以包括多个DataTable,并且可以通过DataRelation设置这些DataTable之间的关系。

DataTable的常用属性和方法如下:

名称说明
Rows获取或设置当前DataTable内的所有行,即相应数据表里的所有记录
Columns获取或设置当前DataTable内的所有列
TableName获取或设置当前DataTable的名称
AcceptChanges()方法提交对该表的所有修改
NewRow()方法为当前有DataTable增加一个新行,返回DataRow对象
Clear()方法清除DataTable中原来的数据,通常在获取新的数据前调用

下面对上表中的部分内容再做进一步的说明。

(1)Rows属性具有如下常用方法:

1)Add():把DataTable的NewRow()方法所创建的行追加到末尾。

2)InsertAt():把NewRow()方法所创建的行插入到索引号指定的位置。

3)Remove():删除指定的DataRow对象。

4)RemoveAt():根据索引号,直接删除指定行的数据。

(2)Columns属性具有如下常用方法:

1)Add():把新创建的列添加到列集合中。

2)AddRange():把DataColumn类型的数组添加到列集合中。

3)Remove():把指定名称的列从列集合中移除。

4)RemoveAt():把指定索引位置的列从列集合中移除。

思维导图:

 

示例代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace 住院药房管理系统
{
    public partial class 请领单查询 : Form
    {
        public 请领单查询()
        {
            InitializeComponent();
        }

 

 

        private void 请领单查询_Load(object sender, EventArgs e)
        {
            SqlConnection sqlConnection = new SqlConnection();                                              //声明并实例化SQL连接;
            sqlConnection.ConnectionString =
                "Server=(local);Database=MedStoreBase;Integrated Security=sspi";                             //在字符串变量中,描述连接字符串所需的服务器地址、数据库名称、集成安全性(即是否使用Windows验证);
            SqlCommand sqlCommand = new SqlCommand();                                                       //声明并实例化SQL命令;
            sqlCommand.Connection = sqlConnection;                                                          //将SQL命令的连接属性指向SQL连接;
            sqlCommand.CommandText = "SELECT ApplyNo as 请领单编号,MedicineNo as 药品编号,MedicineName as 药品名称,ApplyNumber as 请领数量,ApplyDate as 请领日期,Applicant as 请领人姓名,OperatorNo as 操作员工号,OperateDate as 操作日期,Completed as 是否完成 FROM Tb_apply ;";                                           //指定SQL命令的命令文本;该命令查询所有药品请领单;
            SqlDataAdapter sqlDataAdapter = new SqlDataAdapter();                                           //声明并实例化SQL数据适配器;
            sqlDataAdapter.SelectCommand = sqlCommand;                                                      //将SQL数据适配器的查询命令属性指向SQL命令;
            DataTable applyTable = new DataTable();                                                       //声明并实例化数据表,用于保存所有药品请领单,以用作数据网格视图的数据源;
            sqlConnection.Open();                                                                           //打开SQL连接;
            sqlDataAdapter.Fill(applyTable);                                                              //SQL数据适配器读取数据,并填充药品请领单数据表;
            sqlConnection.Close();                                                                          //关闭SQL连接;
            this.dgv_apply.DataSource = applyTable;                                                       //将数据网格视图的数据源设为药品请领单数据表;
        }
    }
}

运行效果截图:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值