java怎么執行SQL語句 急
public Integer getID(int seqNo){
Integer id=null;
try{
//獲取連接 。這里我調用的是我寫好的一個方法,你也可以通過別的途徑實現。
Connection connection=*nection();
String sql="select ID from A where SEQ_NO=?";
PreparedStatement psmt=*eStatement(sql);
*(1, seqNo);
ResultSet rs=*eQuery();
if(*()){
id=*("ID");
}
}catch(SQLException sqle){
*tackTrace();
}finally{
//這里還需要依次關閉ResultSet,PreparedStatement,Connection以釋放資源。
}
return id;
}
建議你學一下JDBC,這個技術知識就是Java訪問數據庫的API。
在JAVA中,使用JDBC訪問數據庫時可以執行SQL語句完成對數據庫
B Statement1、創建 Statement 對象 建立了到特定數據庫的連接之后,就可用該連接發送 SQL 語句。
Statement 對象用 Connection 的方法 createStatement 創建,如下列代碼段中所示:Connection con = *nection(url, "sunny", "");Statement stmt = *Statement(); 為了執行 Statement 對象,被發送到數據庫的 SQL 語句將被作為參數提供給 Statement 的方法:ResultSet rs = *eQuery("SELECT a, b, c FROM Table2"); 2、使用 Statement 對象執行語句 Statement 接口提供了三種執行 SQL 語句的方法:executeQuery、executeUpdate 和 execute。使用哪一個方法由 SQL 語句所產生的內容決定。
方法 executeQuery 用于產生單個結果集的語句,例如 SELECT 語句。 方法 executeUpdate 用于執行 INSERT、UPDATE 或 DELETE 語句以及 SQL DDL(數據定義語言)語句,例如 CREATE TABLE 和 DROP TABLE。
INSERT、UPDATE 或 DELETE 語句的效果是修改表中零行或多行中的一列或多列。executeUpdate 的返回值是一個整數,指示受影響的行數(即更新計數)。
對于 CREATE TABLE 或 DROP TABLE 等不操作行的語句,executeUpdate 的返回值總為零。 方法 execute 用于執行返回多個結果集、多個更新計數或二者組合的語句。
因為多數程序員不會需要該高級功能,所以本概述后面將在單獨一節中對其進行介紹。 執行語句的所有方法都將關閉所調用的 Statement 對象的當前打開結果集(如果存在)。
這意味著在重新執行 Statement 對象之前,需要完成對當前 ResultSet 對象的處理。 應注意,繼承了 Statement 接口中所有方法的 PreparedStatement 接口都有自己的 executeQuery、executeUpdate 和 execute 方法。
Statement 對象本身不包含 SQL 語句,因而必須給 *e 方法提供 SQL 語句作為參數。PreparedStatement 對象并不將 SQL 語句作為參數提供給這些方法,因為它們已經包含預編譯 SQL 語句。
CallableStatement 對象繼承這些方法的 PreparedStatement 形式。對于這些方法的 PreparedStatement 或 CallableStatement 版本,使用查詢參數將拋出 SQLException。
3、語句完成 當連接處于自動提交模式時,其中所執行的語句在完成時將自動提交或還原。語句在已執行且所有結果返回時,即認為已完成。
對于返回一個結果集的 executeQuery 方法,在檢索完 ResultSet 對象的所有行時該語句完成。對于方法 executeUpdate,當它執行時語句即完成。
但在少數調用方法 execute 的情況中,在檢索所有結果集或它生成的更新計數之后語句才完成。 概述 Statement 對象用于將 SQL 語句發送到數據庫中。
實際上有三種 Statement 對象,它們都作為在給定連接上執行 SQL 語句的包容器:Statement、PreparedStatement(它從 Statement 繼承而來)和 CallableStatement(它從 PreparedStatement 繼承而來)。它們都專用于發送特定類型的 SQL 語句: Statement 對象用于執行不帶參數的簡單 SQL 語句;PreparedStatement 對象用于執行帶或不帶 IN 參數的預編譯 SQL 語句;CallableStatement 對象用于執行對數據庫已存儲過程的調用。
Statement 接口提供了執行語句和獲取結果的基本方法。PreparedStatement 接口添加了處理 IN 參數的方法;而 CallableStatement 添加了處理 OUT 參數的方法。
有些 DBMS 將已存儲過程中的每條語句視為獨立的語句;而另外一些則將整個過程視為一個復合語句。在啟用自動提交時,這種差別就變得非常重要,因為它影響什么時候調用 commit 方法。
在前一種情況中,每條語句單獨提交;在后一種情況中,所有語句同時提交。 4、關閉 Statement 對象 Statement 對象將由 Java 垃圾收集程序自動關閉。
而作為一種好的編程風格,應在不需要 Statement 對象時顯式地關閉它們。這將立即釋放 DBMS 資源,有助于避免潛在的內存問題。
請問如果在java里執行sql語句呢
給你修改了一下//以下幾句根據數據庫*e("*Driver").newInstance(); // 加載數據庫驅動程序 String url = "jdbc:oracle:thin:@你的主機IP:1521:orcl"; // 設置連接字串 String user = "用戶名"; // 用戶名和密碼 String password = "密碼"; conn = *nection(url, user, password); // 創建數據庫連接 Statement stmt=*Statement(); //這個SQL寫上你的SQL文String sql="select * from jobs"; //執行ResultSet rs=*eQuery(sql);。
java執行SQL事務語句
*oCommit(false);
PreparedStatement pstmt1 = *eStatement(sql1);
*(1,xxxx) //根據數據庫的字段類型選擇試用setInt,setLong,setString等。
*(2,xxxxx)
*(3,xxxxx)
*(4,xxxxx)
*(5,xxxxx)
//設置完PreparedStatement
*e(sql1);
PreparedStatement pstmt2 = *eStatement(sql2);
*(1,xxxx)
*(2,xxxxx)
//設置完PreparedStatement
*eUpdate(sql2);
PreparedStatement pstmt3 = *eStatement(sql3);
*(1,xxx)
//設置完PreparedStatement
*eUpdate(sql3);
//你這里沒有用到查詢,所以不需要executeQuery(),如果需要查詢的用ResultSet去接受executeQuery()這個東西的返回值
*();
自己加個各種關閉操作和異常處理
java 執行 sql語句問題
從表結構來看,你的sql語句是有問題的,你的java程序中的sql分明使用的是變量并且這4個表字段的類型都是字符類型,所以必須用單引號 ‘’ ,再者,這個 execute方法的返回值是boolean類型,并非如你所說返回false就是沒有執行,其實這個boolean結果的含義如下: true 有結果集返回(也就是你執行的是select 查詢語句),false 沒有結果集返回(也就是你的執行是非select 查詢語句),另外,建議你在執行非select sql 語句時,使用executeUpdate() 方法,這個方法返回int類型值,是對數據庫表操作的影響行數(例如,如果成功更新10行數據,則返回10,返回0則對數據庫表沒有影響),還有建議你使用PreparedStatement 這個數據庫sql操作流,它支持參數設置,如何使用你自己查吧。
java怎么執行SQL語句 急
public Integer getID(int seqNo){ Integer id=null; try{ //獲取連接 。
這里我調用的是我寫好的一個方法,你也可以通過別的途徑實現。 Connection connection=*nection(); String sql="select ID from A where SEQ_NO=?"; PreparedStatement psmt=*eStatement(sql); *(1, seqNo); ResultSet rs=*eQuery(); if(*()){ id=*("ID"); } }catch(SQLException sqle){ *tackTrace(); }finally{ //這里還需要依次關閉ResultSet,PreparedStatement,Connection以釋放資源。
} return id; }建議你學一下JDBC,這個技術知識就是Java訪問數據庫的API。
java中執行sql插入語句怎么弄
1、Connection conn = *nection(URL,數據庫登錄名,數據庫登錄密碼);//獲得數據庫連接。
2、Statement statement = *Statement(); //訪問數據庫。
3、ResultSet resultSet = *eQuery(sql);//執行SQL語句。
Java是一門面向對象編程語言,不僅吸收了C++語言的各種優點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特征。
技術應用
1、Android應用
許多的 Android應用都是Java程序員開發者開發。雖然 Android運用了不同的JVM以及不同的封裝方式,但是代碼還是用Java語言所編寫。相當一部分的手機中都支持JAVA游戲,這就使很多非編程人員都認識了JAVA。
2、在金融業應用的服務器程序
Java在金融服務業的應用非常廣泛,很多第三方交易系統、銀行、金融機構都選擇用Java開發,因為相對而言,Java較安全[39] 。大型跨國投資銀行用Java來編寫前臺和后臺的電子交易系統,結算和確認系統,數據處理項目以及其他項目。
3、網站
Java 在電子商務領域以及網站開發領域占據了一定的席位。開發人員可以運用許多不同的框架來創建web項目,SpringMVC,Struts2.0以及frameworks。即使是簡單的 servlet,jsp和以struts為基礎的網站在政府項目中也經常被用到。
4、嵌入式領域
Java在嵌入式領域發展空間很大。在這個平臺上,只需130KB就能夠使用Java技術。
5、大數據技術
Hadoop以及其他大數據處理技術很多都是用Java,例如Apache的基于Java的HBase和Accumulo以及 ElasticSearchas。
6、高頻交易的空間
Java平臺提高了這個平臺的特性和即使編譯,他同時也能夠像 C++ 一樣傳遞數據。正是由于這個原因,Java成為的程序員編寫交易平臺的語言,因為雖然性能不比C++,但開發人員可以避開安全性,可移植性和可維護性等問題。
7、科學應用
Java在科學應用中是很好選擇,包括自然語言處理。最主要的原因是因為Java比C++或者其他語言相對其安全性、便攜性、可維護性以及其他高級語言的并發性更好。
java如何執行sql語句
import *tion; import *Manager; import *eption; import *ent; public class xxxx { public static void main(String[] args) { Connection con = null ; Statement stmt = null ; try { *e("*"); //mysql為例 不一樣的數據庫所需的驅動包不一樣 連接語句略有不同 con = *nection("jdbc:mysql://127.0.0.1:3306/數據庫名", "root", "密碼"); stmt = *Statement(); String sql = "insert into info values ('用戶', 'mima', 'piapiapia~')"; *eUpdate(sql); } catch (ClassNotFoundException e) { *tackTrace(); } catch (SQLException e) { *tackTrace(); } finally { try { if(stmt != null) { *(); stmt = null; } if (con != null) { *(); con = null; } } catch (SQLException e) { *tackTrace(); } } } } 。
轉載請注明出處華閱文章網 » java執行sql語句