亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? jdbc 入門.txt

?? 優秀的JAVA學習文檔
?? TXT
?? 第 1 頁 / 共 2 頁
字號:
作者:zergman
email: zergman@chinaasp.com
日期:6/12/2001 1:21:07 PM
JDBC 入門 -- 建立聯接 
教程:JDBC 入門 作者:Maydene Fisher 翻譯:comer 
  你需要做的第一事情是你與想要使用的 DBMS 建立一個連接。這包含 2 個步驟:裝載驅動程序并建立連接。 

裝載驅動程序 
  裝載驅動程序只需要非常簡單的一行代碼。例如,你想要使用 JDBC-ODBC 橋驅動程序, 可以用下列代碼裝載它: 

    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 

  你的驅動程序文檔將告訴你應該使用的類名。例如, 如果類名是 jdbc.DriverXYZ ,你將用代碼以下的代碼裝載驅動程序: 

    Class.forName("jdbc.DriverXYZ"); 

  你不需要創建一個驅動程序類的實例并且用 DriverManager 登記它,因為調用 Class.forName 將自動將加載驅動程序類。如果你曾自己創建實例,你將創建一個不必要的副本,但它不會帶來什么壞處。 

  加載 Driver 類后,它們即可用來與數據庫建立連接。 

建立連接 
  第二步就是用適當的驅動程序類與 DBMS 建立一個連接。下列代碼是一般的做法: 

    Connection con = DriverManager.getConnection(url, "myLogin", "myPassword"); 

  這個步驟也非常簡單,最難的是怎么提供 url。如果你正在使用 JDBC-ODBC 橋, JDBC URL 將以 jdbc:odbc 開始:余下 URL 通常是你的數據源名字或數據庫系統。因此,假設你正在使用 ODBC 存取一個叫 "Fred" 的 ODBC 數據源,你的 JDBC URL 是 jdbc:odbc:Fred 。把 "myLogin" 及 "myPassword" 替換為你登陸 DBMS 的用戶名及口令。如果你登陸數據庫系統的用戶名為 "Fernanda" 口令為 "J8",只需下面的 2 行代碼就可以建立一個連接: 

String url = "jdbc:odbc:Fred"; 
Connection con = DriverManager.getConnection(url,"Fernanda", "J8"); 
  如果你使用的是第三方開發了的 JDBC驅動程序,文檔將告訴你該使用什么 subprotocol, 就是在 JDBC URL 中放在 jdbc 后面的部分。例如, 如果驅動程序開發者注冊了 acme 作為 subprotocol, JDBC URL 的第一和第二部分將是 jdbc:acme。驅動程序文檔也會告訴你余下 JDBC URL 的格式。JDBC URL 最后一部分提供了定位數據庫的信息。 

  如果你裝載的驅動程序識別了提供給 DriverManager.getConnection 的 JDBC URL ,那個驅動程序將根據 JDBC URL 建立一個到指定 DBMS 的連接。正如名稱所示,DriverManager 類在幕后為你管理建立連接的所有細節。除非你是正在寫驅動程序,你可能無需使用此類的其它任何方法,一般程序員需要在此類中直接使用的唯一方法是 DriverManager.getConnection。 

  DriverManager.getConnection 方法返回一個打開的連接,你可以使用此連接創建 JDBC statements 并發送 SQL 語句到數據庫。在前面的例子里,con 對象是一個打開的連接,并且我們要在以后的例子里使用它。 

JDBC 入門 -- 設置表 
創建表 
  首先,我們在我們的示例數據庫創建其中一張表 COFFEES,包含在咖啡店所賣咖啡的必要的信息,包括咖啡名字,他們的價格,本星期賣了多少磅及迄今為止賣的數目。關于 COFFEES 表我們以后會詳細描述,如下: 

