c mysql中的讀取資料的幾個方法

2021-08-08 01:30:45 字數 1980 閱讀 1138

1)executenonquery():執行命令物件的sql語句,返回乙個int型別變數,如果sql語句是對資料庫的記錄進行操作(如記錄的增加、刪除和更新),那麼方法將返回操作所影響的記錄條數。

下面為詳細的解釋運用:

命令物件的executenonquery()方法用於執行任何不從資料庫返回結果集的sql操作命令,包括insert into、update、delete語句、沒有返回數值的儲存過程、create table和createindex之類的ddl語句。executenonquery方法還可用來執行目錄操作,例如查詢資料庫的結構或建立諸如表等的資料庫物件。executenonquery方法對於update、insert into和delete這些操作語句,其返回值為該命令所影響的行數。對於所有其他型別的語句,返回值為-1。如果發生回滾,返回值也為-1。

假設cmd為sql server資料提供者的命令物件(即sqlcommand),cn為連線物件(保持開啟狀態),呼叫executenonquery方法如以下**所示。

sqlcommand cmd = new sqlcommand();

cmd.connection = cn;

//設定cmd的命令文字,本例為刪除table1表中id字段值大於1的記錄

cmd.commandtext = 「delete from table1 where [id]>1」;

int count = cmd.executenonquery();

以上**中,建立了sqlcommand型別的命令物件cmd,設定其連線為連線物件cn,sql命令文字為某個sql語句(一般為增、刪、改命令)。執行executenonquery方法後,命令文字即通過連線物件作用到資料庫中,其返回值count則為資料庫中受到影響的資料記錄數量。

(2)executescalar():執行命令物件的sql語句,如果sql語句是select查詢,則僅僅返回查詢結果集中的第1行第1列,而忽略其他的行和列。該方法所返回的結果為object型別,在使用之前必須強制轉換為所需的型別。如果sql語句不是select查詢,則返回結果沒有任何作用。

下面為詳細的方法的解釋運用等:

命令物件的executescalar()方法由於只能返回資料集的第1行第1列,所以常被用於執行聚合函式。假設cmd為sql server資料提供者的命令物件(即sqlcommand),cn為連線物件(保持開啟狀態),呼叫executescalar方法如以下**所示。

sqlcommand cmd = new sqlcommand();

cmd.connection = cn;

//設定cmd的命令文字,本例為查詢table1表中記錄的數量

cmd.commandtext = 「select count(*) from table1」;

int count = (int)cmd.executescalar();

以上**中,建立了sqlcommand型別的命令物件cmd,設定其連線為連線物件cn,sql命令文字為某個sql語句。由於返回值為object型別,所以需要進行強制轉換,count變數即儲存了所需資料表中記錄的數量。

(3)executereader():我們通常在asp中用recordset物件來從資料庫中讀出資料,並且用迴圈語句來乙個乙個的讀出資料,但在我們的ado.net中,我們就是datareader 物件的executereader()方法來進行資料的列出,並且我們用這個executereader()方法來顯示資料是最快的一種方法,因為當我們在用executereader()方法中的datareader 物件來進行資料的在**建設中顯示時,他只可以一條一條向前讀,不能返回,也就是像asp中的ado方法中的recordset 物件的movenext一樣,他沒有move -1這樣的返回方法。

說明:如果沒有資料可操作,那麼只能使用呼叫命令物件的executereader方法,返回乙個資料讀取器(datareader物件)。因為 executenonquery()與executescalar()在沒有資料的時候呼叫時,就會出現「物件沒有例項化」的錯誤。所以在判斷是否有資料時,應該呼叫資料讀取器的read()方法來檢測。

c mysql 讀取 C 資料庫讀取和寫入

下面為資料庫資料的讀取 using system.data.oledb string strdsn provider microsoft.jet.oledb.4.0 data source metest.mdb string strsql select from developer 例項化oledb...

c mysql 的大量資料匯入

專案需求,本來oracle用得好好的,突然要轉成mysql,我也是醉了。有個匯入的問題,查了半天終於得到解決。oracle中有 oraclebulkcopy,sql當然也有個sqlbulkcopy 這裡有介紹就不說 不廢話了,直接上 應該很容易懂吧 using system using system...

中讀取資料 讀取資料

對資料庫有一定了解的同學應該都知道資料表這個東西。資料表一般是以行列來儲存和展示資料的。每一列就是乙個資料字段,代表每一行資料的屬性。在python裡面也有類似表概念的東西,叫做dataframe。dataframe是我們資料分析和風控建模中很重要乙個元素,後續的很多資料操作都要以此為基礎。我們的資...