JDBC中resutset接口操作實(shí)例詳解
本文主要向大家展示JDBC接口中resutset接口的用法實(shí)例,下面我們看看具體內(nèi)容。
1. ResultSet細(xì)節(jié)1
功能:封鎖結(jié)果集數(shù)據(jù)
操作:如何獲得(取出)結(jié)果
package com.sjx.a;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import org.junit.Test;
//1. next方法,向下移動(dòng)并判斷是否有內(nèi)容
//2. getXXX方法,根據(jù)列索引或列名獲得列的內(nèi)容
public class Demo {
@Test
public void fun1() throws Exception{
//1 注冊(cè)驅(qū)動(dòng)
Class.forName("com.mysql.jdbc.Driver");
//2 獲得連接
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/day05", "root", "1234");
//3 創(chuàng)建Statement
Statement st = conn.createStatement();
//4 書寫sql
String sql = "select * from t_user" ;
//5 執(zhí)行sql
ResultSet rs = st.executeQuery(sql);
//向下移動(dòng)一行,并判斷
while(rs.next()){
//有數(shù)據(jù)
//取數(shù)據(jù):getXXX
int id = rs.getInt(1);//獲得第一列的值
//int id rs.getInt("id");// 獲得id列的值
String name = rs.getString(2);//獲得第二列的值
int age = rs.getInt(3);//獲得第三列的值
System.out.println(id+"==>"+name+"==>"+age);
//rs.gettimestamp(columnIndex)
}
//6關(guān)閉資源
st.close();
conn.close();
}
/* 數(shù)據(jù)庫(kù)類型 java類型
int int
double double
decimal double
char String
varchar String
datetime Date
timestamp Timestamp/Date
*/
}
2.ResultSet細(xì)節(jié)2
結(jié)果集的滾動(dòng)-->移動(dòng)結(jié)果集的指針就是滾動(dòng)
結(jié)果集反向修改數(shù)據(jù)庫(kù)
package com.sjx.a;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import org.junit.Test;
public class Demo2 {
@Test
public void fun1() throws Exception{
//1 注冊(cè)驅(qū)動(dòng)
Class.forName("com.mysql.jdbc.Driver");
//2 獲得連接
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/day05", "root", "1234");
//3 創(chuàng)建Statement
Statement st = conn.createStatement();
//4 書寫sql
String sql = "select * from t_user" ;
//5 執(zhí)行sql
ResultSet rs = st.executeQuery(sql);
//倒著遍歷
//1> 光標(biāo)移動(dòng)到最后一行之后
rs.afterLast();
//2> 遍歷=>
while(rs.previous()){//向上移動(dòng)光標(biāo),并判斷是否有數(shù)據(jù)
int id = rs.getInt("id");// 獲得id列的值
String name = rs.getString("name");//獲得第二列的值
int age = rs.getInt("age");//獲得第三列的值
System.out.println(id+"==>"+name+"==>"+age);
}
//6關(guān)閉資源
st.close();
conn.close();
}
/* 數(shù)據(jù)庫(kù)類型 java類型
int int
double double
decimal double
char String
varchar String
datetime Date
timestamp Timestamp/Date
*/
}
3.使用ResultSet修改記錄
package com.sjx.a;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import org.junit.Test;
//ResultSet細(xì)節(jié)
// 2.結(jié)果集反向修改數(shù)據(jù)庫(kù)
public class Demo3 {
@Test
public void fun1() throws Exception{
//1 注冊(cè)驅(qū)動(dòng)
Class.forName("com.mysql.jdbc.Driver");
//2 獲得連接
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/day05", "root", "1234");
//3 創(chuàng)建Statement
Statement st = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
//4 書寫sql
String sql = "select * from t_user" ;
//5 執(zhí)行sql
ResultSet rs = st.executeQuery(sql);
//使用結(jié)果集 反向修改數(shù)據(jù)庫(kù)
rs.next();//將光標(biāo)移動(dòng)到第一行
rs.updateString("name", "湯姆");// 修改第一行name列的值為中文湯姆
rs.updateRow();// 確認(rèn)修改
//6關(guān)閉資源
st.close();
conn.close();
}
}
總結(jié)
以上就是本文關(guān)于JDBC中resutset接口操作實(shí)例詳解的全部?jī)?nèi)容了,希望對(duì)大家有所幫助。有興趣的朋友歡迎參閱更多有關(guān)JDBC的文章:BaseJDBC和CRUDDAO的寫法實(shí)例代碼、Spring jdbc中數(shù)據(jù)庫(kù)操作對(duì)象化模型的實(shí)例詳解、Java基于jdbc連接mysql數(shù)據(jù)庫(kù)操作示例等,在此也希望大家對(duì)腳本之家網(wǎng)站多多支持!
相關(guān)文章
一條慢SQL導(dǎo)致購(gòu)物車服務(wù)無(wú)法使用的解決方案
今天小編就為大家分享一篇關(guān)于一條慢SQL導(dǎo)致購(gòu)物車服務(wù)無(wú)法使用的解決方案,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2018-12-12
gaussDB數(shù)據(jù)庫(kù)常用操作命令詳解
這篇文章主要介紹了gaussDB數(shù)據(jù)庫(kù)常用操作命令,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-08-08
通過(guò)navicat導(dǎo)入sql文件的操作方法
在很多項(xiàng)目當(dāng)中都有sql文件導(dǎo)入到MySQL數(shù)據(jù)庫(kù)的需要,因?yàn)橛衧ql數(shù)據(jù)庫(kù)文件,這個(gè)項(xiàng)目才能正常運(yùn)行起來(lái),那么現(xiàn)在就來(lái)學(xué)習(xí)一下怎么導(dǎo)入sql文件到navicat里面吧,需要的朋友可以參考下2024-03-03
sql語(yǔ)句實(shí)現(xiàn)行轉(zhuǎn)列的3種方法實(shí)例
將列值旋轉(zhuǎn)為列名(即行轉(zhuǎn)列)是我們?cè)陂_發(fā)中經(jīng)常會(huì)遇到的一個(gè)需要,下面這篇文章主要給大家介紹了關(guān)于sql語(yǔ)句實(shí)現(xiàn)行轉(zhuǎn)列的3種方法,分別給出了詳細(xì)的示例代碼,需要的朋友可以參考借鑒,下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2018-02-02

