當前位置:首頁 » 編程語言 » jdbc執行sql語句

jdbc執行sql語句

發布時間: 2022-08-10 00:15:45

⑴ jdbc如何執行sql函數語句(如count,sum等)

Select count (*) from dc
得加括弧

⑵ JDBC執行SQL語句使用哪些類

public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
String JDBC_DRIVER = "驅動地址";
String DB_URL = "資料庫url,即IP埠";
String USER = "資料庫賬號";
String PWD = "資料庫密碼";

try {
//注冊載入jdbc驅動
Class.forName(JDBC_DRIVER);
//打開連接
conn = DriverManager.getConnection(DB_URL,USER,PWD);
//創建執行對象
stmt = conn.createStatement();
String testUrl = "select * from project_table";
//執行sql語句
ResultSet rs = stmt.executeQuery(testUrl);
//ResultSetMetaData rsmd = rs.getMetaData();
//展開結果集
while (rs.next()) {
System.out.println(rs.getString(1));
}
rs.close();
stmt.close();
conn.close();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

⑶ J2EE使用JDBC執行SQL語句需要哪個對象

JDBC
入門
--
建立聯接
你需要做的第一事情是你與想要使用的
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(例如mysql
jdbc)

⑷ 原生jdbc執行sql的過程是什麼呢

標準的API,可以構建更高級的工具和介面,使資料庫開發人員能夠用純java API編寫資料庫應用程序。同時,JDBC也是一個品牌。使用JDBC,可以很容易地向各種關系數據發送SQL語句。換句話說,有了JDBC API,就不需要再編寫一個訪問Sybase資料庫的程序,另一個訪問Oracle資料庫的程序,或者另一個訪問Informix資料庫的程序等等。

該連接地址將由資料庫製造商提供。通常,當使用JDBC連接到資料庫時,用戶需要輸入資料庫連接的用戶名和密碼。本章使用的是mysql資料庫,因此用戶名和密碼都是“root”,用戶只有在獲得連接後才能查詢或更新資料庫。要連接到資料庫,您需要從java.sql.DriverManager請求並獲取一個Connection對象,該對象表示資料庫的連接。

⑸ jdbc中同時執行兩條查詢sql語句,獲得結果怎麼寫

step1:構造連接
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/db","root","123");

step2:構造語句
String sql = "select username,password from t_user where username=?";
PreparedStatement stmt = con.prepareStatement(sql);
stmt.setString(1, "zhangshan"); //給SQL的"?"(問號)傳值。

step3:執行查詢
ResultSet rs = stmt.executeQuery(); //rs就是SQL查詢語句返回的結果集

step4:處理結果(java 獲取SQL查詢語句返回的結果)
List list = new ArrayList();
//遍歷結果集,這樣寫就可以了,就是一個循環,有多少條記錄,這里就會循環多少次,
//一次就是一條記錄,想像一下就像一個表的一條記錄
//在這里可以做查詢出來的數據處理,可以封裝成對象之類的(就是把值給它)
if(rs.next()) { //遍歷結果集,這樣寫就可以了
User u = new User();
String username = rs.getString("username");
String address = rs.getString("password ");
u.setUsername(username);
u.setAddress(address);
list.add(u);
}
//上面這個例子意思是,把每一條記錄封裝成了一個User對象,然後這些User對象都放存入到了一個list

step4:關閉連接等

⑹ jdbc連接資料庫sqlserver後怎麼執行sql語句

首先確保SQLSERVER服務正在運行,並可以允許遠程訪問連接

然後按如下步驟進行連接
1.安裝JDBC驅動
1)下載JDBC驅動
http://www.microsoft.com/zh-cn/download/details.aspx?id=11774

2)執行sqljdbc_4.0.2206.100_chs.exe解壓驅動文件

3)拷貝以下目錄中的sqljdbc_auth.dll到Windows的System32目錄。對x64的機子,x64的dll拷到C:\Windows\System32,x86的dll拷到C:\Windows\SysWOW64目錄。
Microsoft JDBC Driver 4.0 for SQL Server\sqljdbc_4.0\chs\auth\

2.在Java程序中連接SQL Server
classpath中加上安裝好的SQL Server jdbc jar包
Microsoft JDBC Driver 4.0 for SQL Server\sqljdbc_4.0\chs\sqljdbc4.jar

連接SQL Server的JDBC代碼
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

String url = "jdbc:sqlserver://localhost:54364;databaseName=master;IntegratedSecurity=True";

Connection con = DriverManager.getConnection(url);
在SQL Server Browser服務開啟的情況下也可以通過服務名連接
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

String url = "jdbc:sqlserver://localhost\\SQLEXPRESS;databaseName=master;IntegratedSecurity=True";

Connection con = DriverManager.getConnection(url);

3.身份驗證模式

SQL Server默認使用Windows身份驗證模式,這也是官方推薦的模式,安全性更高。上面的連接例子就是採用的Windows認證。如果要使用混合認證模式,需要下載SQL Server Management Studio,並通過SQL Server Management Studio修改認證模式為混合認證模式。

SQL Server Management Studio的下載地址
http://www.microsoft.com/zh-cn/download/details.aspx?id=8961
修改SQL Server認證模式的方法
http://technet.microsoft.com/zh-cn/library/ms188670(v=sql.105).aspx

混合認證模式下,可以由資料庫進行認證,連接時需要提供用戶名和密碼

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

String url = "jdbc:sqlserver://localhost:54364;databaseName=master";

Connection con = DriverManager.getConnection(url,"user","password");

