一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數據庫技術|

服務器之家 - 數據庫 - Sql Server - Java 實現連接sql server 2000

Java 實現連接sql server 2000

2019-11-07 15:53mssql教程網 Sql Server

JDBC技術事實上是一種能通過JAVA語言訪問任何結構化數據庫的應用程序接口(API)(Sun這樣說的,我也不知道是不是真的),而且現在的JDBC 3.0據Sun說也能訪問Execel等電子表格程序!

第一種:通過ODBC連接數據庫 

JAVA語言的跨平臺的工作能力(Write Once ,Run Anywhere)、優秀的圖像處理能力(我相信現在沒有那種語言可以超過JAVA在網絡上的圖形處理能力)、網絡通信功能、通過JDBC數據庫訪問技術等等,讓我們誰都不可否認JAVA語言是SUN公司對于計算機界的一個巨大的貢獻。筆者可以描述這樣一個場景:有一天你上網完全可以不用IE 或者NETSCAPE,上網就像是玩游戲,你可以獲得游戲那么精美的圖像和互動的感覺,如果你玩過UO,也許你就知道那種感覺了,但是JAVA做成的東西一定會超過UO的,因為不單單是游戲,也不是單單是瀏覽器,如果你愿意(要你有錢,有時間,有優秀的JAVA人才)你可以把所有的這一切用Java完全集成出來!!!我不是夸大JAVA的功能,大家可以訪問一下http://www.simchina.net的那個社區程序,你就能找到一種感覺了:相信我沒有說什么假話 。好了,不說廢話了,現在我向你介紹JAVA的數據庫訪問技術----JDBC數據庫訪問技術(你可千萬不要搞成ODBC了!)。 
  JDBC技術事實上是一種能通過JAVA語言訪問任何結構化數據庫的應用程序接口(API)(Sun這樣說的,我也不知道是不是真的),而且現在的JDBC 3.0據Sun說也能訪問Execel等電子表格程序! 
  JDBC對于數據庫的訪問有四種方式,我們這里只是介紹兩種: 
  第一種是通過ODBC做為“橋”(Bridge)對數據庫訪問,第二種是直接對數據庫訪問。 
  我們先來看看第一種JDBC<-->ODBC訪問的流程: 
  JDBC Driver Mannager->JDBC<->ODBC橋->ODBC->數據庫客戶機驅動庫->數據庫服務器->返回查詢結果,在這種訪問中值的我們注意的是雖然JAVA是"Write Once ,Run Anywhere",但是如果通過這種訪問的話,需要客戶端必須設置ODBC和有相應的數據庫客戶機的驅動,當你看了下面的另外一個流程的時候或許你會想:明明下一種更方面,為什么還要有這個東西的產生!呵呵,因為,未必所有的數據庫服務器提供商都提供下面的JDBC驅動程序(給JDBC訪問提供相應的接口),所以就有了JDBC<->ODBC Bridge。 
  接著再讓我們來看看第二種訪問流程: 
  JDBC Driver Mannager->局部JDBC驅動->客戶端數據庫->數據庫服務器->返回查詢結果,這種訪問事實上是轉換JDBC調用為相應的數據庫(Oracle, Sybase, Informix, DB2, 和其他的數據庫數據庫管理系統)的客戶端API調用(這么說,不知道大家能不能懂,說簡單點就好像ASP不是通過DSN對數據庫訪問而是通過OLEDB訪問,說道這里我還是不知道大家能不能明白我的意思。哎呀,不要扔雞蛋嘛!),這種方式的訪問需要相應的數據庫提供商提供相應的JDBC驅動程序,但是有一種好處,可以獨立于odbc用于可以隨處可Run的客戶端的瀏覽器中的Applet程序。 
我們下面將給大家一個通過JDBC-ODBC橋數據庫訪問的實例,但是在看下面的事例前我想問大家一次:JDK1.3裝了嗎?數據庫驅動裝了嗎(我使用的是SQLserver)?你該沒有使用Linux吧?雖然java支持Linux,但是老兄我可沒有使用Linux喲(這同JAVA的Write Once ,Run Anywhere沒有關系),由于使用了運行于Win下面的ODBC,我建議你看看這篇東西http://www.aspcn.com/showarticle.asp?id=112,否則你要是有了問題,出不了結果那豈不是要怪我(不過欲加之罪,何患無吃... ...),冤枉呀! 

