黑马程序员-ado.net笔记

来源:互联网 发布:下载国泰安数据 编辑:程序博客网 时间:2024/06/03 06:13
------- Windows Phone 7手机开发、.Net培训、期待与您交流! -------


DataReader只读只进的结果集
必须保持连接状态
不管查询多少,对程序占用内存小
小量数据麻烦

内存里的数据库  DataSet  DataTable
数据集 DataSet
断开是连接的数据库操作
查询结果放到内存中

不管连接  断开服务器都不影响数据的读取



         手工创建 DataTable
 
         
          DataTable dt = new DataTable("Student");
          //创建列
           DataColumn dc = new DataColumn();
            dc.ColumnName = "sId";
            dc.AutoIncrement = true;
            dc.AutoIncrementSeed = 1;
            dc.AutoIncrementStep = 1;
            //把列添加到表中
            dt.Columns.Add(dc);


            dc = new DataColumn();
            dc.ColumnName = "sName";
            dt.Columns.Add(dc);


            dc = new DataColumn();
            dc.ColumnName = "sAge";
            dt.Columns.Add(dc);
            //创建行
            DataRow dr = dt.NewRow();
            dr["sName"] = "张三";
            dr["sAge"] = 18;
            //添加行
            dt.Rows.Add(dr);
            foreach (DataRow item in dt.Rows)
            {
                Console.WriteLine(item["sId"]);
                Console.WriteLine(item["sName"]);
                Console.WriteLine(item["sAge"]);
            }


adapter.Fill(dt);
Fill方法里面封装了打开和断开数据库的方法




output inserted.Id 
insert into class output inserted.列名 values ('张三',18)
string id=cmd.ExcuteScalaor().ToString();
返回增加的id

@@identity 加个;号 表示两条sql语句,先执行你,再查询,返回自动增长的最大编号
insert into class values ('张三',18);select @@identity
string id=cmd.ExcuteScalaor().ToString();
返回增加的id


数据库注入
123' or '1'='1
select count(*) from [user] where userpwd='{0}'
select count(*) from [user] where userpwd='123' or '1'='1'
原创粉丝点击