C#操作SQL数据库
Connection连接对象
1.连接字符串
方法1.用户名密码 ”server=;uid=;pwd=;database=”
方法2.Windows管理员 ”server=;Intergrated Security=true/SSPI”
2.创建连接对象
SqlConnection con=new SqlConnection(连接字符串)
3.其它命令
1.打开/关闭连接 con.Open()/Close()
2.查看连接状态 con.state =ConnectionState.Open/Closed
Command命令对象
1.创建对象-指定连接-设置SQL语句
方法1. SqlCommand cmd=new SqlCommand()
cmd.Connection=连接对象
cmd.CommandText=”select语句”/”非select语句”/”存储过程名”
方法2. SqlCommand cmd=new SqlCommand(”select语句”/”非select语句”/”存储过程名”, 连接对象)
cmd.CommandType=CommandType.Text/ StoredProcedure
2.设置命令类型(SQL语句/存储过程)
cmd.CommandType=CommandType.Text/ StoredProcedure
3.打开连接 cmd.Connection.Open()
4. Parameters参数集
1.创建对象-设置参数名-设置参数类型-设置类型值
方法1. SqlParameters parms=new SqlParameters()
parms. ParameterName=”@存储过程里的某参数名”
parms .SqlDbType= SqlDbType.参数类型
parms.Size=类型值
方法2. SqlParameters parms=new SqlParameters(参数名称, 参数类型, 类型值)
2.添加参数
cmd.Parameters.Add(parms)
3.其它
1.执行SQL后获取参数值: cmd.Parameters[“@参数名”]
2.多个 SqlParameters可以用SqlParameter [] parms={new SqlParameter(),… }
5.执行SQL语句
非select语句 |
受影响的行数 |
cmd.ExecuteNonQuery() |
select语句(count,sum,…) |
第一行第一列的值 |
cmd.ExecuteScalar() |
select语句 |
DataReader |
cmd. ExecuteReader () |
6.DataReader对象
//读取时需保持与数据库连接
1.创建
//在执行cmd. ExecuteReader ()时
SqlDataReader sqldr= cmd. ExecuteReader ()
2.判断是否有数据 sqldr.HasRows=true/false
3.读取(下)一行记录 sqldr.Read()
4.获取数据(某列) sqldr [“列名”]
5.关闭DataReader sqldr.Close()
6.关闭数据库连接
DataSet(小型数据库)对象
//1.无需连接,无需执行2. DataAdapter 起连接作用2.DataTable(数据表)对象:包含在DataSet里
1.创建DataAdapter对象-设置SQL语句-指定连接
方法1. DataAdapter da=new DataAdapter()
da.SelectCommand=new SqlCommand()
后面与Command命令一样
方法2. new DataAdapter(”select语句”/”非select语句”/”存储过程名”, 连接对象)
后面与Command命令一样
2.创建DataSet/DataTable对象DataSet ds=new DataSet()/DataTable=new DataTable()
3.用da填充ds/dt
1.da.Fill(ds/dt)
2. da.Fill(ds,” 数据表名”)
DataGridView控件的使用
1.创建对象DataGridView dgv=new DataGridView()
2.指定数据源为DataTable: dgv.DataSource=ds.Table[n]/dt