c 運算元據庫

2022-11-24 20:32:41 字數 3741 閱讀 2915

1.利用sql語句新增 

在sql語句中提供了insert語句進行資料新增,其語法格式如下。

insert [into] table_name[(column_list)] values (data_values)

說明:insert是關健字,into是可選項,table_name為表名,即向哪個表中插入資料。column_list為表中列名,如果為多列,則列名間用逗號隔開,省略該引數,即向表中所有列插入資料。data_values為向表中插入的資料。

利用sql語句向資料庫新增記錄時,首先要建立sqlconnection類的一個物件,用來連線資料庫,然後定義新增的sql字串,最後使用sqlcommand物件的executenonquery方法執行記錄的新增操作。

本例通過在指定的文字框中輸入所要新增的使用者資訊,單擊【新增】按鈕,通過在按鈕的click事件中利用sql語句來實現新增過程,新增的資訊將顯示在gridview控制元件中。

程式開發步驟:

(1)新建一個**,將其命名為ex19_01,預設主頁為default.aspx。

(2)向default.aspx頁中新增一個table**,用於佈局頁面,然後在table**中分別新增一個gridview控制元件、3個textbox控制元件和一個button控制元件,用來顯示新增的結果、輸入新增資訊和執行新增命令。

(3)主要程式**。

首先,在page_load事件中呼叫自定義的繫結方法。

protected void page_load(object sender, eventargs e)  } 

自定義繫結方法gridviewbind()**如下。

public void gridviewbind() 

自定義一個getconut()方法,此方法將用來判斷是否有新增了相同的記錄,**如下。

public int getconut() 

"新增"按鈕click事件**如下。

protected void button1_click(object sender, eventargs e) 

else 

catch(exception ex)  } 

}2.通過sqlparameter引數新增 

通過sqlparameter引數向資料庫新增資料,主要使用sqlparameter類的一些屬性和方法。

首先要建立sqlconnection類的一個物件,用來連線資料庫,然後插入一個帶引數的sql命令。

例如,使用的帶引數的sql命令實現向資料庫的圖書資訊表(“tb_bookinfo”表)中新增相關的圖書資訊,**如下。

insert into tb_bookinfo (bookname,bookintroduce,bookprice,bookisnew) values(@bookname,@bookintroduce,@bookprice,@bookisnew) 

插入完帶引數的sql命令後,通過sqlcommand物件的add方法向sqlparameter中新增引數,並給相應的引數賦值,最後使用sqlcommand物件的executenonquery方法執行記錄的新增操作。

說明:在使用帶引數的sql命令(如insert、update和delete等命令)時,其中的引數必須要用識別符號@來標記,而引數名稱可自己定義。在這種情況下,引數與命令關聯的順序就不重要了。

注意:oledb和odbc資料來源使用以問號(?)佔位符標識的定位引數。引數的順序是重要的。這一點與sql server是不同的,要牢記!

本例通過在頁面指定的文字框中輸入要新增的相關資訊,通過在【新增】按鈕的click事件中使用sqlparameter引數來實現新增操作,新增的資訊將顯示在gridview控制元件中。

程式開發步驟:

(1)新建一個**,將其命名為ex19_02,預設主頁為default.aspx。

(2)向default.aspx頁中新增一個table**,用於佈局頁面,然後在table**中分別新增一個gridview控制元件、4個textbox控制元件和一個button控制元件,用來顯示新增的結果、輸入新增資訊和執行新增命令。

(3)主要程式**。

“新增資訊”按鈕click事件**如下:

protected void button1_click(object sender, eventargs e) 

else 

catch(exception ex) 

}   

}3、通過儲存過程新增 

儲存過程可以過濾sql語句中的非法字元,而且在建立時可直接在伺服器上進行編譯,所以執行起來比單個sql語句快。通過儲存過程新增資料,可以提高程式的執行效率,而且便於以後的維護。

利用儲存過程向資料庫新增記錄時,首先要建立sqlconnection類的一個物件,用來連線資料庫,然後使用sqlcommand物件的commandtype屬性指定要執行的sql文字命令為儲存過程,並通過add方法向sqlparameter中新增引數,最後使用sqlcommand物件的executenonquery方法執行資料更新操作。

本例主要應用儲存過程實現向圖書資訊資料庫中新增資料,在頁面指定的文字框中輸入相關的新增資訊,通過【新增】按鈕的click事件中呼叫儲存過程來實現新增操作。

使用儲存過程新增資料之前,首先需要建立儲存過程probookinfo,**如下:

create    procedure probookinfo 

(@bookname     [varchar](50), 

@bookintroduce    [varchar](50), 

@bookprice    [money], 

@bookisnew   [varchar](50)) 

as insert into [fangdawei].[dbo].[tb_bookinfo] ( 

[bookname], 

[bookintroduce], 

[bookprice], 

[bookisnew]) 

values ( 

@bookname, 

@bookintroduce, 

@bookprice, 

@bookisnew) 

go 程式開發步驟:

(1)新建一個**,將其命名為ex19_03,預設主頁為default.aspx。

(2)向default.aspx頁中新增一個table**,用於佈局頁面,然後在table**中分別新增一個gridview控制元件、4個textbox控制元件和一個button控制元件,用來顯示新增的結果、輸入新增資訊和執行新增命令。

(3)主要程式**。

“新增資訊”按鈕click事件**如下: protected void button1_click(object sender, eventargs e) 

else 

; //給引數賦值 

prams[0].value = textbox1.text; 

prams[1].value = textbox2.text; 

prams[2].value = convert.todecimal(textbox3.text); 

prams[3].value = dropdownlist1.selectedvalue.tostring(); 

foreach (sqlparameter parameter in prams) 

//執行sql語句 

mycom.executenonquery(); 

myconn.close(); 

binddata(); 

response.write("alert('新增成功!')"); 

} catch(exception ex)  } 

}