java對sql
A. java中怎麼連接sql資料庫
java中使用jdbc連接 server資料庫步驟:
1.JDBC連接SQL Server的驅動安裝 ,前兩個是屬於資料庫軟體,正常安裝即可(注意資料庫登陸不要使用windows驗證)
<1> 將JDBC解壓縮到任意位置,比如解壓到C盤program files下面,並在安裝目錄里找到sqljdbc.jar文件,得到其路徑開始配置環境變數
在環境變數classpath 後面追加 C:\Program Files\Microsoft SQL Server2005 JDBC Driver\sqljdbc_1.2\enu\sqljdbc.jar
<2> 設置SQLEXPRESS伺服器:
a.打開SQL Server Configuration Manager -> SQLEXPRESS的協議 -> TCP/IP
b.右鍵單擊啟動TCP/IP
c.雙擊進入屬性,把IP地址中的IP all中的TCP埠設置為1433
d.重新啟動SQL Server 2005服務中的SQLEXPRESS伺服器
e.關閉SQL Server Configuration Manager
<3> 打開 SQL Server Management Studio,連接SQLEXPRESS伺服器, 新建資料庫,起名字為sample
<4> 打開Eclipse
a.新建工程-> Java -> Java project,起名為Test
b.選擇eclipse->窗口->首選項->Java->installed JRE 編輯已經安裝好的jdk,查找目錄添加sqljdbc.jar
c.右鍵單擊目錄窗口中的Test, 選擇Build Path ->Configure Build Path..., 添加擴展jar文件,即把sqljdbc.jar添加到其中
<5> 編寫Java代碼來測試JDBC連接SQL Server資料庫
B. 關於在java中使用sql代碼
mport java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
public class ConnDB
{
public static void main(String[] args)
{
{
//我這里用mysql資料庫
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/mytest";
Connection conn = DriverManager.getConnection(url, "root", "123");
String sql = "select * from user limit ?,?";//這里沒有括弧
PreparedStatement ps = conn.prepareStatement(sql);
ps.setInt(1, 1);//為問號賦值
ps.setInt(2, 3);
ResultSet rs = ps.executeQuery();
while(rs.next())
{
System.out.println(rs.getString(2));
}
rs.close();
ps.close();
conn.close();
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
希望對你有幫助
C. java 中使用sql語句
import java.sql.*;
/*
* 新建一個工程,用下面的main()函數代替新建工程里的main()函數
*/
public static void main(String[] args) {
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@172.19.16.15:1521:common";
String user = "cvbom6";
String pwd = "dcvbom6";
Connection conn = DriverManager.getConnection(url, user, pwd);
// renturn conn;
Statement stmt = conn.createStatement();
ResultSet rs = stmt
.executeQuery("select max(t.id) from ty_student t");
while (rs.next()) {
String a = rs.getString(1);
System.out.println(a);
}
} catch (Exception e) {
e.printStackTrace();
}
}
D. java向sql中添加
import java.sql.*;
class DB()
{
Connection con;
public DB(){
try{
Class.forName(com.microsoft.jdbc.sqlserver.SQLServerDriver)//動態載入驅動類;
con=DriverManager.getConnection(jdbc:microsoft:sqlserver://localhost:1433;databasename="資料庫名稱","username","password")//鏈接資料庫;
}
}
public boolean insert(要插入的參數)
{
try{
PreparedStatement pstmt=con.prepareStatement("insert into [表名] values(?,?,?)");//values(?,?,?)和要資料庫的欄位對應
pstmt.setString(1,...);
....
pstmt.excuteUpdate();//執行插入
return ture;
}catch(Exception e){e.printStrackTrace();return false;}
}
}
希望對你有幫助
E. 請問在java中怎麼向sql語句傳參數啊
你連資料庫是通過JDBC連接的嗎,有個參數可以傳遞過去的
PreparedStatement ps =null;ResultSet rs =null;try{
ps = conn.prepareStatement("SELECT * FROM table
WHERE name = ?");
ps.setString(1, "hello");
這個「?」相當於佔位符,回setString(1, "hello");就是要傳遞答的參數。
F. Java如何對sql語句進行轉義
不需要轉義,因為sql是預編譯的
G. 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(); } } } 來源:考試大-計算機等級考試
H. java中的sql語句
是的,用的是oracle的序列,oracle特有的序列 SEQUENCE 。
在oracle中sequence就是所謂的序列號,每次取的時候它會自動增加,一般用在需要按序列號排序的地方。
1、Create Sequence
你首先要有CREATE SEQUENCE或者CREATE ANY SEQUENCE許可權,
CREATE SEQUENCE emp_sequence
INCREMENT BY 1 -- 每次加幾個
START WITH 1 -- 從1開始計數
NOMAXVALUE -- 不設置最大值
NOCYCLE -- 一直累加,不循環
CACHE 10;
一旦定義了emp_sequence,你就可以用CURRVAL,NEXTVAL
CURRVAL=返回 sequence的當前值
NEXTVAL=增加sequence的值,然後返回 sequence 值
比如:
emp_sequence.CURRVAL
emp_sequence.NEXTVAL
可以使用sequence的地方:
- 不包含子查詢、snapshot、VIEW的 SELECT 語句
- INSERT語句的子查詢中
- NSERT語句的VALUES中
- UPDATE 的 SET中
可以看如下例子:
INSERT INTO emp VALUES
(empseq.nextval, 'LEWIS', 'CLERK',7902, SYSDATE, 1200, NULL, 20);
SELECT empseq.currval FROM DUAL;
但是要注意的是:
- 第一次NEXTVAL返回的是初始值;隨後的NEXTVAL會自動增加你定義的INCREMENT BY值,然後返回增加後的值。CURRVAL 總是返回當前SEQUENCE的值,但是在第一次NEXTVAL初始化之後才能使用CURRVAL,否則會出錯。一次NEXTVAL會增加一次SEQUENCE的值,所以如果你在同一個語句裡面使用多個NEXTVAL,其值就是不一樣的。明白?
- 如果指定CACHE值,ORACLE就可以預先在內存裡面放置一些sequence,這樣存取的快些。cache裡面的取完後,oracle自動再取一組到cache。 使用cache或許會跳號, 比如資料庫突然不正常down掉(shutdown abort),cache中的sequence就會丟失. 所以可以在create sequence的時候用nocache防止這種情況。
2、Alter Sequence
你或者是該sequence的owner,或者有ALTER ANY SEQUENCE 許可權才能改動sequence. 可以alter除start至以外的所有sequence參數.如果想要改變start值,必須 drop sequence 再 re-create .
Alter sequence 的例子
ALTER SEQUENCE emp_sequence
INCREMENT BY 10
MAXVALUE 10000
CYCLE -- 到10000後從頭開始
NOCACHE ;
影響Sequence的初始化參數:
SEQUENCE_CACHE_ENTRIES =設置能同時被cache的sequence數目。
可以很簡單的Drop Sequence
DROP SEQUENCE order_seq;
I. Java語言中sql語句
import java.sql.* ;
public class testDB
{
public static void main(String []args)
{
String DBDRIVER = "sun.jdbc.odbc.JdbcOdbcDriver";
String DBURL = "jdbc:odbc:ttt";
String sql = "CREATE TABLE aTable(colum1 varchar(20) ,colum2 integer);" ;
PreparedStatement pstmt = null ;
Connection conn = null ;
try
{
Class.forName(DBDRIVER) ;
conn = DriverManager.getConnection(DBURL) ;
pstmt = conn.prepareStatement(sql) ;
pstmt.execute() ;
pstmt.close() ;
conn.close() ;
}
catch (Exception e)
{}
}
};
J. java中如何執行原生的sql
採用JDBC訪問資料庫的基本步驟:
A.載入JDBC驅動程序
Class.forName("com.mysql.jdbc.Driver");
B.定義連接URL
staticfinalStringUSER="root";
staticfinalStringPASS="pwd123456";
System.out.println("Connectingtodatabase...");
C.建立連接
conn=DriverManager.getConnection(DB_URL,USER,PASS);
D.創建Statement對象
stmt=conn.createStatement();
E.執行查詢或版更新(這里寫你的sql)
Stringsql="DELETEFROMEmployees";
F.結果處權理
ResultSetrs=stmt.executeUpdate(sql);
G.關閉連接
rs.close();
stmt.close();
conn.close();