StreamRead和sqlparamter,sql连接查询

网络整理 - 08-18

   StreamRead和sqlparamter,sql连接查询以及分页整理

  -> Xml操作

  InnerText 会对标签<>转义

  InnerXml 不会对标签转义

  委托

  多播委托.

  --写入txt

  StreamWrite 写入文本 reader.FieldCount得到字段的个数

  StreamWrite对象的WriteLine()方法就可以把读取的内容写入到txt中

  StreamRead 读取文本

  string temp;

  while((temp = reader.ReadLine())!=null) 表示读取数据

  //相当对把自增的id去掉

  temp=Regex.Replace(temp,@"^\d+,","");

  string [] strs=temp.split(new char[] {',',StringSplitOptions.RemoveEmptyEnetits}

  //此时长度满足为10才写入数据库

  //strs中下表为0的id是不需要的数据 自增的

  if(strs.leng==10)

  {

  string sqlTemp=string.format(sql,strs);

  }

  --防止sql注入

  //2.将用户的输入与参数别名绑定,使用sqlParamter类

  SqlParameter p1 = new SqlParameter("@username", uid);

  SqlParameter p2 = new SqlParameter("@password", pwd);

  //添加到cmd里面

  cmd.Parameters.Add(p1);

  cmd.Parameters.Add(p2);

  --最简单的sqlparameter对象的添加

  cmd.Parameters.AddWithValue("@username",username);

  --交叉查询

  主要在辅助表使用

  select t2.num*10,t1.num+1 from tblnumber as t1 cross join tblnumber as t2;

  生成1-100的数字 order by 1; 从1开始排序

  --内链接

  --外链接

  --将一个查询作为另一个查询的数据源(派生表)

  --将查询(不允许使用order by ,除非order by 与top一起使用)

  作为数据源 ,放在from后面 并且用括号取别名 as t1 (结果集)

  --在select 中 使用别名引导字段.

  --分页***

  C#

  -Math.Celling()返回当前页的函数

  (int)Math.Ceiling(rows * 1.0 / 10);

  Lable文本框.Text=string.format("{0}/{1}",1,CountPage); --CountPage总页数

  Lable文本框.Text=Regex.Replace(lable文本框的text,@"^/d+/",Page+"/");

  就是查找数字/替换成page/;

  --分页

  between 1 and 10; 语句

  select * from student where

  stuid between (@page-1)*@count+1 and (@page*count);

  2-1*5+1 and 2*5

  --在sqlserver 2005 中引入一个排名的函数 Row_Number()函数

  Row_Number() over(order by StuName); 按行后面必须紧跟over()排序规则