[
鍘熷垱
]
JDBC
濡備綍榪炴帴
SQL SERVER 2000
鐨勯粯璁ゅ疄渚嬪拰鍛藉悕瀹炰緥
寮曠敤璇鋒敞鏄庡嚭澶?/span>
:http//www.tkk7.com/SINOJAVA
(
涓
)
涓嬭澆
Microsoft SQL Server 2000 Service Pack 3a
騫跺畨瑁?/span>
http://www.microsoft.com/downloads/details.aspx?FamilyId=90DCD52C-0488-4E46-AFBF-ACACE5369FA3&displaylang=zh-cn
(
浜?/span>
)
涓嬭澆騫跺畨瑁?/span>
SQL SERVER 2000
寰?/span>
JDBC
椹卞姩
(
SQL Server 2000 Driver for JDBC Service Pack 3
)
(
涓?/span>
)
閰嶇疆
JDBC
椹卞姩
classpath
鐜鍙橀噺
:
鏂規硶
1:
濉姞
:
C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\msbase.jar;
C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\mssqlserver.jar;
C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\msutil.jar;
娉?/span>
: C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\
涓烘垜
JDBC
寰楀畨瑁呰礬寰?/span>
鏂規硶
2:
灝?/span>
mssqlserver.jar; msutil.jar; msbase.jar
鎷瘋礉鍒?/span>
JDK
寰?/span>
lib
鐩綍涓?/span>
,
鐒跺悗璁劇疆
classpath
D:\Java\jdk1.5.0_05\lib\sqlserver\msutil.jar;
D:\Java\jdk1.5.0_05\lib\sqlserver\msbase.jar;
D:\Java\jdk1.5.0_05\lib\sqlserver\mssqlserver.jar;
(
鍥?/span>
)
鍒涘緩榪炴帴鏁版嵁搴撻粯璁ゅ疄渚嬪緱榪炴帴浠g爜
:
import java.sql.*;
public class ConSqlserver {
聽聽聽聽
聽聽聽聽 Connection con=null;
聽聽聽聽 //Statement st=null;
聽聽聽聽 //ResultSet re=null;
聽聽聽聽
聽聽聽聽 public ConSqlserver()
聽聽聽聽 {
聽聽聽聽聽聽聽聽聽聽聽 try
聽聽聽聽聽聽聽聽聽聽聽 {
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽 String driver="com.microsoft.jdbc.sqlserver.SqlServerDriver";
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽 String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=Northwind";
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽 Class.forName(driver).newInstance();
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽 con =DriverManager.getConnection(url,"sa","zhaopf");
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽 System.out.println("
榪炴帴鎴愬姛
!");
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽 con.close();
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽聽聽聽聽 catch(Exception e)
聽聽聽聽聽聽聽聽聽聽聽 {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 e.printStackTrace();
聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽 }
聽聽聽聽聽聽 public static void main(String[] args)
聽聽聽聽 {
聽聽聽聽聽聽聽聽聽聽聽 // TODO
鑷姩鐢熸垚鏂規硶瀛樻牴
聽聽聽聽聽聽聽聽聽聽聽 ConSqlserver con=new ConSqlserver();
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽 }
}
(
浜?/span>
)
鍒涘緩榪炴帴鏁版嵁搴撳懡鍚嶅疄渚嬬殑榪炴帴浠g爜
(
瀹炰緥鍚嶄負
SINOIT\SINOSERVER)
L
import java.sql.*;
public class ConSqlserverppp {
聽聽聽聽
聽聽聽聽 Connection con=null;
聽聽聽聽 //Statement st=null;
聽聽聽聽 //ResultSet re=null;
聽聽聽聽
聽聽聽聽 public ConSqlserverppp()
聽聽聽聽 {
聽聽聽聽聽聽聽聽聽聽聽 try
聽聽聽聽聽聽聽聽聽聽聽 {
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽 //String driver="com.microsoft.jdbc.sqlserver.SqlServerDriver";
聽聽聽聽
聽聽聽聽聽聽
聽聽聽 String url="jdbc:microsoft:sqlserver://SINOIT\\SINOSERVER;DatabaseName=Northwind";
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽 Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽 //Class.forName(driver);//.newInstance();
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽 con =DriverManager.getConnection(url,"sa","zse");
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽 //st=con.createStatement();
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽 System.out.println("
榪炴帴鎴愬姛
!");
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽 con.close();
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽聽聽聽聽 catch(Exception e)
聽聽聽聽聽聽聽聽聽聽聽 {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 e.printStackTrace();
聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽 }
聽聽聽聽 public static void main(String[] args)
聽聽聽聽 {
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽聽聽聽聽聽聽聽 ConSqlserverppp con=new ConSqlserverppp();
聽聽聽聽 }
}
鐢↗AVA榪炴帴鏁版嵁搴撲富瑕佹湁涓ょ鏂瑰紡錛?font color="#0000ff">涓鏄敤JDBC-ODBC妗ユ潵榪炴帴錛?font color="#0000ff">浜屾槸鐢ㄧ浉鍏沖巶鍟嗘彁渚涚殑鐩稿簲椹卞姩紼嬪簭鏉ヨ繛鎺ワ紝棣栧厛璋堣皥絎竴縐嶈繛鎺ャ?/font>
JDBC-ODBC妗ユ帴鍣ㄦ槸鐢↗dbcOdbc.Class鍜屼竴涓敤浜庤闂甇DBC椹卞姩紼嬪簭鐨勬湰鍦板簱瀹炵幇鐨勩傚浜嶹INDOWS騫沖彴錛岃鏈湴搴撴槸涓涓姩鎬佽繛鎺ュ簱DLL
(JDBCODBC.DLL)銆?
鐢變簬JDBC鍦ㄨ璁′笂涓嶰DBC寰堟帴榪戙傚湪鍐呴儴錛岃繖涓┍鍔ㄧ▼搴忔妸JDBC鐨勬柟娉曟槧灝勫埌ODBC璋冪敤涓婏紝榪欐牱錛孞DBC灝卞彲浠ュ拰浠諱綍鍙敤鐨凮DBC椹卞姩紼嬪簭榪涜
浜や簰浜嗐傝繖縐嶆ˉ鎺ュ櫒鐨勪紭鐐規槸錛屽畠浣縅DBC鐩墠鏈夎兘鍔涜闂嚑涔庢墍鏈夌殑鏁版嵁搴撱傞氳鏂瑰紡濡傚浘鎵紺猴細
搴旂敤紼嬪簭---JDBC API---JDBC-ODBC---ODBC API---ODBC灞?--鏁版嵁婧?
鍏蜂綋鎿嶄綔鏂規硶涓猴細
棣栧厛鎵撳紑鎺у埗闈㈡澘鐨勭鐞嗗伐鍏鳳紝鎵撳紑鏁版嵁婧愶紙ODBC錛夛紝鍦ㄧ敤鎴稤SN閲岄潰娣誨姞鏁版嵁婧愶紙鍗充綘瑕佽繛鎺ョ殑鏁版嵁搴撶殑鍚嶅瓧錛夛紝鍦ㄨ繖閲屽亣瀹氳繛鎺QL SERVER
2000鐨凣oodsSupply鏁版嵁搴撱傚悕縐板~鍐欎綘瑕佽繛鎺ョ殑鏁版嵁搴撶殑鍚嶇О錛圙oodsSupply錛夛紝鐒跺悗閫愭璁劇疆錛屽鏋滈夌敤浜嗕嬌鐢⊿QL-SERVER瀵嗙爜璁よ瘉鐨勮瘽錛?/p>
灝辮杈撳叆鐩稿簲鐨勭敤鎴峰悕鍙婂瘑鐮佽繛鎺ュ埌鏁版嵁搴撱備竴璺笅涓姝ヨ緗畬鎴愩?
鍦↗AVA閲岄潰緙栧啓紼嬪簭榪涜嫻嬭瘯錛屽湪榪欓噷鎴戠殑紼嬪簭鏄鐢ㄦ埛杈撳叆浠繪剰鐨勮〃鍚嶄笌涓庡垪鍚嶏紝鎶婅鍒楃殑鎵鏈夋暟鎹緭鍑恒傛簮浠g爜濡備笅錛?
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.sql.*;
public class ODBCBridge {
public static void main(String[] args) {
String url="jdbc:odbc:GoodsSupply";
Statement sm=null;
String command=null;
ResultSet rs=null;
String tableName=null;
String cName=null;
String result=null;
BufferedReader input=new BufferedReader(new InputStreamReader(System.in));
try {
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //鍔犺澆椹卞姩
}catch(ClassNotFoundException e){
System.out.println("Can not load Jdbc-Odbc Bridge Driver");
System.err.print("ClassNotFoundException:");
System.err.println(e.getMessage());
}
Connection con=DriverManager.getConnection(url,"USER","PASSWORD"); //浣跨敤SQL-SERVER2000璁よ瘉
DatabaseMetaData dmd=con.getMetaData(); //DMD涓鴻繛鎺ョ殑鐩稿簲鎯呭喌
System.out.println("榪炴帴鐨勬暟鎹簱:"+dmd.getURL());
System.out.println("椹卞姩紼嬪簭:"+dmd.getDriverName());
sm=con.createStatement();
System.out.println("杈撳叆琛ㄥ悕");
tableName=input.readLine();
while(true) {
System.out.println("杈撳叆鍒楀悕(涓虹┖鏃剁▼搴忕粨鏉?:");
cName=input.readLine();
if(cName.equalsIgnoreCase(""))
break;
command="select "+cName+" from "+tableName;
rs=sm.executeQuery(command); //鎵ц鏌ヨ
if(!rs.next())
System.out.println("琛ㄥ悕鎴栧垪鍚嶈緭鍏ユ湁璇?);
else {
System.out.println("鏌ヨ緇撴灉涓?");
do
{
result=rs.getString(cName);
//鏁版嵁搴撹璦璁劇疆涓轟腑鏂囷紝涓嶇敤杞崲緙栫爜
//result=new String(result.getBytes("ISO-8859-1"),"GB2312");
System.out.println(result);
}while(rs.next());
}
}
}catch(SQLException ex) {
System.out.println("SQLException:");
while(ex!=null) {
System.out.println("Message:"+ex.getMessage());
ex=ex.getNextException();
}
}catch(Exception e) {
System.out.println("IOException");
}
}
}聽
JAVA涓庢暟鎹簱榪炴帴鏂規硶錛堜簩錛?/strong>
鐜板湪浠嬬粛絎簩縐嶆柟娉曪紝鐢ㄥ叧鍘傚晢鎻愪緵鐨勭浉搴旈┍鍔ㄧ▼搴忔潵榪炴帴銆?
榪欑瀹炵幇鏂規硶鏄洿鎺ヤ嬌鐢ㄦ暟鎹簱鍘傚晢鎻愪緵鐨勭敤涓撶敤鐨勭綉緇滃崗璁垱寤虹殑椹卞姩紼嬪簭錛岄氳繃瀹冨彲浠ョ洿鎺ュ皢JDBC API璋冪敤杞崲涓虹洿鎺ョ綉緇滆皟鐢ㄣ傝繖縐嶈皟
鐢ㄦ柟寮忎竴鑸ц兘姣旇緝濂斤紝鑰屼笖涔熸槸瀹炵敤涓渶綆鍗曠殑鏂規硶銆傚洜涓哄畠姝ラ渶瑕佸畨瑁呭叾浠栫殑搴撴垨涓棿浠躲傚嚑涔庢墍鏈夌殑鏁版嵁搴撳巶鍟嗛兘涓轟粬浠殑鏁版嵁搴撴彁渚?/p>
浜嗚繖縐嶆暟鎹簱鎻愪緵浜嗚繖縐岼DBC椹卞姩紼嬪簭錛屼篃鍙互浠庣涓夋柟鍘傚晢鑾峰緱榪欎簺椹卞姩紼嬪簭銆?
浠庣綉鍧http://industry.Java.sun.com/products/jdbc/drivers/鍙互鐪嬪埌鎵鏈夋湁鐢ㄧ殑椹卞姩紼嬪簭鐨勬竻鍗曘傚叾緇撴灉濡傚浘鎵紺猴細
搴旂敤紼嬪簭---JDBC API---椹卞姩紼嬪簭---鏁版嵁婧?
榪欓噷棣栧厛瑕佸畨瑁匤DBC鐨勯┍鍔ㄧ▼搴忥紝鎺ㄨ崘SP2鐗堟湰鐨勶紝鍙粠寰蔣緗戠珯涓婁笅杞?
http://www.microsoft.com/downloads/details.aspx?FamilyID=9f1874b6-f8e1-4bd6-947c-0fc5bf05bf71&DisplayLang=en 涓嬭澆鏈涓嬮潰鐨?/p>
SETUP.EXE
榪欎釜椹卞姩紼嬪簭瑕侀厤鍚圫QL SERVER2000 SP3A錛岀浉搴斾笅杞経RL涓?
http://www.microsoft.com/china/sql/downloads/sp3.asp 涓嬭澆 chs_sql2ksp3.exe
濡傛灉鐢↗AVA SDK鐩存帴緙栬瘧榪愯鐨勮瘽闇瑕佽緗幆澧冨彉閲忥紝灝嗗畨瑁呭ソ鐨凧DBC椹卞姩閲岄潰鐨凩IB涓変釜鏂囦歡璁劇疆涓虹幆澧冨彉閲忥細
classpath錛?
D:\program files\Microsoft SQL Server\jdbc\lib\msbase.jar;
D:\program files\Microsoft SQL Server\jdbc\lib\mssqlserver.jar;
D:\program files\Microsoft SQL Server\jdbc\lib\msutil.jar;
瀹夎鍗沖彲鐢ㄥ井杞殑椹卞姩紼嬪簭榪炴帴鏁版嵁搴撲簡錛岀浉搴斾唬鐮佷笌鍓嶉潰鍩烘湰鐩稿悓錛?
import java.sql.*;
import java.io.*;
public class DBColumn {
public static void main(String[] args) {
Connection con=null;
Statement sm=null;
String command=null;
ResultSet rs=null;
String tableName=null;
String cName=null;
String result=null;
BufferedReader input=new BufferedReader(new InputStreamReader(System.in));
try
{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
System.out.println("椹卞姩紼嬪簭宸插姞杞?);
//SQL SERVER鐨勭櫥闄嗘柟寮忓繀欏諱負浣跨敤SQL SERVER瀵嗙爜鐧婚檰璁よ瘉鏂瑰紡
con=DriverManager.getConnection("jdbc:microsoft:sqlserver://SERVERNAME:1433","USER","PASSWORD");
con.setCatalog("GoodsSupply");
System.out.println("OK,鎴愬姛榪炴帴鍒版暟鎹簱");
}catch(Exception ex) {
ex.printStackTrace();
}
try
{
sm=con.createStatement();
System.out.println("杈撳叆琛ㄥ悕");
tableName=input.readLine();
while(true) {
System.out.println("杈撳叆鍒楀悕(涓虹┖鏃剁▼搴忕粨鏉?:");
cName=input.readLine();
if(cName.equalsIgnoreCase(""))
break;
command="select "+cName+" from "+tableName;
rs=sm.executeQuery(command);
if(!rs.next())
System.out.println("琛ㄥ悕鎴栧垪鍚嶈緭鍏ユ湁璇?);
else {
System.out.println("鏌ヨ緇撴灉涓?");
do
{
result=rs.getString(cName);
//result=new String(result.getBytes("ISO-8859-1"),"GB2312");
System.out.println(result);
}while(rs.next());
}
}
}catch(Exception ex) {
ex.printStackTrace();
}
}
}
聽
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽JAVA涓庢暟鎹簱榪炴帴鏂規硶錛堜笁錛?img height="19" src="http://www.tkk7.com/Emoticons/thumbs_down.gif" width="19" border="0" />
鏈鍚庣粰鍑篔AVA榪炴帴鍏朵粬鏁版嵁搴撶殑鍏抽敭浠g爜錛?/p>
1銆丱racle8/8i/9i鏁版嵁搴擄紙thin妯″紡錛壜犅犅?
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();聽聽聽
String聽 url="jdbc:oracle:thin:@localhost:1521:orcl";聽聽聽
//orcl涓烘暟鎹簱鐨凷ID聽聽聽
String聽 user="test";聽聽聽
String聽 password="test";聽聽聽
Connection聽 conn=聽 DriverManager.getConnection(url,user,password);聽聽聽
聽
2銆丏B2鏁版嵁搴撀犅犅?
Class.forName("com.ibm.db2.jdbc.app.DB2Driver聽 ").newInstance();聽聽聽
String聽 url="jdbc:db2://localhost:5000/sample";聽聽聽
//sample涓轟綘鐨勬暟鎹簱鍚嵚犅犅?
String聽 user="admin";聽聽聽
String聽 password="";聽聽聽
Connection聽 conn=DriverManager.getConnection(url,user,password);聽聽聽聽
聽
3銆丼ybase鏁版嵁搴撀犅犅?
Class.forName("com.sybase.jdbc.SybDriver").newInstance();聽聽聽
String聽 url聽 ="聽 jdbc:sybase:Tds:localhost:5007/myDB";聽聽聽
//myDB涓轟綘鐨勬暟鎹簱鍚嵚犅犅?
Properties聽 sysProps聽 =聽 System.getProperties();聽聽聽
SysProps.put("user","userid");聽聽聽
SysProps.put("password","user_password");聽聽聽
Connection聽 conn=聽 DriverManager.getConnection(url,聽 SysProps);聽聽聽
聽
4銆両nformix鏁版嵁搴撀犅犅?
Class.forName("com.informix.jdbc.IfxDriver").newInstance();聽聽聽
String聽 url聽 =聽聽聽
"jdbc:informix-sqli://123.45.67.89:1533/myDB:INFORMIXSERVER=myserver;聽聽聽
user=testuser;password=testpassword";聽聽聽
//myDB涓烘暟鎹簱鍚嵚犅犅?
Connection聽 conn=聽 DriverManager.getConnection(url);聽聽聽
聽
5銆丮ySQL鏁版嵁搴撀犅犅?
Class.forName("org.gjt.mm.mysql.Driver").newInstance();聽聽聽
String聽 url聽 ="jdbc:mysql://localhost/myDB?user=soft&password=soft1234&useUnicode=聽
true&characterEncoding=8859_1"聽聽聽
//myDB涓烘暟鎹簱鍚嵚犅犅?
Connection聽 conn=聽 DriverManager.getConnection(url);聽聽聽
聽
6銆丳ostgreSQL鏁版嵁搴撀犅犅?
Class.forName("org.postgresql.Driver").newInstance();聽聽聽
String聽 url聽 ="jdbc:postgresql://localhost/myDB"聽聽聽
//myDB涓烘暟鎹簱鍚嵚犅犅?
String聽 user="myuser";聽聽聽
String聽 password="mypassword";聽聽聽
Connection聽 conn=聽 DriverManager.getConnection(url,user,password);