A. 在java.sql包含哪些介面
(1) Statement —— SQL語句執行介面
Statement介面代表了一個資料庫的狀態,在向資料庫發送相應的SQL語句時,都需要創建Statement介面或者PreparedStatement介面。在具體應用中,Statement主要用於操作不帶參數(可以直接運行)的SQL語句,比如刪除語句、添加或更新。
(2) PreparedStatement —— SQL語句預編譯介面
PreparedStatement也執行相應的SQL語句。它繼承於Statement介面,除了具備Statement所有功能,還可以對SQL語句進行預處理。
主要方法:
① ResultSet executeQuery() throws SQLException
在此 PreparedStatement 對象中執行 SQL 查詢,並返回該查詢生成的 ResultSet 對象。從不返回 null;如果發生資料庫訪問錯誤或者 SQL 語句沒有返回ResultSet 對象則拋出SQLException異常。
② int executeUpdate() throws SQLException
在此 PreparedStatement 對象中執行 SQL 語句,該語句必須是一個 SQL INSERT、UPDATE 或 DELETE 語句;或者是一個什麼都不返回的 SQL 語句,比如 DDL 語句。
返回值int表示影響的記錄條數,一條都沒有則返回0;
③ boolean execute()throws SQLException
在此 PreparedStatement 對象中執行 SQL 語句,該語句可以是任何種類的 SQL 語句。
有結果集則返回true, 沒有結果集則返回false;
④各種set方法
將指定位置的參數設置為指定的類型。比如ps.setString(3, 「tarena」);
(3) ResultSet —— 結果集操作介面
ResultSet介面是查詢結果集介面,它對返回的結果集進行處理。ResultSet是程序員進行JDBC操作的必需介面。
(4) ResultSetMetaData —— 元數據操作介面
ResultSetMetaData是對元數據進行操作的介面,可以實現很多高級功能。Hibernate運行資料庫的操作,大部分都是通過此介面。可以認為,此介面是SQL查詢語言的一種反射機制。ResultSetMetaData介面可以通過數組的形式,遍歷資料庫的各個欄位的屬性,對於我們開發者來說,此機制的意義重大。
JDBC通過元數據(MetaData)來獲得具體的表的相關信息,例如,可以查詢資料庫中有哪些表,表有哪些欄位,以及欄位的屬性等。MetaData中通過一系列getXXX將這些信息返回給我們。
資料庫元數據 Database MetaData 使用connection.getMetaData()獲得
MetaData包括: 包含了關於資料庫整體元數據信息。
結果集元數據 Result Set MetaData 使用resultSet.getMetaData()獲得
比較重要的是獲得表的列名、列數等信息。
元數據對象:ResultSetMetaData meta = rs.getMetaData();
欄位個數:meta.getColomnCount();
欄位名字:meta.getColumnName();
欄位JDBC類型:meta.getColumnType();
欄位資料庫類型:meta.getColumnTypeName();
B. 用java連接mysql實現對表中的數據查找,插入,修改等功能,
你學怎麼連接資料庫了嗎?
我現在用的是JDBCODBC橋連接的 是微軟子自帶的連接方式 其中的book是我在自己電腦上創建的資料庫名字
import java.sql.*;
public class Access {
public static void main(String[] args) {
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch (ClassNotFoundException e)
{
System.out.println("SQL SERVEREXCEPTION:"+e.getMessage());
}
try {
Connection cn=DriverManager.getConnection("jdbc:odbc:book");
Statement st=cn.createStatement();
String sql="select * from authors";
String sql1="insert into authors(firstName,lastName) values('Machel','Scofield')";
st.executeUpdate(sql1);
ResultSet rs=st.executeQuery(sql);
while(rs.next())
{
System.out.println("ID:"+rs.getObject(1)+"\tfristName:"+rs.getObject(2)+"\tlastName:"+rs.getObject(3));
}
st.cancel();
cn.close();
}
catch (SQLException e)
{
e.printStackTrace();
}
}
}
C. java.sql的sql包內容
java.sql 包中包含用於以下方面的 API:
通過 DriverManager 實用程序建立與資料庫的連接
DriverManager 類:建立與驅動程序的連接
SQLPermission 類:代碼在 Security Manager(比如 applet)中運行時提供許可權,試圖通過 DriverManager 設置一個記錄流
Driver 介面:提供用來注冊和連接基於 JDBC 技術(「JDBC驅動程序」)的驅動程序的 API,通常僅由 DriverManager 類使用
DriverPropertyInfo 類:提供 JDBC 驅動程序的屬性,不是供一般用戶使用的向資料庫發送 SQL 語句
Statement:用於發送基本 SQL 語句
PreparedStatement:用於發送准備好的語句或基本 SQL 語句(派生自 Statement)
CallableStatement:用於調用資料庫存儲過程(派生自 PreparedStatement)
Connection 介面:提供創建語句以及管理連接及其屬性的方法
Savepoint:在事務中提供保存點
獲取和更新查詢的結果
ResultSet 介面
SQL 類型到 Java 編程語言中的類和介面的標准映射關系
Array 介面:SQL ARRAY 的映射關系
Blob 介面:SQL BLOB 的映射關系
Clob 介面:SQL CLOB 的映射關系
Date 類:SQL DATE 的映射關系
NClob 介面:SQL NCLOB 的映射關系
Ref 介面:SQL REF 的映射關系
RowId 介面:SQL ROWID 的映射關系
Struct 介面:SQL STRUCT 的映射關系
SQLXML 介面:SQL XML 的映射關系
Time 類:SQL TIME 的映射關系
Timestamp 類:SQL TIMESTAMP 的映射關系
Types 類:提供用於 SQL 類型的常量
自定義映射 SQL 用戶定義類型 (UDT) 到 Java 編程語言中的類
SQLData 介面:指定 UDT 到此類的一個實例的映射關系
SQLInput 介面:提供用來從流中讀取 UDT 屬性的方法
SQLOutput 介面:提供用來將 UDT 屬性寫迴流中的方法
元數據
DatabaseMetaData 介面:提供有關資料庫的信息
ResultSetMetaData 介面:提供有關 ResultSet 對象的列的信息
ParameterMetaData 介面:提供有關 PreparedStatement 命令的參數的信息
異常
SQLException:由大多數方法在訪問數據出問題時拋出,以及因為其他原因由其他一些方法拋出
SQLWarning:為了指示一個警告而拋出
DataTruncation:為了指示數據可能已經被截斷而拋出
BatchUpdateException:為了指示並不是批量更新中的所有命令都成功執行而拋出
D. Java裡面的JDBC是什麼意思啊
Java資料庫連接是Java語言中用來規范客戶端程序如何來訪問資料庫的應用程序介面,提供了諸如查詢和更新資料庫中數據的方法。JDBC也是Sun Microsystems的商標。我們通常說的JDBC是面向關系型資料庫的。
這種類型的驅動把所有JDBC的調用傳遞給ODBC,再讓後者調用資料庫本地驅動代碼(也就是資料庫廠商提供的資料庫操作二進制代碼庫,例如Oracle中的oci.dll)。
API概述
JDBC API主要位於JDK中的java.sql包中(之後擴展的內容位於javax.sql包中),主要包括(斜體代表介面,需驅動程序提供者來具體實現):
DriverManager:負責載入各種不同驅動程序(Driver),並根據不同的請求,向調用者返回相應的資料庫連接(Connection)。Driver:驅動程序,會將自身載入到DriverManager中去,並處理相應的請求並返回相應的資料庫連接(Connection)。Connection:資料庫連接,負責與進行資料庫間通訊,SQL執行以及事務處理都是在某個特定Connection環境中進行的。
可以產生用以執行SQL的Statement。Statement:用以執行SQL查詢和更新(針對靜態SQL語句和單次執行)。PreparedStatement:用以執行包含動態參數的SQL查詢和更新(在伺服器端編譯,允許重復執行以提高效率)。CallableStatement:
用以調用資料庫中的存儲過程。SQLException:代表在資料庫連接的建立和關閉和SQL語句的執行過程中發生了例外情況(即錯誤)。
E. 誰能給我一份關於Package java.sql 的中文文檔啊
提供了訪問和處理存儲在數據源中存儲的數據(通常是一個關系的API
資料庫)使用的JavaTM編程語言
F. java中java.sql.Date
java.sql.Time 和 java.sql.Date 都沒有不接受任何參數的構造函數, 分別接收的是 Long型的 Time 和 Date .
比如!
Date date = new Date(System.currentTimeMillis());
System.out.println(date);
得到當前時間!
G. java 中常用五大包有哪些
java.sql包
java.lang.String
java.io包
java.util包
java.lang.Object
介面:
1.java.util.List<E>
2.java.util.Map<E>
3.java.util.Iterator<E>
4.java.sql.CallableStatement
5.java.lang.Comparable<T>