麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 數據庫 > DB2 > 正文

如何在Visual C#中實現DB2數據庫編程

2024-09-06 23:58:11
字體:
來源:轉載
供稿:網友
  在visual studio.net beta 1版本中訪問ibm db2等非sql server數據庫通常是使用ado.net的odbc方法,而在beta 2中則改用ole db方式存取數據庫。

  beta1中連接字符串主要需聲明數據庫的odbc的dns名字,但beta 2中的ole db連接的字符串就較復雜了,使用的類也不相同。由于db2等數據庫在大型機等應用中使用非常廣泛,.net自然會全力支持此類編程開發,為此,下文將逐步闡述ole db的db2開發。


  ole db for db2驅動


  首先,visual studio.net和windows 2000 server中并未直接提供db2的ole db驅動,因此需下載microsoft host integration server 2000軟件,該軟件包中含ole db provider and odbc driver for db2,需下載server端軟件包,并在安裝時選擇安裝data integration,安裝完成后就可使用其ole db的db2驅動了。


  設置數據庫連接


  首先,我們需配置好db2的客戶端設置,打開視圖選單項中的服務器資源管理器,在其數據連接中新增一個連接,指定程序選項時選擇microsoft ole db provider for db2,下一步連接選項中,填寫如下信息:

  data source: qcdb(請酌情修改)

  network:tcp/ip

  ip address:數據庫服務器地址

  network port:db2服務端口

  username:數據庫訪問權限的用戶名

  password:該用戶口令

  database initial catalog:qcdb

  package collection:qcdb

  default schema:userid

  下一步高級選項中選各自國家語言對應的code page及ccsid,最后按確認鍵完成創建連接。

  假設qcdb這個db2數據庫中有一名為address的新數據表,其包含四個字段:name、email、age和address,我們可用服務器資源管理器打開上述連接及該數據表,可輸入數條中文記錄,確定中文字符能否正常顯示。


  為項目增加數據庫連接


  用visual studio新建一個asp.net項目,激活服務器資源管理器的上述連接,用鼠標將該連接拖至新建的web form上,則ole db需要的連接字符參數全部自動寫入web form程序中,上述連接生成的語句如下:

  this.oledbconnection1.connectionstring = @"provider=db2oledb;

  cache authentication=false;

  integrated security="""";

  password=freebsd9;

  persist security info=true;

  user id=userid;initial catalog=qcdb;

  data source=qcdb;mode=readwrite;

  extended properties="""";

  appc remote lu alias="""";

  appc local lu alias="""";

  appc mode name=qpcsupp;

  network transport library=tcpip;

  host ccsid=37;pc code page=1282;

  network address=172.23.169.1;

  network port=4444;package collection=qcdb;

  default schema=userid;alternate tp name="""";

  process binary as character=false;

  units of work=ruw"

  用服務器資源管理器工具生成連接可避免錯寫各種參數,從而可快速地實現數據庫連接。


  web form顯示數據庫數據


  為web form新增一個oledbdataadapter類的對象oledbdataadapter1,為其選擇數據連接時選上面建立的連接如:qcdb.qcdb.userid,選擇使用sql語句,生成sql語句如:select from address,最后提示完成。再為web form新增一個dataset并命名為dataset1用來放查詢得到的數據。新增一個顯示數據用的datagrid命名為datagird1,最后在web form的程序段中的page_init部分中增加如下代碼:

  oledbconnection1.open();

  //打開數據庫連接

  oledbdataadapter1.fill(dataset1,"address");

  //將得來的數據填入dataset

  datagrid1.databind();

  //綁定數據

  oledbconnection1.close();

  //關閉連接

  編譯運行后,可見address表中內容被顯示于web form的databrid中。oledbconnection1等屬性設置都在生成的web form設計代碼中。


  增加數據庫數據


  在web form上新增對應字段數量個數的textbox,及一個button,為該按鍵增加click響應事件代碼如下:

  this.oledbinsertcommand1.commandtext = "insert into address(name, email, age, address) values (’"+textbox1.text+"’,’"+textbox2.text+"’,’"+textbox3.text+"’,’"+textbox4.text+"’)";

  oledbinsertcommand1.connection.open(); 

  //打開連接

  oledbinsertcommand1.executenonquery(); 

  //執行該sql語句

  oledbinsertcommand1.connection.close();

  //關閉連接

  實際編程中,我們需注意sql語句的單引號問題以及數字和字符串處理問題。


  刪除數據庫數據


  在web form上新增一個textbox5及一個按鍵,要執行刪除時,在textbox5中填入要刪除記錄的name字段的值,然后按該按鍵執行刪除。該按鍵代碼如下:

  system.data.oledb.oledbcommand oledeletecommand1 = new system.data.oledb.oledbcommand();

  this.oledbdataadapter1.deletecommand = oledeletecommand1; 

  //聲明為oledb命令

  oledeletecommand1.commandtext="delete from address where name=’"+textbox5.text+"’";

  oledeletecommand1.connection = this.oledbconnection1; 

  //指明連接

  oledeletecommand1.connection.open(); 

  //打開連接

  oledeletecommand1.executenonquery(); 

  //執行sql語句

  oledeletecommand1.connection.close();

  //關閉連接

  對于增加、更新和刪除操作后的datagrid刷新,可執行類似的select sql語句即可。

  上述代碼可供各種非sql server數據庫編程參考和使用,微軟為此提供了如ole db provider for oracle、as/400和vsam等眾多驅動,ole db方式確實提供了較odbc方式更為廣泛的數據存取范圍,如可存取access庫中的數據、郵件系統中的數據、web上的文本及圖形、目錄服務等等,符合odbc標準的數據源就是符合ole db標準的數據存儲的子集,而且ole db的api是符合com標準和基于對象的api,這些都是較原odbc方式有大幅改進,從而為綜合的數據集成處理提供了更廣泛的支持。

  通過以上講解,筆者希望使讀者初步了解在visual studio.net中,以db2為后臺數據庫時應用系統的開發步驟,也希望讀者舉一反三,領會思想和方法,以便更好地應用到自己的系統開發中。

  上述程序在中文windows 2000 server、ibm db2和visual studio.net beta 2環境中編譯并正常運行。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 91 免费视频 | 国产亚洲精品久久777777 | 久草在线手机视频 | 毛片118极品美女写真 | 性视频久久 | 久久成人精品视频 | 97干色| 成人午夜久久 | 国产精品欧美日韩一区二区 | 狠狠干天天操 | 少妇一级淫片免费放正片 | 一级大黄毛片 | 日韩一级免费毛片 | 成人三区四区 | 青青草华人在线 | 久久丝袜脚交足黄网站免费 | 亚洲精华液久久含羞草 | 新久草在线视频 | 久草在线视频免费播放 | 国产精品一区99 | 精品国产九九九 | 九九热在线精品视频 | 国产精品久久国产精品 | 黄视频网站免费在线观看 | 国产91对白叫床清晰播放 | 久久久国产精品免费观看 | 欧美成年私人网站 | 国内精品久久久久久2021浪潮 | 91av在线影院 | 成人福利软件 | 视频一区二区三区在线观看 | 成人男女免费视频 | 国产午夜精品一区二区三区视频 | 精品麻豆cm视频在线看 | 亚洲国产精品高潮呻吟久久 | 欧美日韩成人一区二区 | 国产亚洲精品久久午夜玫瑰园 | 国产91大片| 亚洲精华液久久含羞草 | 草b视频在线观看 | 成人毛片免费 |