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()排序規則