ADO3——单表操作
(1)单条记录
1>SQL操作:
public void ExecuteSql(string sql)
{ SqlCommand cmd=new SqlCommand( sql,cn);
cn.Open();
cmd.ExecuteNonQuery();
cn.Close();
}
2>.调用操作:
string sql="insert into Users (UserName,Password,...,....) values' "+..............;
dac.ExecuteSql(sql);
bindData();
(2)批量更新 //先在本地内存保存更新,再一次性写入DB
1>更新函数 public void updateUsers(DataSet ds)
{ SqlCommand cmd=new SqlCommand("insert into Users(UserName,Password,....., ....)values
( @UserNamw,@Password,2@...,@...)",cn);
cmd.Paramenters.Add( "@UserName",SqlDbType.Nvarchar,20,"UserName");
..............;
SqlDataAdatpter da=new SqlDataAdapter(cmd);
cn.Open():
da.Update(ds, "Users");
cn.Close();
}
2>调用操作
{............
DataSet ds=dac.getUsers(); //获取原DB中的相关数据
DataRow dr=ds.Tables[0].NewRow();
01》 传数据 dr["UserName"]=this.txtusername.Text;
dr["Password"]=this.txtpsw.Text;
..........;
02》添新行到表 ds.Tables[0].Rows.Add(dr);
//到此已完成一条记录更新到内存 ,循环01》、02》 增添多条记录
03》调用updateUsers (ds,Users);
04》重新绑定
}
(3) 调用存储过程更新记录
1>写存储过程 usp_insertusers
create procedure usp_insertusers
@UserName nvarchar (20),
@Password nvarchar (50),
.................,
AS
insert into Users(UserName,Password,....,.....)values(@UserName,@Password,......,.........)
2>更新函数 //调用存储过程
public void updateUsersByStoredProcedure (DataSet ds)
{ SqlCommand cmd=new SqlCommand( usp_insertusers,cn);
cmd.Paramenters.Add("@UserName",.......,......,.....);
...............;
cmd.CommandType=CommandType.StoreProcedure; //改变sql命令类型
SqlDataAdapter da=new SqlDataAdapter(cmd)l;
cn.Open();
da.Update(ds, Users);
}
3>调用操作 (如上,换函数名即可)
浙公网安备 33010602011771号