COF_NAME SUP_ID PRICE SALES TOTAL 
Colombian 101 7.99 0 0 
French_Roast 49 8.99 0 0 
Espresso 150 9.99 0 0 
Colombian_Decaf 101 8.99 0 0 
French_Roast_Decaf 49 9.99 0 0 

  存儲咖啡名的列是 COF_NAME,它的 SQL 數據類型是 VARCHAR,最大的長度為 32 個字符。因為我們所賣的每種類型咖啡都使用不同的名字,名字可用于作為唯一識別咖啡的標識,因此可用于作主鍵。第二個列叫 SUP_ID,用于保存咖啡供應商標識;其 SQL 數據類型為 INTEGER。第 3 列叫 PRICE,因為它需要保存帶小數的十進制數,因此它的 SQL 類型為 FLOAT。(注意,通常錢的 SQL 類型為 DECIMAL 或 NUMERIC,但在不同 DBMSs 間存在差異,為了避免于老版本的 JDBC 的不兼容性在本教程我們采用更標準的 FLOAT 類型)SALES 列的 SQL 類型為 INTEGER,其值為本星期所賣咖啡的磅數。最后一列,TOTAL 的 SQL 類型為 INTEGER,保存了迄今為止所賣咖啡的總磅數。 

  數據庫里的第二個表 SUPPLIERS,保存了每個供應商的信息: 

SUP_ID SUP_NAME STREET CITY STATE ZIP 
101 Acme, Inc. 99 Market Street Groundsville CA 95199 
49 Superior Coffee 1 Party Place Mendocino CA 95460 
150 The High Ground 100 Coffee Lane Meadows CA 93966 

  COFFEES 跟 SUPPLIERS 都包含列 SUP_ID,它意味著可以用 SELECT 語句從這兩張表中取得有關信息。列 SUP_ID 是 SUPPLIERS 表的主鍵,用于唯一識別每個咖啡供應商。在 COFFEES 表中,SUP_ID 列被稱外鍵。注意每個 SUP_ID 值在 SUPPLIERS 表里只出現一次;這對主鍵是必須的。在 COFFEES 表里,它作為外鍵,顯然它可以有重復的 SUP_ID 值,因為同一供應商可以提供很多種的咖啡。在本節的最后,你將看見如何在 SELECT 語句中使用主鍵及外鍵的一個例子。 

  下面的 SQL 語句用于創建 COFFEES 表。列由列名跟空格跟 SQL 類型組成。列(包括列名及其 SQL 類型)跟下一個之間用逗號分隔。VARCHAR 類型創建定義了最大長度, 因此它需要有一個參數來表示最大長度。參數必須在類型后面的括號內。SQL 語句如下,列 COF_NAME 的長度 被限定為不得超過 32 個字符: 

CREATE TABLE COFFEES 
(COF_NAME VARCHAR(32), 
SUP_ID INTEGER, 
PRICE FLOAT, 
SALES INTEGER, 
TOTAL INTEGER) 

  這些代碼不帶 DBMS 語句結束符, 因為每個 DBMS 都可能不同。例如, Oracle 使用一個分號 (;) 作為語句的結束,而 Sybase 使用 go。你所使用的驅動程序會自動提供合適的語句結束符,因此你無須把它包括在你的 JDBC 代碼中。 

  另外,我們應該指出的的是 SQL 語句的格式。在 CREATE TABLE 語句中,關鍵字采用大寫字符,并且每個項目都另起一行。SQL 并沒有此要求;僅僅是為了更容易閱讀。SQL 標準是不區分關鍵詞的大小寫的, 因此,如下例中的 SELECT 語句可以有多種寫法。因此下面兩個不同寫法的語句對 SQL 來說是一樣的。 

SELECT First_Name, Last_Name 
FROM Employees 
WHERE Last_Name LIKE "Washington" 

select First_Name, Last_Name from Employees where 
Last_Name like "Washington" 

  然而,引號里的內容是區分大小寫的:在名字"Washington" 里 "W" 必須被大寫,并且余下的字符必須是小寫的。 

  對于標識,不同的 DBMS 有不同的要求,例如, 某些 DBMSs 要求那些列名及表名必須跟創建時的一樣,有些則沒有此要求。為安全起見,我們全部使用大寫標識如 COFFEES、SUPPLIERS,因為我們是那樣定義他們的。 

  到止我們寫了創建 COFFEES 表的 SQL 語句?,F在我們在它外面加上引號(使它成為字符串),并且字符串賦值給變量 createTableCoffees,在以后的 JDBC 代碼中我們可以使用此變量。正如看到的,DBMS 并不在意分行,但對 Java 語言來,String 對象分行是通不過編譯的。因而,我們可以用加號 (+) 把每一行的串連接。 

