說明:Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
通用格式為:Statement stmt=con.createStatement(int type,int concurrency);我們在訪問數(shù)據(jù)庫的時候,在讀取返回結(jié)果的時候,可能要前后移動指針,比如我們先計算有多少條信息,這是我們就需要把指針移到最后來計算,然后再把指針移到最前面,逐條讀取,有時我們只需要逐條讀取就可以了。還有就是有只我們只需要讀取數(shù)據(jù),為了不破壞數(shù)據(jù),我們可采用只讀模式,有時我們需要望數(shù)據(jù)庫里添加記錄,這是我們就要采用可更新數(shù)據(jù)庫的模式。下面我們就對其參數(shù)進行說明:
參數(shù) int type
ResultSet.TYPE_FORWORD_ONLY 結(jié)果集的游標只能向下滾動。
ResultSet.TYPE_SCROLL_INSENSITIVE 結(jié)果集的游標可以上下移動,當數(shù)據(jù)庫變化時,當前結(jié)果集不變。
ResultSet.TYPE_SCROLL_SENSITIVE 返回可滾動的結(jié)果集,當數(shù)據(jù)庫變化時,當前結(jié)果集同步改變。
參數(shù) int concurrency
ResultSet.CONCUR_READ_ONLY 不能用結(jié)果集更新數(shù)據(jù)庫中的表。
ResultSet.CONCUR_UPDATETABLE 能用結(jié)果集更新數(shù)據(jù)庫中的表。
查詢語句
ResultSet re=stmt.executeUpdate(SQL語句);用來更新數(shù)據(jù)庫信息或插入數(shù)據(jù)
ResultSet re=stmt.executeQuery(SQL語句);用來查詢數(shù)據(jù)庫信息
當我們使用ResultSet re=stmt.executeQuery(SQL語句)查詢后,我們可以使用下列方法獲得信息:
public boolean previous() 將游標向上移動,該方法返回boolean型數(shù)據(jù),當移到結(jié)果集第一行之前時,返回false。
public void beforeFirst 將游標移動到結(jié)果集的初始位置,即在第一行之前。
public void afterLast() 將游標移到結(jié)果集最后一行之后。
public void first() 將游標移到結(jié)果集的第一行。
public void last() 將游標移到結(jié)果集的最后一行。
public boolean isAfterLast() 判斷游標是否在最后一行之后。
public boolean isBeforeFirst() 判斷游標是否在第一行之前。
public boolean ifFirst() 判斷游標是否指向結(jié)果集的第一行。
public boolean isLast() 判斷游標是否指向結(jié)果集的最后一行。
public int getRow() 得到當前游標所指向行的行號,行號從1開始,如果結(jié)果集沒有行,返回0。
public boolean absolute(int row) 將游標移到參數(shù)row指定的行號。如果row取負值,就是倒數(shù)的行數(shù),absolute(-1)表示移到最后一行,absolute(-2)表示移到倒數(shù)第2行。當移動到第一行前面或最后一行的后面時,該方法返回false
說明:Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
通用格式為:Statement stmt=con.createStatement(int type,int concurrency);我們在訪問數(shù)據(jù)庫的時候,在讀取返回結(jié)果的時候,可能要前后移動指針,比如我們先計算有多少條信息,這是我們就需要把指針移到最后來計算,然后再把指針移到最前面,逐條讀取,有時我們只需要逐條讀取就可以了。還有就是有只我們只需要讀取數(shù)據(jù),為了不破壞數(shù)據(jù),我們可采用只讀模式,有時我們需要望數(shù)據(jù)庫里添加記錄,這是我們就要采用可更新數(shù)據(jù)庫的模式。下面我們就對其參數(shù)進行說明:
參數(shù) int type
ResultSet.TYPE_FORWORD_ONLY 結(jié)果集的游標只能向下滾動。
ResultSet.TYPE_SCROLL_INSENSITIVE 結(jié)果集的游標可以上下移動,當數(shù)據(jù)庫變化時,當前結(jié)果集不變。
ResultSet.TYPE_SCROLL_SENSITIVE 返回可滾動的結(jié)果集,當數(shù)據(jù)庫變化時,當前結(jié)果集同步改變。
參數(shù) int concurrency
ResultSet.CONCUR_READ_ONLY 不能用結(jié)果集更新數(shù)據(jù)庫中的表。
ResultSet.CONCUR_UPDATETABLE 能用結(jié)果集更新數(shù)據(jù)庫中的表。
查詢語句
ResultSet re=stmt.executeUpdate(SQL語句);用來更新數(shù)據(jù)庫信息或插入數(shù)據(jù)
ResultSet re=stmt.executeQuery(SQL語句);用來查詢數(shù)據(jù)庫信息
當我們使用ResultSet re=stmt.executeQuery(SQL語句)查詢后,我們可以使用下列方法獲得信息:
public boolean previous() 將游標向上移動,該方法返回boolean型數(shù)據(jù),當移到結(jié)果集第一行之前時,返回false。
public void beforeFirst 將游標移動到結(jié)果集的初始位置,即在第一行之前。
public void afterLast() 將游標移到結(jié)果集最后一行之后。
public void first() 將游標移到結(jié)果集的第一行。
public void last() 將游標移到結(jié)果集的最后一行。
public boolean isAfterLast() 判斷游標是否在最后一行之后。
public boolean isBeforeFirst() 判斷游標是否在第一行之前。
public boolean ifFirst() 判斷游標是否指向結(jié)果集的第一行。
public boolean isLast() 判斷游標是否指向結(jié)果集的最后一行。
public int getRow() 得到當前游標所指向行的行號,行號從1開始,如果結(jié)果集沒有行,返回0。
public boolean absolute(int row) 將游標移到參數(shù)row指定的行號。如果row取負值,就是倒數(shù)的行數(shù),absolute(-1)表示移到最后一行,absolute(-2)表示移到倒數(shù)第2行。當移動到第一行前面或最后一行的后面時,該方法返回false