以下是学习笔记:
一,返回单一结果的查询
//定义连接字符串 string connString = "Server=.;DataBase=StudentManageDB;Uid=sa;Pwd=123"; //创建连接对象 SqlConnection conn = new SqlConnection(connString); //创建SQL语句 string sql = "select count(*) from Students"; //创建Command对象 SqlCommand cmd = new SqlCommand(sql, conn); //打开连接 conn.Open (); object result = cmd.ExecuteScalar(); conn.Close(); Console.WriteLine("学生总数:"+result.ToString ()); Console.ReadLine();
总结:
二,返回一个结果集的查询(多行多列)
返回只读数据集的查询1
返回只读数据集的查询2
返回只读数据集的查询3
代码:
//定义连接字符串 string connString = "Server=.;DataBase=StudentManageDB;Uid=sa;Pwd=123"; //创建连接对象 SqlConnection conn = new SqlConnection(connString); string sql = "select StudentId,StudentName,Gender from Students where Gender='女'"; SqlCommand cmd = new SqlCommand(sql, conn); //打开连接 conn.Open(); //执行查询方法,返回DataReader对象 SqlDataReader objRader = cmd.ExecuteReader(); //读取数据 while (objRader.Read())//objRader.Read() 如果返回true就说明结果里面有数据 { Console.WriteLine(objRader["StudentId"].ToString() + "\t" + objRader["StudentName"]+ "\t" + objRader["Gender"]); } //关闭读取器 objRader.Close(); conn.Close(); Console.ReadLine();
三,返回多个结果集的查询
1,
2,
代码:
//定义连接字符串 string connString = "Server=.;DataBase=StudentManageDB;Uid=sa;Pwd=123"; //创建连接对象 SqlConnection conn = new SqlConnection(connString); //组合需要的SQL语句 string sql = "Select StudentId,StudentName from Students;Select ClassId,ClassName from StudentClass"; SqlCommand cmd = new SqlCommand(sql, conn); //打开连接执行查询 conn.Open(); SqlDataReader objReader = cmd.ExecuteReader(); //读取第一个结果集 while (objReader .Read()) { Console.WriteLine(objReader["StudentId"].ToString ()+"\t"+objReader["StudentName"].ToString ()); } Console.WriteLine("---------------------------------------"); //判断是否有下一个结果集 if (objReader.NextResult()) { while (objReader.Read()) { Console.WriteLine(objReader["ClassId"].ToString() + "\t" + objReader["ClassName"].ToString()); } } objReader.Close(); conn.Close(); Console.ReadLine();
四,总结: