徹底研究SQLHelper 非儲存過程

2021-04-22 10:22:30 字數 2149 閱讀 7409

引數名可以用[j.id]以區別

dbhelper.getparameter("@id",sqldbtype.int,4,"[j.id]",id)//多個逗號也沒錯, 

1.sqlparameter的用法

兩種建構函式:

sqlparameter param = new sqlparameter(paramname, paramtype, paramsize, colname);

sqlparameter param = new sqlparameter(paramname, paramtype);

param.value = paramvalue;

上面一種是對應資料表中的列的。暫時總結幾種用法:

public static sqlparameter getparameter(string paramname, sqldbtype paramtype, int32 paramsize, string colname, object paramvalue)

dbhelper.getparameter("@gid", sqldbtype.int, 4, "[gid]", gid)

當多表查詢時,引數有相同時,可以直接在建構函式裡區分。

sqlparameter param =

;return dbhelper.executedt(sb.tostring(), param);

}現在並不十分明白原理,只是會用。

2.與單值的技巧。

/// 

/// 根據人員編號取得人員名稱

/// 

/// 

/// 

public

string getrymc(string rydm)

/// 

/// 根據人員編號查詢

/// 

/// 

/// 

public datatable getuser(string rydm)

;return dbhelper.executedt(sb.tostring(), param);

}首先,寫乙個取datatable的方法,以後取哪個單值,就直接呼叫dt.rows[0]["欄位名"].tostring()

datatable table = dbhelper.executedt(sb.tostring());

if (table.rows.count > 0)

else

這裡rows.count判斷是必要的,另外有可能返回空字元,所以也有必要判斷是否是""

3.dbhelper.executedt()有兩種過載:

執行帶引數或不帶引數的sql語句。

4.最常用的語句,不用有半點模糊。

查select [gname],[gspec] from goods where [gid]=@[gid] and [oid]=@oid

改update goods set [gname]=@gname,[gspec]=@gspec where [gid]=@gid

刪delete from goods where [gid]=@gid

增insert into goods ([gname],[gspec]) values (@gname,@gspec)

5.用到的方法積累

dbhelper.getparameter("@num",sqldbtype.int,4,"[num]",num)

這裡[num]並不是資料表中對應字段,即@num並不需要對應列名,

可是沒有不帶對應列名的建構函式,我只好加了個對應列。

奇怪的是,sqlparameter不對應列的建構函式,居然連長度也沒有了。

似乎不寫長度也行,有預設值,有時間試一試。

5.2select distinct sid from storein where sdate between @start and @end

6.dbhelper.executesql(sb.tostring(), param);

這個方法沒有不帶引數的過載,有時間自己寫一下。

現在解決方法是隨便加乙個引數,但不使用這個引數。

7.除了查詢用executedt()增刪改均用executesql()

另外,自己寫的executeds()及批量執行sql的方法executesqls(),以後研究,暫時不用。

那兩個方法已經夠用。

end

ViewState徹底研究

1.為什麼需要產生viewstate概念?2.使用demo了解asp.net page的life cycle,進而了解viewstate工作原理?當 classic asp 中的表單被提交時,所有的表單值都會被清空。設想一下,您提交了一張帶有大量資訊的表單,而伺服器返回了乙個錯誤。您將不得不返回表單...

CSS設計徹底研究

這本書不錯,詳細介紹了css的相關知識,對初學者和想進一步學習的人都有幫助。行內樣式 id樣式 類樣式 標記樣式 font weight bold font size 30px text decoration underline 強調標籤 盒子模型 給出2個值,前者表示上下,後者為左右 給出3個值,...

and or的 徹底研究

在前面的篇章中,我們似乎已經全部了解了and和or 1.執行順序 從左到右依次結合執行 2.查詢方式 and查詢真值為false,or查詢真值為true,然後返回找到的物件 還談論了邏輯運算中語句和物件的概念 邏輯判斷和儲存操作,針對的群體必定是物件,執行語句會先執行,將執行結果當做物件進行操作 但...