SqlDataAdapter对象通过无连接的方式完成数据库和本地DataSet之间的交互。 ADO.NET SqlDataAdapter对象通过SelectCommand、InsertCommand、UpdateCommand和 DeleteCommand属性为后台数据库提供对应的操作命令,并传递需要的参数。一般情况下,只需要提供SELECT语句和连接字符串创建 SqlDataAdapter对象,然后利用SqlCommandBuilder对象生成InsertCommand、UpdateCommand和DeleteCommand属性。
C#// 定义一个SQL查询字符串,用于从wms_material表中选择所有列,其中mlfb列的值包含用户输入的文本(txtSearch.Text)
string sql = "select * from wms_material where mlfb like '%" + txtSearch.Text + "%'";
// 创建一个新的DataSet对象,用于存储从数据库查询返回的数据
DataSet ds = new DataSet();
// 创建一个SqlCommand对象,用于执行上面定义的SQL查询
// 这里假设已经有一个名为connection的数据库连接对象
SqlCommand cmd = new SqlCommand(sql, connection);
// 创建一个SqlDataAdapter对象,用于执行SqlCommand
// SqlDataAdapter能够在DataSet和数据库之间建立桥梁,用于填充DataSet
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
// 使用SqlDataAdapter对象的Fill方法,将查询结果填充到DataSet对象ds中
adapter.Fill(ds);
使用Connection对象与数据源建∥.连接后,可以使用Command对象对数据源执行查询、添加、删除利和修收等各种操作,操作实现的方可以是使用SQL语句,也可以是使用存储过程。根据.NET Framework数据提供程序的不同Command对象可以分成4种,分别是SqlCommand、OleDbCommand、OdbcCommand和DracleCommand,在实际的编程过程中应该根据访问的数据源不同,选择相对应的Command对象。
属性
| CommandText | 获取或设置要在数据源中执行的 Transact-SQL 语句、表名或存储过程。 |
| CommandTimeout | 获取或设置在终止尝试执行命令并生成错误之前的等待时间(以秒为单位)。 |
| CommandType | 获取或设置一个值,该值指示解释 CommandText 属性的方式。 |
| Connection | 获取或设置 SqlCommand 的此实例使用的 SqlConnection。 |
| DbConnection | 获取或设置此 DbConnection 使用的 DbCommand。 (继承自 DbCommand) |
| DbParameterCollection | 获取 DbParameter 对象的集合。 (继承自 DbCommand) |
| DbTransaction | 获取或设置将在其中执行此 DbCommand 对象的 DbTransaction。 (继承自 DbCommand) |
| DesignTimeVisible | 获取或设置一个值,该值指示命令对象是否应在 Windows 窗体设计器控件中可见。 |
| Notification | 获取或设置一个指定绑定到此命令的 SqlNotificationRequest 对象的值。 |
| Parameters | 获取 SqlParameterCollection。 |
| Transaction | 获取或设置要在其中执行 SqlTransaction 的 SqlCommand。 |
| UpdatedRowSource | 获取或设置命令结果如何应用于 DataRow Update 方法 DbDataAdapter的用法。 |
方法
Connection对象也称为数据库连接对象,Connection对象的功能是负责对数据源的连接。所有Connection对象的基类都是DbConnection类。
以下是几种常见数据库对应的 .NET Framework 数据提供程序中的 Connection 对象:
Connection 对象的使用通常遵循以下步骤:
ConnectionString 属性,用于设置这些信息。Open 方法来建立到数据库的连接。Close 方法来关闭连接。为了更好的资源管理,建议使用 using 语句来确保连接正确关闭。数据源(Data Source)+数据库名称(Initial Catalog)+用户名(User ID)+密码(Password)
SQL Server连接字符串
C#Data Source=.;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword; Server=myServerAddress;Database=myDataBase;User Id=myUsername;Password=myPassword;Trusted_Connection=False;
LINQ to XML 是 .NET Framework 中的一项功能,它提供了一个富有表现力的编程模型,用于处理 XML 数据。它是 LINQ (Language Integrated Query) 技术的一部分,允许开发者使用熟悉的 C# 或 VB.NET 语法来查询、修改、创建和删除 XML 文档。LINQ to XML 设计之初就考虑到了性能和灵活性,使得处理 XML 数据比以往任何时候都更加简单和高效。
在使用LINQ to XML时需要添加System.Xml.Linq.dll的引用。
XElement类 表示XML元素,它是XContainer类的派生类,而XContainer类又派生于XNode类。一个元素就是一个节点。
XElement是LINQ to XML最重要最基本的类之一,它包含所有创建和操作XML元素所必需的功能。通过它可以创建元素,添加和修改元素的属性,操作元素的内容等。
XAttribute类 用来处理属性,属性是与元素相关联的名称/值对。
XDocument类 提供了处理有效XML文档的方法,包括声明、注释和处理指令。XDocument类派生自XContainer类,可以有子节点。XML标准限值XDocument对象只包含单个XElement子节点,此节点作为根节点或跟元素。
创建一个XML
C#private void btnCreateXml_Click(object sender, EventArgs e)
{
XElement xml = new XElement("Persons");
xml.Add(new XElement("Person"
, new XElement("Name", "刘备")
, new XElement("Age", "40")));
xml.Add(new XElement("Person"
, new XElement("Name", "关羽")
, new XElement("Age", "35")));
xml.Add(new XElement("Person"
, new XElement("Name", "张飞")
, new XElement("Age", "32")));
xml.Save("./1.xml");
}