String createTableCoffees = "CREATE TABLE COFFEES " + 
"(COF_NAME VARCHAR(32), SUP_ID INTEGER, PRICE FLOAT, " + 
"SALES INTEGER, TOTAL INTEGER)"; 

  我們在 CREATE TABLE 語句中使用的數據類型是通用的 SQL 類型(也稱 JDBC 類型)它們在類 java.sql.Types 中定義。DBMSs 通常使用這些標準的類型,因此,當你要嘗試一些 JDBC 應用程序時,你可以直接使用 CreateCoffees.java 應用程序,它使用了 CREATE TABLE 語句。如果你的 DBMS 使用了它的自己的本地的類型名字,我們為你供應其它的應用程序,我們將在后面詳細解釋。 

  在運用任何應用程序前,當然,我們將讓你了解 JDBC 的基礎。 

創建 JDBC Statements 對象 
  Statement 對象用于把 SQL 語句發送到 DBMS 。你只須簡單地創建一個 Statement 對象并且然后執行它,使用適當的方法執行你發送的 SQL 語句。對 SELECT 語句來說,可以使用 executeQuery。要創建或修改表的語句,使用的方法是 executeUpdate。 

  需要一個活躍的連接的來創建 Statement 對象的實例。在下面的例子中,我們使用我們的 Connection 對象 con 創建 Statement 對象 stmt: 

Statement stmt = con.createStatement(); 

  到此 stmt 已經存在了,但它還沒有把 SQL 語句傳遞到 DBMS。我們需要提供 SQL 語句作為參數提供給我們使用的 Statement 的方法。例如,在下面的代碼段里,我們使用上面例子中的 SQL 語句作為 executeUpdate 的參數: 

