Visual C 的SQL Server程式設計

2021-04-14 00:39:48 字數 3951 閱讀 9247

visual c#的sql server程式設計

初始設定

首先,我們需在應用系統中安裝sql server 2000,microsoft ole db provider for

sql server (sql ole db)也會同時被自動安裝,接著用sql server的enterprise manager建立乙個叫tyjdb的資料庫,並新建一名為address的資料表,其含name、email、age和address四個字段。

開啟vs開發環境中的檢視選單項中的伺服器資源管理器,該管理器可管理sql server及其他各種ole db的資料庫連線,並可以管理其中的資料。接著我們新增乙個新的資料連線,連線屬性選擇microsoft ole db provider for sql server,然後選好伺服器及資料庫tyjdb,測試連線成功後按確定。使用該工具可又快又準地生成需要的資料庫連線字串。

連線資料庫

新建乙個asp.net專案。將伺服器資源管理器中的資料連線拖至新建的web form上即可,這時自動生成了乙個連線字串如下:

this.sqlconnection1.connectionstring = "data source=jeff;initial catalog=tyjdb;persist security info=false;user id=sa;workstation id=jeff;packet size=4096";

其中jeff為筆者的伺服器名,sa為伺服器登入名。

選取工具箱中的sqldataadapter並拖至該web form,提示時選取tyjdb的資料連線,選擇使用sql語句訪問資料庫,生成sql語句時只填入select * from address,確認完成即可。程式生成**如下:

protected system.data.sqlclient.sqldataadapter sqldataadapter1;

//訪問資料庫的主要類

protected system.data.sqlclient.sqlcommand sqlselectcommand1;

//sql語句處理的類

protected system.data.sqlclient.sqlconnection sqlconnection1;

//連線資料庫的類

在initializecomponent()中有如下宣告:

this.sqlconnection1 = new system.data.sqlclient.sqlconnection();

this.sqldataadapter1 = new system.data.sqlclient.sqldataadapter();

this.sqlselectcommand1 = new system.data.sqlclient.sqlcommand();

this.sqldataadapter1.selectcommand = this.sqlselectcommand1;

this.sqlselectcommand1.commandtext = "select name, email, age, address from address";

this.sqlselectcommand1.connection = this.sqlconnection1;

為使table中資料能在web form中顯示,加入乙個datagrid控制項至web form上,並在page_init中加入如下語句:

sqlconnection1.open();

//開啟資料庫連線

dataset objdataset;

//新建乙個放資料的dataset

objdataset=new dataset();

sqldataadapter1.fill(objdataset, "address");

//將資料填入dataset

datagrid1.datasource=objdataset.tables["address"].defaultview;

//關聯dataset和datagrid

datagrid1.databind();

//繫結資料

sqlconnection1.close();

//關閉資料庫連線

編譯執行後web form已可將資料庫中資料顯示在datagrid中了。

增加資料

若想增加資料庫資料時,我們只需在web form上新增對應字段數量個數的textbox,並新增乙個按鍵,接著為該按鍵增加click事件,具體**如下:

sqlinsertcommand1.parameters["@name"].value=textbox1.text;

//將textbox賦值給對應引數

sqlinsertcommand1.parameters["@email"].value=textbox2.text;

sqlinsertcommand1.parameters["@age"].value=textbox3.text;

sqlinsertcommand1.parameters["@address"].value=textbox4.text;

sqlinsertcommand1.connection.open();

//開啟連線

sqlinsertcommand1.executenonquery();

//執行insert語句

sqlinsertcommand1.connection.close();

//關閉連線

sqlconnection1.open();

dataset objdataset;

//下面程式段更新datagrid

objdataset=new dataset();

sqldataadapter1.fill(objdataset, "address");

datagrid1.datasource=objdataset.tables["address"].defaultview;

datagrid1.databind();

執行這段程式時,只需在textbox中填入要新增的記錄欄位的值,然後按該按鍵即可執行新增功能。

刪除資料

若想刪除資料庫資料時,我們則需在web form上新增乙個textbox5及乙個按鍵,為該按鍵增加如下**:  

using system.data.sqlclient;

//在**頭部加入名命空間

sqlcommand sqldeletecommand1 = new system.data.sqlclient.sqlcommand();

//宣告sql command類物件

this.sqldataadapter1.deletecommand = sqldeletecommand1;

sqldeletecommand1.commandtext="delete from address where name='"+textbox5.text+"'";

//sql語句

sqldeletecommand1.connection = this.sqlconnection1;

//宣告使用的資料連線

sqldeletecommand1.connection.open();

sqldeletecommand1.executenonquery();

//執行該sql語句

sqldeletecommand1.connection.close();

執行這段程式時,只需在textbox5中填入要刪除的記錄name欄位的值,然後按該按鍵即可執行刪除功能。

更新操作原理都類同,具體開發中可以有許多技巧豐富完善上述程式,如增加錯誤處理等,這裡限於篇幅不一一敘述了。

綜上可知,充分利用visual studio.net的開發環境來簡化程式設計對提高程式設計效率和質量極有好處。

上述程式均用c#開發,在中文windows 2000 professional、sql server 2000、visual studio.net中文beta 2環境下,編譯並正常執行,中文顯示正常。 

ISA SERVER日誌存放SQL SERVER中

在預設安裝 isa 2004 或是2006後,將會自動安裝簡易版的 sql server 來存放防火牆與 webproxy 的連線訪問日誌 可是由於 msde 僅限於單機連線的使用 並且在訪問上也有容量大小的限制 因此為了提公升整體 isa 的執行能力 建議可以改由將這些頻繁的日誌檔案訪問 寫入到內...

鏈結sqlserver 安裝sqlserver

在進行部署專案的時候。特別是重做系統之後要注意,最好安裝資料庫,在安裝其他編輯軟體 而且,有乙個特點是先安裝低版本可以安裝高版本,但是你裝高版本後很難安裝高版本 我這有個sqlserver 2008 r2 在安裝時,不要害怕,一般都是預設安裝,讓你操作的時候 也不多,而且,安裝的位置一般都是在系統盤...

localhost無法連線sqlserver

因為工作關係我的電腦安裝了2012 2017兩個版本的sqlserver,之後把2017的解除安裝了,出現了vs開啟專案不報錯,一直在轉圈的問題,之後試過本機登入sqlserver 發現登不上,要指定例項才可以。開啟配置管理器 1.開啟sqlserver網路配置,點選例項協議 2.雙擊tcp ip ...