Ⅰ java與sql怎麼實現對接
設置 Classpath JDBC 驅動程序並未包含在 Java SDK 中。因此,如果要使用該驅動程序,必須將 classpath 設置為包含 sqljdbc.jar 文件。如果 classpath 缺少 sqljdbc.jar 項,應用程序將引發「找不到類」的常見異常。 sqljdbc.jar 文件的安裝位置如下: <安裝目錄>\sqljdbc_<版本>\<語言>\sqljdbc.jar 下面是用於 Windows 應用程序的 CLASSPATH 語句實例: CLASSPATH =.;%ProgramFiles%\sqljdbc_1.2\chs\sqljdbc.jar 設置SQL Server伺服器 我使用的是SQL Server 2005標准版SP2,這些都默認即可,一般不用配置。如果需要配置埠請看下面。 1、「開始」→「程序」→「Microsoft SQL Server 2005」→「配置工具」→「SQL Server 配置管理器」→「SQL Server 2005 網路配置」→「MSSQLSERVER 的協議」 2、如果「TCP/IP」沒有啟用,右鍵單擊選擇「啟動」。 3、雙擊「TCP/IP」進入屬性設置,在「IP 地址」里,可以配置「IPAll」中的「TCP 埠」,默認為1433。 4、重新啟動SQL Server或者重啟計算機。 建議重啟電腦。 在Eclipse中測試 1、打開Eclipse,「文件」→「新建」→「項目」→「Java 項目」,項目名為Test 2、在Eclipse中,選擇「窗口」→「首選項...」→「Java」→「已安裝的 JRE」,選擇已安裝的 JRE,點擊「編輯」→「添加外部」,選擇%ProgramFiles%\sqljdbc_1.1\chs\sqljdbc.jar 3、在Test項目的「JRE 系統庫」中可以看見sqljdbc.jar,如果沒有可以右鍵單擊項目Test→「構建路徑」→「配置構建路徑...」→「Java 構建路徑」→「庫」→「添加外部 JAR...」,選擇%ProgramFiles%\sqljdbc_1.1\chs\sqljdbc.jar 4、編寫Java代碼,如下: import java.sql.*; public class Test { public static void main(String[] srg) { String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; //載入JDBC驅動 String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=test"; //連接伺服器和資料庫test String userName = "sa"; //默認用戶名 String userPwd = "123456"; //安裝sql server 2005時的密碼 Connection dbConn; try { Class.forName(driverName); dbConn = DriverManager.getConnection(dbURL, userName, userPwd); System.out.println("Connection Successful!"); //如果連接成功 控制台輸出Connection Successful! } catch (Exception e) { e.printStackTrace(); } } } 來源:考試大-計算機等級考試
Ⅱ 如何使用 Java 實現對比兩個 sql 文件
List sqlFileList = new ArrayList();從文件讀放內容到按分號放到sqlFileList public List readSqlFiles(List fileNameList) { List sqlList = new ArrayList(); for (String fileName : fileNameList) { File myFile = new File(fileName); if (!myFile.exists()) { System.err.println("Can't Find " + fileName); continue; } StringBuffer temp = new StringBuffer(); try { BufferedReader in = new BufferedReader(new FileReader(myFile)); String str; while ((str = in.readLine()) != null) { temp.append(str); } in.close(); } catch (IOException e) { e.getStackTrace(); } String sqls[] = temp.toString().split(";"); for (String sql : sqls) { sqlList.add(sql); } } return sqlList; }然後一句句的執行for (String sql : sqlList) {pstmt = con.prepareStatement(sql, ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);pstmt.execute();}
Ⅲ java如何執行sql語句
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class xxxx {
public static void main(String[] args) {
Connection con = null ;
Statement stmt = null ;
try {
Class.forName("com.mysql.jdbc.Driver"); //mysql為例 不一樣的資料庫所需的驅動包不一樣 連接語句略有不同
con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/資料庫名", "root", "密碼");
stmt = con.createStatement();
String sql = "insert into info values ('用戶', 'mima', 'piapiapia~')";
stmt.executeUpdate(sql);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
if(stmt != null) {
stmt.close();
stmt = null;
}
if (con != null) {
con.close();
con = null;
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
Ⅳ 如何用java語言中如何執行sql查詢語句
使用jdbc技術,首先導入連接資料庫的jar包,聲明載入的類名,獲取連接,進行查詢,如:
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl", "scott", "tiger");
Statement sta = conn.createStatement();
ResultSet rs = sta.executeQuery("select * from tablename");
Ⅳ java里怎麼實現sql嵌套查詢
java裡面要實現sql嵌套查詢的話,如果是javaweb項目,是可以使用hibernate框架提供的直接執行sql語句的方式來實現這樣的功能.
Ⅵ JAVA如何執行SQL語句
首先要根據安裝的資料庫,如SQL SERVER或者MySQL等獲取資料庫的連接。 資料庫的連接可通過JDBC-ODBC的方式,或者通過直接使用資料庫開發商提供的資料庫連接工具包進行操作。具體代碼可google。 在代碼中獲得資料庫連接句柄之後,就可以根據對應的資料庫操作API進行資料庫操作,也包括你自己拼裝的SQL語句。
Ⅶ java連接sql資料庫。實現增刪改查怎麼寫。誰有實例
java連接資料庫,你可以用一些框架,比如hibernate,iBATIS等,這樣方便一點,否則你就用JDBC吧,自己寫sql語句:
JDBC連接資料庫
•創建一個以JDBC連接資料庫的程序,包含7個步驟:
1、載入JDBC驅動程序:
在連接資料庫之前,首先要載入想要連接的資料庫的驅動到JVM(Java虛擬機),
這通過java.lang.Class類的靜態方法forName(String className)實現。
例如:
try{
//載入MySql的驅動類
Class.forName("com.mysql.jdbc.Driver") ;
}catch(ClassNotFoundException e){
System.out.println("找不到驅動程序類 ,載入驅動失敗!");
e.printStackTrace() ;
}
成功載入後,會將Driver類的實例注冊到DriverManager類中。
2、提供JDBC連接的URL
•連接URL定義了連接資料庫時的協議、子協議、數據源標識。
•書寫形式:協議:子協議:數據源標識
協議:在JDBC中總是以jdbc開始
子協議:是橋連接的驅動程序或是資料庫管理系統名稱。
數據源標識:標記找到資料庫來源的地址與連接埠。
例如:(MySql的連接URL)
jdbc:mysql:
//localhost:3306/test?useUnicode=true&characterEncoding=gbk ;
useUnicode=true:表示使用Unicode字元集。如果characterEncoding設置為
gb2312或GBK,本參數必須設置為true 。characterEncoding=gbk:字元編碼方式。
3、創建資料庫的連接
•要連接資料庫,需要向java.sql.DriverManager請求並獲得Connection對象,
該對象就代表一個資料庫的連接。
•使用DriverManager的getConnectin(String url , String username ,
String password )方法傳入指定的欲連接的資料庫的路徑、資料庫的用戶名和
密碼來獲得。
例如:
//連接MySql資料庫,用戶名和密碼都是root
String url = "jdbc:mysql://localhost:3306/test" ;
String username = "root" ;
String password = "root" ;
try{
Connection con =
DriverManager.getConnection(url , username , password ) ;
}catch(SQLException se){
System.out.println("資料庫連接失敗!");
se.printStackTrace() ;
}
4、創建一個Statement
•要執行SQL語句,必須獲得java.sql.Statement實例,Statement實例分為以下3
種類型:
1、執行靜態SQL語句。通常通過Statement實例實現。
2、執行動態SQL語句。通常通過PreparedStatement實例實現。
3、執行資料庫存儲過程。通常通過CallableStatement實例實現。
具體的實現方式:
Statement stmt = con.createStatement() ;
PreparedStatement pstmt = con.prepareStatement(sql) ;
CallableStatement cstmt =
con.prepareCall("{CALL demoSp(? , ?)}") ;
5、執行SQL語句
Statement介面提供了三種執行SQL語句的方法:executeQuery 、executeUpdate
和execute
1、ResultSet executeQuery(String sqlString):執行查詢資料庫的SQL語句
,返回一個結果集(ResultSet)對象。
2、int executeUpdate(String sqlString):用於執行INSERT、UPDATE或
DELETE語句以及SQL DDL語句,如:CREATE TABLE和DROP TABLE等
3、execute(sqlString):用於執行返回多個結果集、多個更新計數或二者組合的
語句。
具體實現的代碼:
ResultSet rs = stmt.executeQuery("SELECT * FROM ...") ;
int rows = stmt.executeUpdate("INSERT INTO ...") ;
boolean flag = stmt.execute(String sql) ;
6、處理結果
兩種情況:
1、執行更新返回的是本次操作影響到的記錄數。
2、執行查詢返回的結果是一個ResultSet對象。
• ResultSet包含符合SQL語句中條件的所有行,並且它通過一套get方法提供了對這些
行中數據的訪問。
• 使用結果集(ResultSet)對象的訪問方法獲取數據:
while(rs.next()){
String name = rs.getString("name") ;
String pass = rs.getString(1) ; // 此方法比較高效
}
(列是從左到右編號的,並且從列1開始)
7、關閉JDBC對象
操作完成以後要把所有使用的JDBC對象全都關閉,以釋放JDBC資源,關閉順序和聲
明順序相反:
1、關閉記錄集
2、關閉聲明
3、關閉連接對象
if(rs != null){ // 關閉記錄集
try{
rs.close() ;
}catch(SQLException e){
e.printStackTrace() ;
}
}
if(stmt != null){ // 關閉聲明
try{
stmt.close() ;
}catch(SQLException e){
e.printStackTrace() ;
}
}
if(conn != null){ // 關閉連接對象
try{
conn.close() ;
}catch(SQLException e){
e.printStackTrace() ;
}
}
Ⅷ java實現sql連接和查詢的代碼
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;
public class DBCon {
//資料庫驅動對象
public static final String DRIVER="oracle.jdbc.driver.OracleDriver";
//資料庫連接地址(資料庫名)
public static final String URL="jdbc:oracle:thin:@localhost:1521:orcl";
//登陸名
public static final String USER="FM";
//登陸密碼
public static final String PWD="FM";
//創建資料庫連接對象
private Connection con=null;
//創建資料庫預編譯對象
private PreparedStatement ps=null;
//創建結果集
private ResultSet rs=null;
//創建數據源對象
public static DataSource source=null;
// //靜態代碼塊
// static{
//
// //初始化配置文件context
// try {
// Context context=new InitialContext();
// source=(DataSource)context.lookup("java:comp/env/jdbc/webmessage");
// } catch (Exception e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
//
//
// }
/**
* 獲取資料庫連接
*/
public Connection getCon(){
try {
Class.forName(DRIVER);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
con=DriverManager.getConnection(URL,USER,PWD);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return con;
}
// /**
// * 獲取資料庫連接
// */
// public Connection getCon(){
//
// try {
// con=source.getConnection();
// } catch (SQLException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
//
// return con;
// }
/**
* 關閉所有資源
*/
public void closeAll(){
if(rs!=null)
try {
rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(ps!=null)
try {
ps.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(con!=null)
try {
con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
* @param sql資料庫更新(增、刪、改) 語句
* @param pras參數列表(可傳,可不傳,不傳為NULL,以數組形式存在)
* @return 返回受影響都行數
*/
public int update(String sql,String... pras){
int resu=0;
con=getCon();
try {
ps=con.prepareStatement(sql);
for(int i=0;i<pras.length;i++){
ps.setString(i+1,pras[i]);
}
resu=ps.executeUpdate();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally{
closeAll();
}
return resu;
}
/**
* @param sql資料庫查詢語句
* @param pras參數列表(可傳,可不傳,不傳為NULL,以數組形式存在)
* @return 返回結果集
*/
public ResultSet query(String sql,String... pras){
con=getCon();
try {
ps=con.prepareStatement(sql);
if(pras!=null)
for(int i=0;i<pras.length;i++){
ps.setString(i+1, pras[i]);
}
rs=ps.executeQuery();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return rs;
}
}
Ⅸ 用JAVA如何實現執行SQL腳本文件
1.在資料庫編寫自定義函數,存儲過程,在java中調用
2.直接在java中寫sql語句,使用jdbc查詢
JDBC, 全稱為Java DataBase Connectivity standard, 它是一個面向對象的應用程序介面(API), 通過它可訪問各類關系資料庫。JDBC也是java核心類庫的一部分。
JDBC的最大特點是它獨立於具體的關系資料庫。與ODBC (Open Database Connectivity)類似, JDBC API 中定義了一些Java類分別用來表示與資料庫的連接(connections), SQL語句(SQL statements), 結果集(result sets)以及其它的資料庫對象, 使得Java程序能方便地與資料庫交互並處理所得的結果。
Ⅹ java如何實現sql連接和查詢的代碼
import java.sql.Connection。