SQL 2000 数据库连接方式:
连接方式 非连接方式 适用范围 小型数据库 大型数据库 原因 对服务器数据库直接操作 对本地数据集操作 访问频度 频繁访问服务器 需要时手动提交 DataConnection 有 无 DataCommand 有 无 DataSet 无 有 DataAdapter 无 有 DataReader 有 无DataConnection:连接数据库;DataCommand:执行SQL语句;DataSet:数据集容器;一个DataSet好比一个“书包”里面可以放很多本“书(数据集)”;DataReader:读取数据集;DataAdapter:(1)连接数据库(2)执行SQL语句(3)转交填充DataSet(4)提交更新服务器数据库
连接方式:
解释:Client向Server发送DataConnection取得连接Server根据Client的DataCommand(Select语句)生成“数据集”该“数据集”由DataReader读取送给DataGrid/DataList/ListView...连接方式浏览:private void selectcon() (只适用于WebApplication不适用于WindowsApplication)
{
SqlConnection con=new SqlConnection("server=(local);uid=sa;password=;database=数据库名");
SqlCommand com=new SqlCommand("select 列名 from 表名 ",con);
con.Open();
SqlDataReader readdata=com.ExecuteReader();
if(readdata.Read())
{DataGrid1.DataSource=readdata;
DataGrid1.DataBind();
readdata.Close();
}}连接方式插入:private void insertcon()
{
SqlConnection con=new SqlConnection("server=(local);uid=sa;password=;database=数据库名");
SqlCommand com=new SqlCommand("INSERT INTO myclass Values(@列名1,@列名2,...,@列名n)",con);
com.Parameters.Add("@列名1",SqlDbType.数据类型,数据长度);
com.Parameters.Add("@列名2",SqlDbType.数据类型,数据长度);...
com.Parameters.Add("@列名n",SqlDbType.数据类型,数据长度);con.Open();
com.Parameters["@列名1"].Value=输入控件.Text;
com.Parameters["@列名2"].Value=输入控件.Text;...
com.Parameters["@列名n"].Value=输入控件.Text;
com.ExecuteNonQuery();
con.Close();
}删除:SqlConnection con = new SqlConnection("server=local);database=northwind;Uid=strong;Pwd=strong;");
con.Open();
SqlCommand com = new SqlCommand("delete from Products where ProductID="+Request.QueryString["id"]+"", con);
com.ExecuteNonQuery();
con.Close();
非连接方式:
解释:Client向Server发送DataAdapter(1)取得连接Client在本地DataAdapter(2)(Select语句)生成“数据集”该“数据集”由DataAdapter(3)送入本地DataSet最后由Client的需要由DataAdapter(4)手动提交给Server非连接方式浏览:private void selectuncon()
{
SqlDataAdapter da=new SqlDataAdapter("select 列名 from 表名","server=(local);uid=sa;password=;database=数据库名");
DataSet ds=new DataSet(); //可以装数据集的盒子(书包)
da.Fill(ds,"aaa"); //给临时的数据集(书)一个(书)名随便aaa(注意不是表名)
dataGrid1.DataSource=ds.Tables["aaa"];
}非连接方式插入:
private void insertuncon()
{
SqlDataAdapter da=new SqlDataAdapter("select * from myclass","server=(local);uid=sa;password=;database=数据库名");
DataSet ds=new DataSet();
da.Fill(ds,"aaa");
DataRow dr;
dr=ds.Tables["aaa"].NewRow();
dr[0]=输入控件.Text;
dr[1]=输入控件.Text;...
dr[n]=输入控件.Text;
ds.Tables["aaa"].Rows.Add(dr);
dataGrid2.DataSource=ds.Tables["aaa"];
SqlCommandBuilder cb=new SqlCommandBuilder(da);
da.Update(ds,"aaa");
}