asp.net学习旅程4
今天来讲讲数据库的有关类.这个可多.第一次看的时候类太多了都不知道用哪个了...
Connection对象,如果要连接数据库,首先要构造连接字符串.这里有个类很方便的可以生成连接字符串,那就SqlConnectionStringBuilder
SqlConnectionStringBuilder ConnStrBuilder=new SqlConnectionStringBuilder();
ConnStrBuilder.DataSource="127.0.0.1";
ConnStrBuilder.UserID="sa"
ConnStrBuilder.Password="123456"
SqlCommand对象,用于数据库的操作的类
SqlConnection connection=new SqlConnection("connstr");
SqlCommand command=new SqlCommand("select * from table");
connection.Open();
int count=int.Parse(command.ExecuteScaler().ToString);
connection.Close;
在执行sql前打开,在sql执行后关闭.优化就是尽可能晚的打开连接,尽可能早的关闭
ExecuterNonQuery(); 执行增加,更新,删除操作.返回受影响的行数
ExecuterRreader(); 执行一个查询的sql语句返回|DataReader对象
ExecuteScaler(); 从数据库检索单个值,返回第一行的第一列.例如:select count(*) from tab
DataReader 是一个读取行的只读流的方式读取,只能向前读,但他的效率很高.,不能直接实例化,必须通过command 对象创建实例,这个对象会一直和数据库保持连接,所以用完DataReader对象后应立即关闭数据连接
第一种读取按字段列的顺序进行读取.如果字段类型不同会跑出异常(效率最高)
SqlDataReader reader;
reader.GetInt(0)
reader.GetString(1)
第二种按列索引来读
reader(1),他将返回object
第三种以列名读取(效率稍差,但是灵活)
reader["列名"]
DataAdapter对象,主要用于数据填充,DataAdapter对象利用Connection连接数据源,使用Command操作数据库,将检索的数据送往DataSet,这个对象在操作数据库时可以用时自动连接.使用后自动关闭.
DataTable 是ADO.NET的核心对象,就像普通数据库一样.它也有行和列,包括DataRow和DataColum,相当于一个内存表
DataSet 对象相当于一个内存数据库,DataSet提供了一个离线数据源,这样就可以减轻数据库及网络的负担,在设计程序时可以将DataSet对象作为数据源.
分页查询sql
select top3 * from table order by UserID 编号为123的
select top3 from table where UserID not in(select top3 UserID from table order by UserID) 查询编号456
page=(m%n)==0?(m/n):(m/n+1)
今天就到这里..这样一缕数据操作就清楚多了.......