1.Command對(duì)象
1.1 ExcuteNonquery---執(zhí)行非查詢語句,返回受影響的行數(shù),在新增,刪除,修改的時(shí)候,如果我們要返回結(jié)果集那么就不能使用它了;
1.2 ExcuteScalar--執(zhí)行查詢,執(zhí)行查詢返回結(jié)果集的第一行第一列,如果結(jié)果集為空,那么就返回null,在程序沒有執(zhí)行之前,返回值的類型不確定,所以返回值是object,
如果要得到自動(dòng)增長字段的主鍵值,在values關(guān)鍵字前面加上output inserted.Id,其中Id為主鍵的字段名,執(zhí)行結(jié)果就插入主鍵值,用ExcuteScalar執(zhí)行最方便。
1.3 ExcuteReader---返回一個(gè)指向數(shù)據(jù)庫結(jié)果集的讀取器;
2.DataAdapter--直接將數(shù)據(jù)庫的結(jié)果集全部一次性搬到本地?cái)?shù)據(jù)集(Dataset)里面。
3.DataReader---指向數(shù)據(jù)庫結(jié)果集的讀取器,在沒有調(diào)用Read方法之前,指針指向的是結(jié)果集的第一行之前,
通過Read方法可以使指針向前前進(jìn)一個(gè),如果當(dāng)前指向的地方有數(shù)據(jù)行,那么就返回true,并把數(shù)據(jù)庫裝到自己內(nèi)部,如果沒有數(shù)據(jù)了(指向了結(jié)果集的最后一行之后,)那么就返回false; HasRows這個(gè)屬性,可以判斷當(dāng)前讀取器指向的結(jié)果集是否有一行或者多行,一行都沒有,就返回false,否則返回true,這個(gè)值,是在ExcuteReader的時(shí)候,就已經(jīng)賦值了。只能一行一行的讀取數(shù)據(jù),不能回讀,也不能跳著讀取數(shù)據(jù)
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注