哎呀,說了這么多的廢話,還是讓我們來看看到底JDBC的調用吧!既然我們是通過odbc訪問數據庫,所以這個odbc是跑不了的,我們先來設置你的odbc:打開你的odbc數據源->選擇系統dsn(Click加新的dsn-)->接下來輸入選擇數據庫類型、輸入dsn名:、選擇服務器、連接數據庫的方式、輸入數據庫的登陸用戶和密碼->測試連接,如果測試成功的話,那么你的dsn就建立好了,我的dsn名為Sqlserver.使用的是sqlserver7.0,以 “sa”登陸,密碼為空。這些東西都是后面要用道的! 
  好了下面讓我們來看程序代碼: (該代碼已經通過運行) 
//########################################################### 
//代碼開始 
import java.sql.*; 
//加載java數據連接包,java基本所有的數據庫的調用的都在這個東西里面 
public class InsertCoffees { 
public static void main(String args[]) { 
String url = "jdbc:odbc:sqlserver"; 
//取得連接的url名,注意sqlserver是dsn名 
Connection con; 
//實例化一個Connection對象 
Statement stmt; 
String query = "select * from col_link"; 
//選擇所有的Col_link表中的數據輸出 
try { 
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
//加載jdbc-odbc橋驅動 
} catch(java.lang.ClassNotFoundException e) { 
System.err.print("ClassNotFoundException: "); 
//加載jdbc-odbc橋錯誤 
System.err.println(e.getMessage()); 
//其他錯誤 

try { 
con = DriverManager.getConnection(url, "sa", ""); 
//數據庫連接 
stmt = con.createStatement(); 
//Create 一個聲明 
stmt.executeUpdate("CREATE TABLE col_link (sitename varchar (20) NULL ,siteurl varchar (50) NULL) "); 
//執行了一個sql語句生成了一個表col_link的表 
stmt.executeUpdate("insert into col_link values('ASP中華網','http://www.aspcn.com')"); 
stmt.executeUpdate("insert into col_link values('永遠到底有多遠','http://xuankong.com')"); 
//執行一個insert into語句 
stmt.executeUpdate("update col_link set siteurl='http://www.aspcn.com/xuankong/xuankongt.jpg' where siteurl='http://xuankong.com'"); 
//執行一個update語句,更新數據庫 
ResultSet rs = stmt.executeQuery(query); 
//返回一個結果集 
System.out.println("Col_link表中的數據如下(原始數據)"); 
//下面的語句使用了一個while循環打印出了col_link表中的所有的數據 
System.out.println("站點名 "+" "+"站點地址"); 
System.out.println("---------------"+" "+"----------------"); 
while (rs.next()) { 
String s = rs.getString("sitename"); 
String f = rs.getString("siteurl"); 
//取得數據庫中的數據 
System.out.println(s + " " + f); 
/*String t = rs.getString(1); 
String l = rs.getString(2); 
System.out.println(t + " " + l);*/ 
/*jdbc提供了兩種方法識別字段,一種是使用getXXX(注意這里的getXXX表示取不同類型字段的不同的方法)獲得字段名, 
第二種*是通過字段索引,在這里我把第二種方法注釋了*/ 
/*你可以訪問這個連接獲得getxxx的用法:http://java.sun.com/docs/books/tutorial/jdbc/basics/_retrievingTable.html*/ 

stmt.close(); 
con.close(); 
//上面的語句關閉聲明和連接 
} catch(SQLException ex) { 
System.err.println("SQLException: " + ex.getMessage()); 
//顯示數據庫連接錯誤或者查詢錯誤 



//代碼結束

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: www四虎影院 | 乌克兰17一18处交 | 亚洲性夜| 华人在线京东热 | 武侠艳妇屈辱的张开双腿 | 四虎精品免费国产成人 | 国产精品美女福利视频免费专区 | 婷婷综合久久中文字幕 | 无人区1免费完整观看 | 欧美日韩一区二区三区在线观看 | 免费一级毛片完整版在线看 | 极限淫生小说 | 美女张开腿让男人桶的 视频 | 人人最怕九月羊 | xxoo好深好爽动态 | 成人免费视屏 | 国产精品一二三 | 亚欧日韩 | 日本www视频在线观看 | 果冻传媒在线观看的 | 黑人又大又硬又粗再深一点 | 男人好大好硬好爽免费视频 | 欧美国产日韩在线 | 秒播影视 午夜福利毛片 | 精品亚洲欧美中文字幕在线看 | 亚洲系列国产系列 | 午夜小福利 | 性奶老妇 视频 | 亚飞与亚基高清国语在线观看 | 国产日本欧美亚洲精品视 | 激情视频图片小说qvdo | 日本老妇乱子伦中文视频 | 嫩草影院永久在线一二三四 | 三级理论在线播放大全 | 女人和拘做受全过程免费 | 国产乱码免费卡1卡二卡3卡四 | 欧美在线成人免费国产 | 国产精品区一区二区免费 | 男人天堂官方网站 | 欧美成人手机 | 啊啊啊好大好爽视频 |