⑺ JDBC-ODBC的SQL語句

獲得一個statements對象:
statements stat=Connection.createstatements()
通過statements對象執行SQL語句:
stat.executeQuery(String sql)返回查詢的結果集。
stat.executeUpdate(String sql)返回值為int型,表示影響記錄的條數。
要通過JDBC來存取某一特定的資料庫,必須有相應的JDBC driver,它往往是由生產資料庫的廠家提供,是連接JDBC API與具體資料庫之間的橋梁。
通常,Java程序首先使用JDBC API來與JDBC Driver Manager交互,由JDBC Driver Manager載入指定的JDBC drivers, 以後就可以通過JDBC API來存取資料庫。
ODBC(Open Database Connectivity,開放資料庫互連)是微軟公司開放服務結構(WOSA,Windows Open Services Architecture)中有關資料庫的一個組成部分,它建立了一組規范,並提供了一組對資料庫訪問的標准API(應用程序編程介面)。這些API利用SQL來完成其大部分任務。ODBC本身也提供了對SQL語言的支持,用戶可以直接將SQL語句送給ODBC。
一個基於ODBC的應用程序對資料庫的操作不依賴任何DBMS,不直接與DBMS打交道,所有的資料庫操作由對應的DBMS的ODBC驅動程序完成。也就是說,不論是FoxPro、Access還是Oracle資料庫,均可用ODBC API進行訪問。由此可見,ODBC的最大優點是能以統一的方式處理所有的資料庫。
一個完整的ODBC由下列幾個部件組成:
應用程序(Application)。
ODBC管理器(Administrator)。該程序位於Windows 95控制面板(Control Panel)的32位ODBC內,其主要任務是管理安裝的ODBC驅動程序和管理數據源。
驅動程序管理器(Driver Manager)。驅動程序管理器包含在ODBC32.DLL中,對用戶是透明的。其任務是管理ODBC驅動程序,是ODBC中最重要的部件。

⑻ jdbc實現sql語句

用這個類吧.好的話,給我加加分.
import java.sql.*;
/**
* @功能: 一個JDBC的本地化API連接類,封裝了數據操作方法,只用傳一個SQL語句即可
* @作者: 李開歡
* @日期: 2007/
*/
public class ConnectionDemo {
/*
* 這里可以將常量全部放入另一個類中,以方便修改
*/
private static Connection conn;
private static Statement ps;
private static ResultSet rs;
private static final String DRIVER = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
private static final String URL = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb";
private static final String USER ="sa";
private static final String PASS = "sa";
public ConnectionDemo() {
// TODO Auto-generated constructor stub
ConnectionDemo.getConnection();
}
public static Connection getConnection(){
System.out.println("連接中...");
try {
Class.forName(ConnectionDemo.DRIVER);
conn = DriverManager.getConnection(ConnectionDemo.URL, ConnectionDemo.USER, ConnectionDemo.PASS);
System.out.println("成功連接");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return conn;
}
public static Statement getStatement(String sql){
System.out.println("執行SQL語句中...");
try {
ps = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
if(sql.substring(0, 6).equals("select")){
rs = ps.executeQuery(sql);
System.out.println("執行完查詢操作,結果已返回ResultSet集合");
}else if(sql.substring(0, 6).equals("delete")){
ps.executeUpdate(sql);
System.out.println("已執行完畢刪除操作");
}else if(sql.substring(0, 6).equals("insert")){
ps.executeUpdate(sql);
System.out.println("已執行完畢增加操作");
}else{
ps.executeUpdate(sql);
System.out.println("已執行完畢更新操作");
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return ps;
}
public static ResultSet getResultSet(){
System.out.println("查詢結果為:");
return rs;
}
public static void closeConnection(){
System.out.println("關閉連接中...");
try {
if (rs != null) {
rs.close();
System.out.println("已關閉ResultSet");
}
if (ps != null) {
ps.close();
System.out.println("已關閉Statement");
}
if (conn != null) {
conn.close();
System.out.println("已關閉Connection");
}
} catch (Exception e) {
// TODO: handle exception
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
ConnectionDemo.getConnection();
String sql = "delete from type where id = 1";
ConnectionDemo.getStatement(sql);
String sql2 = "insert into type values(1,'教學設備')";
ConnectionDemo.getStatement(sql2);
String sql1 = "select * from type";
ConnectionDemo.getStatement(sql1);
ResultSet rs = ConnectionDemo.getResultSet();
System.out.println("編號 "+"類 型");
try {
while(rs.next()){
System.out.print(" "+rs.getInt(1)+" ");
System.out.println(rs.getString(2));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
ConnectionDemo.closeConnection();
}
}

熱點內容
我的世界如何做伺服器 發布:2025-01-21 12:16:23 瀏覽:527
怎樣建立演算法 發布:2025-01-21 12:12:14 瀏覽:838
凸包的graham演算法 發布:2025-01-21 12:00:00 瀏覽:146
jsonobject轉java對象 發布:2025-01-21 12:00:00 瀏覽:306
macpython3默認 發布:2025-01-21 11:58:26 瀏覽:261
芒果伺服器是什麼意思 發布:2025-01-21 11:57:54 瀏覽:40
微信聊天伺服器錯誤什麼意思 發布:2025-01-21 11:56:13 瀏覽:460
linuxtomcat不能訪問 發布:2025-01-21 11:47:11 瀏覽:394
刷新器需要什麼配置 發布:2025-01-21 11:09:28 瀏覽:972
jedis源碼 發布:2025-01-21 11:08:24 瀏覽:890