2023年6月21日发(作者:)
C#SqlDataAdapterSqlDataAdapter ⽐DataAdapter更进⼀步,专门⽤来操作SQL Server 数据库。⼀、 ⽅法 SqlDataAdapter有两个有⽤的⽅法,分别为 fill 和 update。下⾯分别来介绍这两⽅法。1. fill ⽅法 fill ⽅法是⽤来填充 DataSet 的。也就是,把数据库中的运送到C#空间。fill 有13个重载的⽅法,在使⽤时可以根据情况选择使⽤。使⽤ FillSchema,让 SqlDataAdapter 创建DataSet 的架构,并在⽤数据填充它之前就将主键信息包括进去。2. update ⽅法 update ⽅法是⽤来更改数据库的。也就是,把C#内存中修改的内容同步到数据库中。更新是逐⾏进⾏的。对于插⼊、修改和删除,Update ⽅法会⾃动确定类型(Insert、Update 或 Delete)。
⼆、属性 SqlDataAdapter有5个有⽤的属性,分别为SelectCommand、InsertCommand、DeleteCommand、UpdateCommand 和TableMappings 属性。其中,TableMappings 表⽰列的映射关系。其他的属性通过名字就能知道它所做的操作了。
⽰例⼀:private static DataSet SelectRows(DataSet dataset, string connectionString,string queryString)
{ using (SqlConnection connection = new SqlConnection(connectionString)) { SqlDataAdapter adapter = new SqlDataAdapter(); Command = new SqlCommand(queryString, connection); (dataset); return dataset; }} ⽰例⼆:创建 SqlDataAdapter 并将 MissingSchemaAction 设置为 AddWithKey,以便从数据库中检索其他架构信息。SelectCommand、InsertCommand、UpdateCommand 和 DeleteCommand 属性集及其相应的SqlParameter 对象已添加到 Parameters 集合。该⽅法返回⼀个 SqlDataAdapter 对象。public static SqlDataAdapter CreateSqlDataAdapter(SqlConnection connection){ SqlDataAdapter adapter = new SqlDataAdapter(); gSchemaAction = hKey; // Create the commands. Command = new SqlCommand("SELECT CustomerID, CompanyName FROM CUSTOMERS", connection); Command = new SqlCommand("INSERT INTO Customers (CustomerID, CompanyName) " + "VALUES(@CustomerID, @CompanyName)", connection); Command = new SqlCommand("UPDATE Customers SET CustomerID = @CustomerID, CompanyName =@CompanyName " + "WHERE CustomerID = @oldCustomerID", connection); Command = new SqlCommand("DELETE FROM Customers WHERE CustomerID = @CustomerID", connection); // Create the parameters. ("@CustomerID", , 5, "CustomerID"); ("@CompanyName", r, 40, "CompanyName"); ("@CustomerID", , 5, "CustomerID"); ("@CompanyName",r, 40, "CompanyName"); ("@oldCustomerID", , 5, "CustomerID").SourceVersion =al;
("@CustomerID", , 5, "CustomerID").SourceVersion =al;
return adapter;}
2023年6月21日发(作者:)
C#SqlDataAdapterSqlDataAdapter ⽐DataAdapter更进⼀步,专门⽤来操作SQL Server 数据库。⼀、 ⽅法 SqlDataAdapter有两个有⽤的⽅法,分别为 fill 和 update。下⾯分别来介绍这两⽅法。1. fill ⽅法 fill ⽅法是⽤来填充 DataSet 的。也就是,把数据库中的运送到C#空间。fill 有13个重载的⽅法,在使⽤时可以根据情况选择使⽤。使⽤ FillSchema,让 SqlDataAdapter 创建DataSet 的架构,并在⽤数据填充它之前就将主键信息包括进去。2. update ⽅法 update ⽅法是⽤来更改数据库的。也就是,把C#内存中修改的内容同步到数据库中。更新是逐⾏进⾏的。对于插⼊、修改和删除,Update ⽅法会⾃动确定类型(Insert、Update 或 Delete)。
⼆、属性 SqlDataAdapter有5个有⽤的属性,分别为SelectCommand、InsertCommand、DeleteCommand、UpdateCommand 和TableMappings 属性。其中,TableMappings 表⽰列的映射关系。其他的属性通过名字就能知道它所做的操作了。
⽰例⼀:private static DataSet SelectRows(DataSet dataset, string connectionString,string queryString)
{ using (SqlConnection connection = new SqlConnection(connectionString)) { SqlDataAdapter adapter = new SqlDataAdapter(); Command = new SqlCommand(queryString, connection); (dataset); return dataset; }} ⽰例⼆:创建 SqlDataAdapter 并将 MissingSchemaAction 设置为 AddWithKey,以便从数据库中检索其他架构信息。SelectCommand、InsertCommand、UpdateCommand 和 DeleteCommand 属性集及其相应的SqlParameter 对象已添加到 Parameters 集合。该⽅法返回⼀个 SqlDataAdapter 对象。public static SqlDataAdapter CreateSqlDataAdapter(SqlConnection connection){ SqlDataAdapter adapter = new SqlDataAdapter(); gSchemaAction = hKey; // Create the commands. Command = new SqlCommand("SELECT CustomerID, CompanyName FROM CUSTOMERS", connection); Command = new SqlCommand("INSERT INTO Customers (CustomerID, CompanyName) " + "VALUES(@CustomerID, @CompanyName)", connection); Command = new SqlCommand("UPDATE Customers SET CustomerID = @CustomerID, CompanyName =@CompanyName " + "WHERE CustomerID = @oldCustomerID", connection); Command = new SqlCommand("DELETE FROM Customers WHERE CustomerID = @CustomerID", connection); // Create the parameters. ("@CustomerID", , 5, "CustomerID"); ("@CompanyName", r, 40, "CompanyName"); ("@CustomerID", , 5, "CustomerID"); ("@CompanyName",r, 40, "CompanyName"); ("@oldCustomerID", , 5, "CustomerID").SourceVersion =al;
("@CustomerID", , 5, "CustomerID").SourceVersion =al;
return adapter;}
发布评论