❶ java如何獲取資料庫中所有表名
看來lz並沒有認真看api文檔啊,在介面connection中有一個getmetadata()函數,其返回值是介面databasemetadata,裡面有各種資料庫的配置信息,如是否支持空、最大連接數、用戶可以調用的所有存儲過程等,其中包括getschemas()-獲取所有模式,gettables(),獲取所有的表,根據輸入的不同參數可以獲取所有表或者其中某個模式的表,還包括表的注射等信息,getcolumns()則是獲取表的具體欄位,這些函數大多是以resultset的形式返回,和一般的jdbc使用差不多,lz慢慢研究研究吧
❷ 在Java中,如何通過在資料庫得到的結果集得到表的列數和行數
在Java中,獲得ResultSet的總行數的方法有以下幾種。
第一種:利用ResultSet的getRow方法來獲得ResultSet的總行數
Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
ResultSet rset = stmt.executeQuery("select * from yourTableName");
rset.last();
int rowCount = rset.getRow(); //獲得ResultSet的總行數
第二種:利用循環ResultSet的元素來獲得ResultSet的總行數
ResultSet rset = stmt.executeQuery("select * from yourTableName");
int rowCount = 0;
while(rset.next()) {
rowCount++;}rowCount就是ResultSet的總行數。
❸ java 怎樣取出資料庫的表
假設資料庫中的表是table ,表中的欄位對應 Student類欄位
代碼:
ArrayList<Student> list = null;//集合
Class.forName("org.sqlite.JDBC");//載入資料庫驅動
Connection conn = DriverManager.getConnection("jdbc:sqlite:sms.s3db");//鏈接資料庫,sms.s3db是資料庫名字,我用的是sqlite.
PreparedStatement ps = conn.PreparedStatement("select * from table");//創建語句對象
ResultSet rs = ps.executeQuery();//執行查詢
if(rs.next()){
Student stu=null;
stu = new Student(rs.getSting(1),rs.getString(2),。。。);
list.add(stu);
}
//輸出信息就行了,
Iterator<Student> it = null; //創建迭代器
while(it.hasNext()){
Student stu = it.next();
System.out.println(stu.toString);
}
.這樣就可以了。。。累死我了。希望你能成功。
不明白的追問我就ok
❹ Java如何獲取資料庫中的數據·案例
下面是一個從 mysql 數據獲取用戶數據的案例,可以參考一下:
importjava.sql.Connection;
importjava.sql.DriverManager;
importjava.sql.ResultSet;
importjava.sql.SQLException;
importjava.sql.Statement;
importjava.util.ArrayList;
importjava.util.List;
//用戶類,存儲單個用戶信息
classUser{
privateintid;
privateStringname;
publicUser(intid,Stringname){
this.id=id;
this.name=name;
}
publicintgetId(){
returnid;
}
publicvoidsetId(intid){
this.id=id;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
this.name=name;
}
@Override
publicStringtoString(){
return"User[id="+id+",name="+name+"]";
}
}
publicclassDemo1{
publicstaticvoidmain(String[]args)throwsClassNotFoundException,SQLException{
//本例使用mysql資料庫,演示將資料庫test的tb_users表中的用戶信息
//放到List中
//載入數據驅動
Class.forName("com.mysql.jdbc.Driver");
//資料庫連接字元串,此例資料庫為test
Stringurl="jdbc:mysql://localhost:3306/test";
Stringuser="root"; //資料庫用戶名
Stringpassword=""; //資料庫密碼
//打開一個數據連接
Connectionconn=DriverManager.getConnection(url,user,password);
Statementstmt=conn.createStatement();
//獲取表tb_users所有用戶信息到結果集中
ResultSetrs=stmt.executeQuery("SELECTid,nameFROMtb_users");
//定義一個存放用戶信息的List
List<User>users=newArrayList<>();
//提取用戶信息,並將用戶信息放入List
while(rs.next()){
//獲取用戶ID
intid=rs.getInt(1);
//獲取用戶名
Stringname=rs.getString(2);
users.add(newUser(id,name));
}
rs.close();
stmt.close();
conn.close();
//顯示用戶信息
for(Useru:users){
System.out.println(u);
}
}
}
❺ java 獲取資料庫所有表
看來LZ並沒有認真看API文檔啊,在介面Connection中有一個getMetaData()函數,其返回值是介面DatabaseMetaData,裡面有各種資料庫的配置信息,如是否支持空、最大連接數、用戶可以調用的所有存儲過程等,其中包括getSchemas()-獲取所有模式,getTables(),獲取所有的表,根據輸入的不同參數可以獲取所有表或者其中某個模式的表,還包括表的注射等信息,getColumns()則是獲取表的具體欄位,這些函數大多是以ResultSet的形式返回,和一般的JDBC使用差不多,LZ慢慢研究研究吧
❻ java中怎麼獲取mysql資料庫的數據
用JDBC連接資料庫,然後用sql語句。要導入mysql的驅動包。
import java.sql.*;
public class TestMySql {
static Connection con = null; // 聲明Connection對象
static Statement sql = null;
static ResultSet res = null;
public static void main(String[] args) {
TestMySql c = new TestMySql();
con = c.getConnection();
try {
sql = con.createStatement();
res = sql.executeQuery("select * from dept");
//sql語句,我資料庫里有張dept表
while (res.next()) {//輸出結果
System.out.print(res.getString(1) + "<——>");
System.out.print(res.getString(2) + "<——>");
System.out.print(res.getString(3) );
System.out.println();
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
if (res != null) {
res.close();
res =null;
}
if (sql != null) {
sql.close();
sql =null;
}
if (con != null) {
con.close();
con =null;
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public Connection getConnection() {
try {
Class.forName("com.mysql.jdbc.Driver");
// 載入oracleJDBC驅動
System.out.println("資料庫驅動載入成功");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try {// 通過訪問資料庫的URL獲取資料庫連接對象
con = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/mydata", "root", "qwer1234");
//mydata為mysql名字
System.out.println("資料庫連接成功");
} catch (SQLException e) {
e.printStackTrace();
}
return con; // 按方法要求返回一個Connection對象
}
}