- 締切済み
rsには何が入っているかを確認する方法は?
rs=objPs.executeQuery();のrsには何が入っているかを確認する方法をお教えください。 SQL文の結果の値を利用しようとしています。 rs=objPs.executeQuery(); の中には、何がセットされるのでしょうか?
- みんなの回答 (3)
- 専門家の回答
関連するQ&A
- sqlの結果のrsからフィード数を得る方法
sql = "select a,b from t" Set rs = dbc.Execute(sql) ここでは2が得られる。 sql = "select a,b,c,d,e from t" Set rs = dbc.Execute(sql) ここでは5が得られる。 というのやりたいのですが、2や5をrsから得られないでしょうか? sqlのa,b,c,d,eの部分が固定ではなくaspプログラムで動的に作るのでrs.Fields()ではなくてrs()で取得しようとしています。
- 締切済み
- その他(データベース)
- SQL文の実行速度の確認方法
Oracle SQL*Plusにて、SQL文の開始から値取得までの実行速度の確認をしたいと考えております。 秒単位だけでもOKですので、どなたか確認方法について教えて頂きたくお願いします。
- ベストアンサー
- その他(データベース)
- WebSphere/DB2/ResultSet close/Exception
WebSphereを使って、Listenerで取得したデータソースを利用していますが、 String sql1 = "SELECT A1 FROM TEST1"; String sql2 = "SELECT B2 FROM TEST2 WHERE B1 = ?"; Connection conn = datasource.getConnection(); PreparedStatement ps1 = conn.preparedStatement(sql1); ResultSet rs1 = ps1.executeQuery(); while(rs1.next()){ PreparedStatement ps2 = conn.preparedStatement(sql2); ps2.setString(1,rs1.getString("A1")); ResultSet rs2 = ps2.executeQuery(); ps2.close(); } このロジックで、ps2をクローズすると、ps1で取得したResultSet rs1がクローズされるというExceptionが発生してしまいます。 (ループして戻ったときにrs1.next()でexceptionが起こる) なにか対処方法があるかご存知の方いらっしゃいましたら、よろしくお願いいたします。
- ベストアンサー
- Java
- getStringの値がNULLの時の処理
DB:SQL Server 2005 JDBCを使ってデータベースへアクセスし、SQL発行して結果をResultsetに格納、getStringで各項目の値を取得するところまでは確認できています。 外部結合したテーブルを参照していおり、getString()でnullを取得した場合にjava.lang.NullPointerExceptionが返ってエラーとなってしまいます。 回避策はあるのでしょうか? 抜粋したソースを下記に記します。 -- test.jsp -- <% ResultSet rs = db.executeQuery(sql); while(rs.next()){ String disp_object = rs.getString("object"); if(disp_object == null) disp_object="---"; } %> <tr>Object</tr> <tr><%=disp_object%></tr>
- ベストアンサー
- Java
- JavaでのSQL文の実行について
JavaでのSQL文の実行について Class.forName("org.gjt.mm.mysql.Driver"); con = DriverManager.getConnection("jdbc:mysql://localhost/testdb?useUnicode=true&characterEncoding=UTF-8", "id", "pw"); stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); sql = new StringBuffer(); sql.append("set @i:=0;select id,@i:=@i+1 as 'num',name,kana from table order by kana"); rs = stmt.executeQuery(sql.toString()); ResultSetMetaData rsmd = null; rsmd = rs.getMetaData(); tbl = new ArrayList<ArrayList>(); //検索結果 取得 if(rs.next()){ ・ ・ ・ ・ といった形でSQL文を実行してるのですが、うまくいきません。 MySQLのバージョンは5.1です。MySQL上でこのSQLを実行するとしっかり結果は取得できたので、Javaプログラムの書き方に問題があると思うのですが、上記のように一度で二つのSQL文を実行することはできないのでしょうか。単一のSQLの実行は正常にできています。ユーザ変数は取得された結果一覧に行番号を付与するために使っています。 2回に分けてこのSQLが実行できるのであれば、その方法でも良いので教えてもらいたいです。 つたない説明で申し訳ないですが、よろしくお願いします。
- ベストアンサー
- Java
- SELECT文を発行して、ACCESSより取得する方法
既存のプログラムを元に、 以下のようなソースを作成したのですが、 取得出来ませんでした。 参照設定やパスの設定、SQL文は正しいです。 どこがマズイのでしょうか? アドバイスをお願い致します。 Dim db As DAO.Database Dim rs As DAO.Recordset Dim SQL As String 'データベース接続 Set db = OpenDatabase("DBのパス") 'データ検索SQL SQL = "" SQL = " SELECT文 " 'ACCESSより取得 Set rs = db.OpenRecordset(SQL) db.Close rs.Close
- ベストアンサー
- Visual Basic
- 権限の確認方法
いつも参考にさせていただいています。 SQL Server Management Studioにおいて、SQL文であるユーザにCREATE TABLE権限とCREATE PROCEDURE権限を与えました。 が、しかしどこでこの権限が与えられているか確認する方法がわからなく困っております。 ご存知の方よろしくお願いいたします。 SQL Server 2005 Enterpriseです。
- ベストアンサー
- SQL Server
- サブミットへ値を入れたいのですが・・・
プログラミングを始めて3ヶ月になります。 只今、javaで作品をつくっております。 そこで、プルダウンの中にDBからとってきた値を入れることができません。 何が不足しているのかよく分からなくて・・・ 初歩的な質問で申し訳ございませんが、どなたかご教授頂けたらと思います。宜しくお願いします。 html += "職業"; sql = "select job_nm from t13_job order by job_id"; rs = statement.executeQuery(sql); html += "<SELECT name=\"Job\">"; while(rs.next()) { html += "<OPTION value =" + rs.getString("job_nm"); } html += "</OPTION></SELECT><BR><BR>";
- 締切済み
- Java
- Oracle SQL実行時間について
Oracle初心者です。 あるテーブル(レコード数:100万件程度)に対してSelectするSQLの実行時間を、Oracleのset timing on, set autotrace onlyで計測しました。 結果は1000ms程度だったのですが、 同じSQL文を実行するプログラム(java)を作成し、pstmt.executequery()してresultsetからデータをgetするまでの時間をログに出力させたところ、400ms程度でした。 プログラムの性能目標として、set timing on の値を設定していたため、実際の結果(javaプログラムが出力した処理時間)の評価に困っています。 差がでる原因をご教示いただけませんでしょうか。 宜しくお願いします。
- 締切済み
- Oracle
- 初歩的なSQLですが・・・
私の環境はOS:Xp ACCESS2000です。 宜しくお願いします 今AccessVBAで作業をしているのですが、 Dim ws As DAO.Workspace Dim DB As DAO.Database Dim rs As DAO.Recordset Dim sql As String Set ws = DBEngine.Workspaces(0) Set DB = ws.Databases(0) sql = "select MAX(銀行コード) from 銀行テーブル ;" Set rs = DB.OpenRecordset(sql) Me.合計 = rs このSQL文で銀行テーブルに入っている銀行コードの最大値を取得したいのですが、取得した後どのように記述したら「rs」から値を引っ張り出せるのでしょうか? 宜しくお願いします。
- ベストアンサー
- オフィス系ソフト