stmt.executeUpdate("CREATE TABLE COFFEES " + 
"(COF_NAME VARCHAR(32), SUP_ID INTEGER, PRICE FLOAT, " + 
"SALES INTEGER, TOTAL INTEGER)"); 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩专区在线视频| 亚洲精品在线观| 亚洲成a人v欧美综合天堂下载| 99在线热播精品免费| 亚洲视频免费看| 色国产精品一区在线观看| 亚洲黄色免费网站| 欧美日韩国产首页在线观看| 视频在线观看91| 日韩精品资源二区在线| 九色综合国产一区二区三区| 久久夜色精品国产噜噜av| 国产精品影视网| 国产精品久久久久一区二区三区 | 91美女福利视频| 亚洲裸体xxx| 欧美日韩aaa| 久久69国产一区二区蜜臀| 欧美韩国日本不卡| 欧美日韩在线不卡| 午夜精品久久久久久久久| 91精品午夜视频| 国产成人精品免费一区二区| 亚洲综合免费观看高清完整版| 精品视频免费看| 国产剧情av麻豆香蕉精品| 亚洲免费色视频| 日韩欧美aaaaaa| 99久久免费视频.com| 热久久国产精品| 国产蜜臀av在线一区二区三区 | 精品视频在线看| 国产一区二区久久| 亚洲第一福利一区| 国产日韩亚洲欧美综合| 欧美午夜精品久久久久久孕妇| 久久99国产精品尤物| 亚洲精品国产高清久久伦理二区 | 2021中文字幕一区亚洲| 色视频成人在线观看免| 久久国产生活片100| 亚洲视频免费在线观看| 2020国产成人综合网| 欧美视频你懂的| 国产成人精品亚洲日本在线桃色| 亚洲国产美国国产综合一区二区| 久久亚洲一区二区三区明星换脸 | 欧美人与禽zozo性伦| 成人精品国产福利| 国产在线精品视频| 婷婷国产在线综合| 一区二区三区国产豹纹内裤在线| 久久久www免费人成精品| 欧美区一区二区三区| 97国产一区二区| 国产高清精品网站| 亚洲高清不卡在线观看| 亚洲女人小视频在线观看| 久久亚洲一级片| 日韩精品专区在线影院观看| 欧美疯狂做受xxxx富婆| 色又黄又爽网站www久久| 成人美女在线观看| 国产一区二区福利视频| 久久99日本精品| 欧美a一区二区| 丝袜脚交一区二区| 亚洲午夜日本在线观看| 亚洲黄色av一区| 99精品视频一区| 天天综合网天天综合色| 久久在线免费观看| 欧美日韩精品电影| 国产91高潮流白浆在线麻豆| 亚洲欧美一区二区三区孕妇| 91精品国产乱| 欧美va亚洲va| 国产99久久久精品| 国产精品中文字幕日韩精品| 国产亚洲美州欧州综合国| av不卡免费在线观看| 懂色av噜噜一区二区三区av| 国产精品一二三区| 国产盗摄一区二区| 成人免费黄色大片| 91一区二区三区在线观看| 91视频免费看| 日本精品一级二级| 欧美三级一区二区| 欧美一区二区三区视频在线观看| 欧美精品视频www在线观看| 3d成人动漫网站| 欧美刺激午夜性久久久久久久| 日韩精品一区二区三区在线观看| 日韩一区二区三区视频在线观看| 欧美一区二区免费| 精品福利av导航| 中国av一区二区三区| 亚洲欧美日韩久久| 亚洲高清视频中文字幕| 免费欧美在线视频| 精品夜夜嗨av一区二区三区| 国产福利一区二区三区视频在线| 国产高清精品在线| 在线看日本不卡| 欧美日韩久久一区| 26uuu亚洲| 1区2区3区精品视频| 亚洲一区二区三区在线播放| 麻豆精品在线观看| 国产成人精品亚洲777人妖| 在线视频一区二区免费| 91精品国产综合久久精品性色| 欧美成人video| 中文字幕色av一区二区三区| 午夜视频在线观看一区二区三区| 经典三级视频一区| 一本色道久久综合亚洲91| 欧美日韩亚洲综合在线| 国产欧美一区二区三区沐欲| 亚洲一区二区三区视频在线| 狠狠色狠狠色综合日日91app| 91在线视频网址| 欧美一区日韩一区| 136国产福利精品导航| 国产精品一区在线| 91视视频在线直接观看在线看网页在线看 | 激情五月激情综合网| 久久国产精品色| 欧美丝袜自拍制服另类| 欧美激情一区二区三区蜜桃视频| 舔着乳尖日韩一区| 欧美视频一区在线| 精品国产91亚洲一区二区三区婷婷| 亚洲欧洲成人精品av97| 精品国产a毛片| 日韩精品一区二区三区老鸭窝| 最新成人av在线| 国内偷窥港台综合视频在线播放| 欧美性猛交xxxxxx富婆| 久久伊人中文字幕| 婷婷国产v国产偷v亚洲高清| av亚洲精华国产精华| 日韩一区二区三区电影在线观看 | 国产成人高清在线| 91精品国产综合久久久久久漫画| 亚洲欧美另类久久久精品| 国产白丝精品91爽爽久久 | 精品国产精品一区二区夜夜嗨| 亚洲主播在线播放| 91在线观看一区二区| 久久久久久久久一| 美日韩一区二区| 欧美日韩高清一区二区不卡| 亚洲欧洲另类国产综合| 国产成人aaa| 国产亚洲精品久| 美女视频黄久久| 欧美疯狂做受xxxx富婆| 亚洲线精品一区二区三区八戒| 91丨九色丨尤物| 亚洲三级电影网站| 成人av影视在线观看| 欧美国产在线观看| 成人综合在线视频| 日本一区二区综合亚洲| 国产精品一线二线三线| 国产欧美va欧美不卡在线 | 成人性视频网站| 国产精品视频一二| 国产91精品欧美| 中文无字幕一区二区三区| 国产高清久久久| 国产精品日产欧美久久久久| 成人晚上爱看视频| 国产精品视频一二三区| 91麻豆成人久久精品二区三区| 亚洲特黄一级片| 在线亚洲一区二区| 视频一区欧美精品| 日韩欧美资源站| 国产精品资源在线看| 国产女主播一区| 色成人在线视频| 午夜亚洲福利老司机| 日韩一区二区在线看片| 激情综合五月天| 国产精品久久午夜夜伦鲁鲁| 一本一道久久a久久精品 | 99久久久国产精品| 樱花草国产18久久久久| 欧美剧情片在线观看| 久久99精品久久只有精品| 久久久99精品免费观看不卡| 成人av在线一区二区| 香蕉乱码成人久久天堂爱免费| 日韩视频在线永久播放| 国产伦精品一区二区三区视频青涩| 国产精品热久久久久夜色精品三区 | 亚洲已满18点击进入久久|