001    /*
002     * Copyright (c) 2009 The openGion Project.
003     *
004     * Licensed under the Apache License, Version 2.0 (the "License");
005     * you may not use this file except in compliance with the License.
006     * You may obtain a copy of the License at
007     *
008     *     http://www.apache.org/licenses/LICENSE-2.0
009     *
010     * Unless required by applicable law or agreed to in writing, software
011     * distributed under the License is distributed on an "AS IS" BASIS,
012     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
013     * either express or implied. See the License for the specific language
014     * governing permissions and limitations under the License.
015     */
016    package org.opengion.hayabusa.taglib;
017    
018    import org.opengion.fukurou.db.ConnectionFactory;
019    import org.opengion.hayabusa.common.HybsSystem;
020    import org.opengion.hayabusa.common.HybsSystemException;
021    import static org.opengion.fukurou.util.StringUtil.nval ;
022    
023    import java.util.ArrayList;
024    import java.util.Locale ;
025    
026    import java.sql.ResultSetMetaData ;
027    import java.sql.DatabaseMetaData ;
028    import java.sql.Connection;
029    import java.sql.ResultSet;
030    import java.sql.SQLException;
031    import java.sql.Types;
032    
033    /**
034     * DatabaseMetaData のæƒ??を怜玢するタグですã?
035     *
036     * ãƒ??タベã?スに関するåŒ?‹¬çš?ªæƒ??を提䟛するã?DatabaseMetaData のå†?®¹ã‚?
037     * 衚瀺する、タグですã?ãƒ?‚¹ãƒˆçš„に䜿甚したすã?
038     *
039     * @og.formSample
040     * ●圢匏ïŒ?
041     *  <og:databaseMetaData
042     *      dbid            = "{@DBID}"
043     *      catalog         = "{@catalog}"
044     *      schema          = "{@schema}"
045     *      tableName       = "{@tableName}"
046     *      columnName      = "{@columnName}"
047     *      typeName        = "{@typeName}"
048     *      attributeName   = "{@attriName}"
049     *      procedureName   = "{@procName}"
050     *      maxRowCount     = "{@maxRowCount}"
051     *      likeKey         = "{@likeKey}"
052     *  />
053     *
054     * ●body?šãªã?
055     *
056     * ●Tag定矩??
057     *   <og:databaseMetaData
058     *       dbid               【TAGã€?通垞は䜿ã?Ÿã›ã‚“)Queryオブゞェクトを䜜æ?する時ã?DB接続IDを指定したã?
059     *       catalog            【TAGã€?通垞は䜿ã?Ÿã›ã‚“)Queryオブゞェクトを䜜æ?する時ã?カタログを指定したã?
060     *       schema             【TAGã€?通垞は䜿ã?Ÿã›ã‚“)Queryオブゞェクトを䜜æ?する時ã?スキヌマをæŒ?®šã—たã?
061     *       attributeName      【TAGã€?通垞は䜿ã?Ÿã›ã‚“)Queryオブゞェクトを䜜æ?する時ã?属æ?名をæŒ?®šã—たã?
062     *       columnName         【TAGã€?通垞は䜿ã?Ÿã›ã‚“)Queryオブゞェクトを䜜æ?する時ã?カラãƒ?ã‚’指定したã?
063     *       procedureName      【TAGã€?通垞は䜿ã?Ÿã›ã‚“)Queryオブゞェクトを䜜æ?する時ã?プロãƒ?‚¯ãƒˆåã‚’指定したã?
064     *       tableName          【TAGã€?通垞は䜿ã?Ÿã›ã‚“)Queryオブゞェクトを䜜æ?する時ã?ãƒ??ブル名をæŒ?®šã—たã?
065     *       typeName           【TAGã€?通垞は䜿ã?Ÿã›ã‚“)Queryオブゞェクトを䜜æ?する時ã?タむプ名を指定したã?
066     *       maxRowCount        【TAG】maxRowCount ResultSetで怜玢するパラメヌタのæœ?€§æ€œçŽ¢ä»¶æ•°ã‚’æŒ‡å®šã—ãŸã?初期倀:20)
067     *       likeKey            【TAG】実行するメ゜ãƒ?ƒ‰ã‚’遞別するための郚åˆ?ž??するキヌを指定したã?
068     *       debug              【TAG】デバッグæƒ??をå?力するかどã?‹[true/false]を指定したã?初期倀:false)
069     *   />
070     *
071     * ●䜿甚äŸ?
072     *       <og:databaseMetaData />
073     *
074     * @og.group ?€?¢æ€œçŽ¢
075     *
076     * @version  0.9.0      2000/10/17
077     * @author       Kazuhiko Hasegawa
078     * @since    JDK5.0,
079     */
080    public class DatabaseMetaDataTag extends CommonTagSupport {
081            //* こã?プログラãƒ??VERSIONæ–?­—å?を蚭定したすã?       {@value} */
082            private static final String VERSION = "5.5.8.5 (2012/11/27)" ;
083    
084            private static final long serialVersionUID = 558520121127L ;
085    
086            // 4.0.0.0 (2007/10/10) dbid の初期倀をã?"DEFAULT" から null に倉曎
087    //      private String  dbid                    = "DEFAULT";
088            private String  dbid                    = null ;
089            private String  catalog                 = null ;
090            private String  schema                  = null ;
091            private String  tableName               = null ;
092            private String  columnName              = null ;
093            private String  typeName                = null ;
094            private String  attributeName   = null ;
095            private String  procedureName   = null ;
096            private int             rowNo                   = 0;
097            private int             maxRowCount             = 20;           // 5.5.3.2 (2012/06/08) æœ?€§æ€œçŽ¢ä»¶æ•°ã‚’ã?æŒ?®šã§ãã‚‹ã‚ˆã†ã«ã™ã‚‹ã€?
098            private String  likeKey                 = null ;        // 5.5.3.2 (2012/06/08) 特定ã?凊ç? ã‘を実行できるように、あã?Ÿã?€œçŽ¢
099    
100            /**
101             * Taglibの終äº?‚¿ã‚°ãŒèŠ‹ã€ã‹ã£ãŸãšãã«å‡Šç?™ã‚?doEndTag() ã‚?オヌバã?ラむドしたすã?
102             *
103             * @og.rev 3.8.7.0 (2006/12/15) アクセスログ取埗ã?為,ApplicationInfoオブゞェクトを蚭å®?
104             * @og.rev 4.0.0.1 (2007/12/03) try ??catch ??finally をきちんず行うã€?
105             *
106             * @return      埌続å?ç??æŒ?€º(EVAL_PAGE)
107             */
108            @Override
109            public int doEndTag() {
110                    debugPrint();           // 4.0.0 (2005/02/28)
111                    Connection conn = null;
112                    boolean errFlag = true;
113                    try {
114                            conn = ConnectionFactory.connection( dbid,getApplicationInfo() );       // 3.8.7.0 (2006/12/15)
115                            DatabaseMetaData metaData = conn.getMetaData() ;
116    
117                            callPrintMessage( metaData );
118                            errFlag = false;                // ゚ラヌではなã?
119                    }
120                    catch (Throwable ex) {
121                            String errMsg = "ãƒ??タベã?ス凊ç?‚’実行できたせんでしたã€?
122                                                    + ex.getMessage()  + HybsSystem.CR ;
123    //                      errMsg = errMsg + HybsSystem.CR ;
124    //                      errMsg = errMsg + ex.getMessage() ;
125    
126    //                      ConnectionFactory.remove( conn,dbid );
127    //                      conn = null;
128                            throw new HybsSystemException( errMsg,ex );             // 3.5.5.4 (2004/04/15) 匕数の䞊びé ?€‰æ›Ž
129                    }
130                    finally {
131                            // 以䞋ã?コヌãƒ?‚£ãƒ³ã‚°ã®èŠ‹ç›Žã—ã‚’è€?ˆã‚‹å¿?Šæœ‰ã‚Šã?
132                            // Connection はプã?ルしおã?‚‹ç‚ºã€close() しおもå?利甚されるだけã?
133    //                      ConnectionFactory.close( conn,dbid );
134                            if( errFlag ) { ConnectionFactory.remove( conn,dbid ); }        // 削陀
135                            else {                  ConnectionFactory.close( conn,dbid );  }        // 返华
136    //                      conn = null;
137                    }
138    
139                    jspPrint( "凊ç?Œå®Œäº?—たしたã€? + HybsSystem.CR );         // 5.5.3.2 (2012/06/08) 終äº?ƒ¡ãƒ?‚»ãƒŒã‚žè¿œåŠ?
140                    return(EVAL_PAGE);
141            }
142    
143            /**
144             * タグリブオブゞェクトをリリヌスしたすã?
145             * キャãƒ?‚·ãƒ¥ã•れお再利甚されるã?で、フィヌルドã?初期蚭定を行いたすã?
146             *
147             * @og.rev 4.0.0.0 (2007/10/10) dbid の初期倀をã?"DEFAULT" から null に倉曎
148             * @og.rev 5.5.3.2 (2012/06/08) maxRowCount æœ?€§æ€œçŽ¢ä»¶æ•°ã‚’ã?æŒ?®šã§ãã‚‹ã‚ˆã†ã«ã™ã‚‹ã€?
149             * @og.rev 5.5.3.2 (2012/06/08) likeKey 特定ã?凊ç? ã‘を実行できるように、あã?Ÿã?€œçŽ¢
150             */
151            @Override
152            protected void release2() {
153                    super.release2();
154    //              dbid                    = "DEFAULT";
155                    dbid                    = null ;
156                    catalog                 = null ;
157                    schema                  = null ;
158                    tableName               = null ;
159                    columnName              = null ;
160                    typeName                = null ;
161                    procedureName   = null ;
162                    attributeName   = null ;
163                    rowNo                   = 0;
164                    maxRowCount             = 20;           // 5.5.3.2 (2012/06/08) æœ?€§æ€œçŽ¢ä»¶æ•°ã‚’ã?æŒ?®šã§ãã‚‹ã‚ˆã†ã«ã™ã‚‹ã€?
165                    likeKey                 = null;         // 5.5.3.2 (2012/06/08) 特定ã?凊ç? ã‘を実行できるように、あã?Ÿã?€œçŽ¢
166            }
167    
168            /**
169             * 画面にãƒ??ブルタグの(TR)ずしお、情報をå?力したすã?
170             *
171             * 第äž?Œ•数がã?boolean の堎合ã?オヌバã?ロヌドメ゜ãƒ?ƒ‰ã§ã™ã?
172             *
173             * @param       in      第äž?Œ•æ•°(boolean)
174             * @param       lbl     ラベル
175             * @param       msg     メãƒ?‚»ãƒŒã‚ž
176             */
177            private void printMessage( final boolean in, final String lbl, final String msg ) {
178                    String str = "<tr class=\"row_" + (rowNo++ % 2) + "\"><td>"
179                                     + rowNo + "</td><td>"                      // 5.5.3.2 (2012/06/08) 行番号を衚瀺
180                                     + lbl + "</td><td>" + in + "</td><td>" + msg + "</td></tr>" + HybsSystem.CR ;
181                    jspPrint( str );
182            }
183    
184            /**
185             * 画面にãƒ??ブルタグの(TR)ずしお、情報をå?力したすã?
186             *
187             * 第äž?Œ•数がã?int の堎合ã?オヌバã?ロヌドメ゜ãƒ?ƒ‰ã§ã™ã?
188             *
189             * @param       in      第äž?Œ•æ•°(int)
190             * @param       lbl     ラベル
191             * @param       msg     メãƒ?‚»ãƒŒã‚ž
192             */
193            private void printMessage( final int in, final String lbl, final String msg ) {
194                    String str = "<tr class=\"row_" + (rowNo++ % 2) + "\"><td>"
195                                     + rowNo + "</td><td>"                      // 5.5.3.2 (2012/06/08) 行番号を衚瀺
196                                     + lbl + "</td><td>" + in + "</td><td>" + msg + "</td></tr>" + HybsSystem.CR ;
197                    jspPrint( str );
198            }
199    
200            /**
201             * 画面にãƒ??ブルタグの(TR)ずしお、情報をå?力したすã?
202             *
203             * 第äž?Œ•数がã?String の堎合ã?オヌバã?ロヌドメ゜ãƒ?ƒ‰ã§ã™ã?
204             *
205             * @param       in      第äž?Œ•æ•°(String)
206             * @param       lbl     ラベル
207             * @param       msg     メãƒ?‚»ãƒŒã‚ž
208             */
209            private void printMessage( final String in, final String lbl, final String msg ) {
210                    String str = "<tr class=\"row_" + (rowNo++ % 2) + "\"><td>"
211                                     + rowNo + "</td><td>"                      // 5.5.3.2 (2012/06/08) 行番号を衚瀺
212                                     + lbl + "</td><td>" + in + "</td><td>" + msg + "</td></tr>" + HybsSystem.CR ;
213                    jspPrint( str );
214            }
215    
216            /**
217             * 画面にãƒ??ブルずしお、情報をå?力したすã?
218             *
219             * 第äž?Œ•数がã?ResultSet の堎合ã?オヌバã?ロヌドメ゜ãƒ?ƒ‰ã§ã™ã?
220             *
221             * @param       resultSet       ResultSetオブゞェクãƒ?
222             * @param       msg                     メãƒ?‚»ãƒŒã‚ž
223             */
224            private void printMessage( final ResultSet resultSet, final String msg ) {
225    //              jspPrint( msg + HybsSystem.BR );
226                    jspPrint( makeTableTag( resultToString( resultSet ) ) );
227            }
228    
229            /**
230             * 画面にãƒ??ブルずしお、情報をå?力したすã?
231             *
232             * 第äž?Œ•数がã?存圚しなã??合ã?オヌバã?ロヌドメ゜ãƒ?ƒ‰ã§ã™ã?
233             *
234             * @param       lbl     ラベル
235             * @param       msg     メãƒ?‚»ãƒŒã‚ž
236             */
237            private void printMessage( final String lbl, final String msg ) {
238    //              jspPrint( msg + HybsSystem.BR );
239                    String str = "<table><tr><td>" + lbl + "</td></tr></table>" + HybsSystem.CR ;
240                    jspPrint( str );
241            }
242    
243            /**
244             * æŒ?®šã?æ–?­—å?配å?をテヌブル䞊に衚瀺する為の、テヌブルを䜜æ?したすã?
245             *
246             * @og.rev 5.5.3.2 (2012/06/08) 行番号を衚瀺するように修正
247             *
248             * @param       data    æ–?­—å?配å?
249             *
250             * @return      æ–?­—å?配å?を衚瀺する為のHTMLãƒ??ブル曞åŒ?
251             */
252            private String makeTableTag( final String[][] data ) {
253                    if( data == null || data.length == 0 ) { return "" ; }
254    
255                    StringBuilder buf = new StringBuilder( HybsSystem.BUFFER_LARGE );
256                    buf.append( "<table>" ).append( HybsSystem.CR );
257    
258                    int maxRow = data.length ;
259                    int maxClm = data[0].length ;
260    
261                    buf.append( "<tr class=\"row_h\">" );
262                    buf.append( "<th>No</th>" );                                        // 5.5.3.2 (2012/06/08) 行番号を衚瀺
263                    for( int clm=0; clm<maxClm; clm++ ) {
264                            buf.append( "<th>" ).append( data[0][clm] ).append( "</th>" );
265                    }
266                    buf.append( "</tr>" ).append( HybsSystem.CR );
267                    for( int row=1; row<maxRow; row++ ) {
268                            buf.append( "<tr class=\"row_" ).append( (row-1) % 2 ).append( "\">" );
269                            buf.append( "<td>" ).append( row ).append( "</td>" );                       // 5.5.3.2 (2012/06/08) 行番号を衚瀺
270                            for( int clm=0; clm<maxClm; clm++ ) {
271                                    buf.append( "<td>" ).append( data[row][clm] ).append( "</td>" );
272                            }
273                            buf.append( "</tr>" ).append( HybsSystem.CR );
274                    }
275                    buf.append( "</table>" ).append( HybsSystem.CR );
276    
277                    return buf.toString();
278            }
279    
280            /**
281             * スãƒ??トメントず匕数により、Queryを実行したすã?
282             * これは、Prepared ク゚リヌの怜玢のみ実行したすã?
283             * 結果は,すべおæ–?­—å?に倉換されお栌玍されたすã?
284             *
285             * @og.rev 5.5.3.2 (2012/06/08) æœ?€§æ€œçŽ¢ä»¶æ•°ã‚’ã?æŒ?®šã§ãã‚‹ã‚ˆã†ã«ã™ã‚‹ã€?
286             *
287             * @param   resultSet ResultSetオブゞェクãƒ?
288             *
289             * @return  ResultSetの怜玢結果配å?
290             */
291            private String[][] resultToString( final ResultSet resultSet ) {
292                    ArrayList<String[]> data = new ArrayList<String[]>();
293                    try {
294                            ResultSetMetaData metaData  = resultSet.getMetaData();
295                            int numberOfColumns =  metaData.getColumnCount();
296    
297                            String[] columnNames = new String[numberOfColumns];
298                            for(int column = 0; column < numberOfColumns; column++) {
299                                    columnNames[column]      = (metaData.getColumnLabel(column+1)).toUpperCase(Locale.JAPAN) ;
300                            }
301                            data.add( columnNames );
302    
303                            // ずりあえず MAX ?‘件ずするã€?
304                            int maxcnt = 0 ;
305                            // 5.5.3.2 (2012/06/08) æœ?€§æ€œçŽ¢ä»¶æ•°ã‚’ã?æŒ?®šã§ãã‚‹ã‚ˆã†ã«ã™ã‚‹ã€?
306                            while( resultSet.next() && ( maxcnt++ < maxRowCount ) ) {
307                                    String[] columnValues = new String[numberOfColumns];
308                                    for(int i = 1; i <= numberOfColumns; i++) {
309                                            Object obj = resultSet.getObject(i);
310                                            if( obj == null ) {
311                                                    columnValues[i-1] = "";
312                                            }
313                                            else {
314                                                    columnValues[i-1] = String.valueOf( obj );
315                                            }
316                                    }
317                                    data.add( columnValues );
318                            }
319                    }
320                    catch (SQLException ex) {
321                            String errMsg = "凊ç?µæžœã‚’実行できたせんでしたã€?
322                                                    + ex.getMessage();              // 5.1.8.0 (2010/07/01) errMsg 修正
323                            throw new HybsSystemException( errMsg,ex );             // 3.5.5.4 (2004/04/15) 匕数の䞊びé ?€‰æ›Ž
324                    }
325    
326                    int size = data.size();
327                    String[][] rtn = new String[size][];
328                    for( int i=0; i<size; i++ ) {
329                            rtn[i] = data.get(i);
330                    }
331    
332                    return rtn;
333            }
334    
335            /**
336             * 【TAGã€?通垞は䜿ã?Ÿã›ã‚“)Queryオブゞェクトを䜜æ?する時ã?DB接続IDを指定したすã?
337             *
338             * @og.tag Queryオブゞェクトを䜜æ?する時ã?DB接続IDを指定したすã?
339             *
340             * @param       id ãƒ??タベã?ス接続ID
341             */
342            public void setDbid( final String id ) {
343                    dbid = nval( getRequestParameter( id ),dbid );
344            }
345    
346            /**
347             * 【TAGã€?通垞は䜿ã?Ÿã›ã‚“)Queryオブゞェクトを䜜æ?する時ã?カタログを指定したすã?
348             *
349             * @og.tag Queryオブゞェクトを䜜æ?する時ã?カタログを指定したすã?
350             *
351             * @param       val     カタログæƒ??
352             */
353            public void setCatalog( final String val ) {
354                    catalog = nval( getRequestParameter( val ),catalog );
355            }
356    
357            /**
358             * 【TAGã€?通垞は䜿ã?Ÿã›ã‚“)Queryオブゞェクトを䜜æ?する時ã?スキヌマをæŒ?®šã—たすã?
359             *
360             * @og.tag Queryオブゞェクトを䜜æ?する時ã?スキヌマをæŒ?®šã—たすã?
361             *
362             * @param       val     スキヌマ情報
363             */
364            public void setSchema( final String val ) {
365                    schema = nval( getRequestParameter( val ),schema );
366            }
367    
368            /**
369             * 【TAGã€?通垞は䜿ã?Ÿã›ã‚“)Queryオブゞェクトを䜜æ?する時ã?ãƒ??ブル名をæŒ?®šã—たすã?
370             *
371             * @og.tag Queryオブゞェクトを䜜æ?する時ã?ãƒ??ブル名をæŒ?®šã—たすã?
372             *
373             * @param       val     ãƒ??ブル名情報
374             */
375            public void setTableName( final String val ) {
376                    tableName = nval( getRequestParameter( val ),tableName );
377            }
378    
379            /**
380             * 【TAGã€?通垞は䜿ã?Ÿã›ã‚“)Queryオブゞェクトを䜜æ?する時ã?カラãƒ?ã‚’指定したすã?
381             *
382             * @og.tag Queryオブゞェクトを䜜æ?する時ã?カラãƒ?ã‚’指定したすã?
383             *
384             * @param       val     カラãƒ?æƒ??
385             */
386            public void setColumnName( final String val ) {
387                    columnName = nval( getRequestParameter( val ),columnName );
388            }
389    
390            /**
391             * 【TAGã€?通垞は䜿ã?Ÿã›ã‚“)Queryオブゞェクトを䜜æ?する時ã?タむプ名を指定したすã?
392             *
393             * @og.tag Queryオブゞェクトを䜜æ?する時ã?タむプ名を指定したすã?
394             *
395             * @param       val     タむプ名æƒ??
396             */
397            public void setTypeName( final String val ) {
398                    typeName = nval( getRequestParameter( val ),typeName );
399            }
400    
401            /**
402             * 【TAGã€?通垞は䜿ã?Ÿã›ã‚“)Queryオブゞェクトを䜜æ?する時ã?プロãƒ?‚¯ãƒˆåã‚’指定したすã?
403             *
404             * @og.tag Queryオブゞェクトを䜜æ?する時ã?プロãƒ?‚¯ãƒˆåã‚’指定したすã?
405             *
406             * @param       val     プロãƒ?‚¯ãƒˆåæƒ??
407             */
408            public void setProcedureName( final String val ) {
409                    procedureName = nval( getRequestParameter( val ),procedureName );
410            }
411    
412            /**
413             * 【TAGã€?通垞は䜿ã?Ÿã›ã‚“)Queryオブゞェクトを䜜æ?する時ã?属æ?名をæŒ?®šã—たすã?
414             *
415             * @og.tag Queryオブゞェクトを䜜æ?する時ã?属æ?名をæŒ?®šã—たすã?
416             *
417             * @param       val     属æ?名情報
418             */
419            public void setAttributeName( final String val ) {
420                    attributeName = nval( getRequestParameter( val ),attributeName );
421            }
422    
423            /**
424             * 【TAG】maxRowCount ResultSetで怜玢するパラメヌタのæœ?€§æ€œçŽ¢ä»¶æ•°ã‚’æŒ‡å®šã—ãŸã?初期倀:20)ã€?
425             *
426             * @og.tag
427             * 倧量に怜玢されお、å?ç??床が䜎䞋するã?を避けるため、最倧件数を指定したすã?
428             * 他ã?タグの maxRowCount の初期倀蚭å®?初期倀:DB_MAX_ROW_COUNT)は利甚せず、独自に蚭定å?を持っおã?Ÿã™ã?
429             * 0は、無制限ずしたすã?
430             *
431             * @og.rev 5.5.3.2 (2012/06/08) likeKey 特定ã?凊ç? ã‘を実行できるように、あã?Ÿã?€œçŽ¢
432             * @og.rev 5.5.8.5 (2012/11/27) 0を無制限ずしお凊ç?—たすã?
433             *
434             * @param       maxSize ResultSetで怜玢するæœ?€§æ€œçŽ¢ä»¶æ•°
435             */
436            public void setMaxRowCount( final String maxSize ) {
437                    maxRowCount = nval( getRequestParameter( maxSize ),maxRowCount );
438                    if( maxRowCount == 0 ) { maxRowCount = Integer.MAX_VALUE ; }                    // 5.5.8.5 (2012/11/27)
439            }
440    
441            /**
442             * 【TAG】実行するメ゜ãƒ?ƒ‰ã‚’遞別するための郚åˆ?ž??するキヌを指定したすã?
443             *
444             * @og.tag
445             * DatabaseMetaData で取埗できるå?𮿃??をアクセスするにあたりã?æŒ?®šã?キヌで郚åˆ?ž??する
446             * メ゜ãƒ?ƒ‰ã?‘凊ç?™ã‚‹ã‚ˆã?«æŒ?®šã—たすã?
447             * メ゜ãƒ?ƒ‰ã®éƒšåˆ?ž??で刀断したすã?
448             * 凊ç??、倧æ–?­—ã?小文字を認識したうえでã€?ƒšåˆ?ž??で刀定したすã?
449             *
450             * @og.rev 5.5.3.2 (2012/06/08) likeKey 特定ã?凊ç? ã‘を実行できるように、あã?Ÿã?€œçŽ¢
451             *
452             * @param       key     実行するメ゜ãƒ?ƒ‰ã‚’遞別するためのキヌ
453             */
454            public void setLikeKey( final String key ) {
455                    likeKey = nval( getRequestParameter( key ),likeKey );
456            }
457    
458            /**
459             * DatabaseMetaData のフィヌルドで定矩されおã?‚‹å€€ã«å¯Ÿå¿œã™ã‚?メãƒ?‚»ãƒŒã‚žã‚’返したすã?
460             *
461             * @param       code short のコヌド番号
462             */
463    //      private String dbMessage( final short code ) {
464    //              String msg = null ;
465    //              switch( code ) {
466    //                      case DatabaseMetaData.attributeNoNulls :
467    //                                      msg = "NULL 倀が蚱可されなã?¯èƒœæ€§ãŒã‚りたすã?" ;
468    //                                      break ;
469    //                      case DatabaseMetaData.attributeNullable :
470    //                                      msg = "NULL 倀がå¿?šèš±å¯ã•れたすã?" ;
471    //                                      break ;
472    //                      case DatabaseMetaData.attributeNullableUnknown :
473    //                                      msg = "NULL 倀が蚱可されるかどã?‹ãŒäžæ?ですã?" ;
474    //                                      break ;
475    //                      case DatabaseMetaData.tableIndexClustered :
476    //                                      msg = "こã?ãƒ??ブルむンãƒ?ƒƒã‚¯ã‚¹ãŒã‚¯ãƒ©ã‚¹ã‚¿åŒ–されたむンãƒ?ƒƒã‚¯ã‚¹ã§ã™ã?" ;
477    //                                      break ;
478    //                      case DatabaseMetaData.tableIndexHashed :
479    //                                      msg = "こã?ãƒ??ブルむンãƒ?ƒƒã‚¯ã‚¹ãŒãƒãƒ?‚·ãƒ¥åŒ–されたむンãƒ?ƒƒã‚¯ã‚¹ã§ã™ã?" ;
480    //                                      break ;
481    //                      case DatabaseMetaData.tableIndexOther :
482    //                                      msg = "こã?ãƒ??ブルむンãƒ?ƒƒã‚¯ã‚¹ãŒã‚¯ãƒ©ã‚¹ã‚¿åŒ–されたむンãƒ?ƒƒã‚¯ã‚¹ã§ã‚‚ã?ハッシュ化されたむンãƒ?ƒƒã‚¯ã‚¹ã§ã‚‚ã?ãƒ??ブルの統蚈情報でもありたせんã€? ;
483    //                                      break ;
484    //                      case DatabaseMetaData.tableIndexStatistic :
485    //                                      msg = "こã?列がãƒ??ブルのむンãƒ?ƒƒã‚¯ã‚¹ã®èš˜è¿°ãšé€£å‹•しお返されるãƒ??ブルの統蚈情報をæ?玍したすã?" ;
486    //                                      break ;
487    //                      default :
488    //                                      msg = "察象のメãƒ?‚»ãƒŒã‚žãŒã‚りたせんã€? ;
489    //                                      break ;
490    //              }
491    //
492    //              return msg ;
493    //      }
494    
495            /**
496             * DatabaseMetaData のフィヌルドで定矩されおã?‚‹å€€ã«å¯Ÿå¿œã™ã‚?メãƒ?‚»ãƒŒã‚žã‚’返したすã?
497             *
498             * @param       code short のコヌド番号
499             */
500    //      private String dbMessage( final int code ) {
501    //              String msg = null ;
502    //              switch( code ) {
503    //                      case DatabaseMetaData.bestRowNotPseudo :
504    //                                      msg = "æœ?©ãªè¡Œè­˜åˆ¥å­ãŒæ“¬äŒŒåˆ—ではありたせんã€? ;
505    //                                      break ;
506    //                      case DatabaseMetaData.bestRowPseudo :
507    //                                      msg = "æœ?©ãªè¡Œè­˜åˆ¥å­ãŒæ“¬äŒŒåˆ—ですã?" ;
508    //                                      break ;
509    //                      case DatabaseMetaData.bestRowSession :
510    //                                      msg = "æœ?©ãªè¡Œè­˜åˆ¥å­ã?スコヌプが珟圚のセãƒ?‚·ãƒ§ãƒ³ã®æ®‹ã‚Šã®éƒšåˆ?§ã™ã?" ;
511    //                                      break ;
512    //                      case DatabaseMetaData.bestRowTemporary :
513    //                                      msg = "æœ?©ãªè¡Œè­˜åˆ¥å­ã?スコヌプがäž?™‚çš?(行が䜿甚されおã?‚‹é–“だã? ですã?" ;
514    //                                      break ;
515    //                      case DatabaseMetaData.bestRowTransaction :
516    //                                      msg = "æœ?©ãªè¡Œè­˜åˆ¥å­ã?スコヌプが珟圚のトランザクションの残りの郚åˆ?§ã™ã?" ;
517    //                                      break ;
518    //                      case DatabaseMetaData.bestRowUnknown :
519    //                                      msg = "æœ?©ãªè¡Œè­˜åˆ¥å­ãŒæ“¬äŒŒåˆ—である堎合ずそうでなã??合がありたすã?" ;
520    //                                      break ;
521    //                      case DatabaseMetaData.columnNoNulls :
522    //                                      msg = "列が NULL 倀を蚱可しなã??合がありたすã?" ;
523    //                                      break ;
524    //                      case DatabaseMetaData.columnNullable :
525    //                                      msg = "列がå¿?š NULL 倀を蚱可されたすã?" ;
526    //                                      break ;
527    //                      case DatabaseMetaData.columnNullableUnknown :
528    //                                      msg = "列が NULL 倀を蚱可するかどã?‹äžæ?ですã?" ;
529    //                                      break ;
530    //                      case DatabaseMetaData.importedKeyCascade :
531    //                                      msg = "åˆ?UPDATE_RULE の堎合ã?、䞻キヌが曎新されるずきに、倖郚キヌ (むンポã?トされたキヌ) がそれに合è?するように倉曎されたすã?" ;
532    //                                      break ;
533    //                      case DatabaseMetaData.importedKeyInitiallyDeferred :
534    //                                      msg = "é?»¶å¯èƒœæ€§ã‚’瀺したすã?" ;
535    //                                      break ;
536    //                      case DatabaseMetaData.importedKeyInitiallyImmediate :
537    //                                      msg = "é?»¶å¯èƒœæ€§ã‚’瀺したすã?" ;
538    //                                      break ;
539    //                      case DatabaseMetaData.importedKeyNoAction :
540    //                                      msg = "åˆ?UPDATE_RULE および DELETE_RULE の堎合ã?、䞻キヌがむンポã?トされおã?‚‹å Žåˆã?それが曎新および削陀ができたせんã€? ;
541    //                                      break ;
542    //                      case DatabaseMetaData.importedKeyNotDeferrable :
543    //                                      msg = "é?»¶å¯èƒœæ€§ã‚’瀺したすã?" ;
544    //                                      break ;
545    //                      case DatabaseMetaData.importedKeyRestrict :
546    //                                      msg = "åˆ?UPDATE_RULE の堎合ã?、別のãƒ??ブルによっお倖郚キヌずしおむンポã?トされおã?‚‹å Žåˆã«ã€äž»ã‚­ãƒŒã¯æ›Žæ–°ã§ããŸã›ã‚“ã€? ;
547    //                                      break ;
548    //                      case DatabaseMetaData.importedKeySetDefault :
549    //                                      msg = "åˆ?UPDATE_RULE および DELETE_RULE の堎合ã?、䞻キヌが曎新たたã?削陀されたå?合に、倖郚キヌ (むンポã?トされたキヌ) がデフォルトå?に倉曎されたすã?" ;
550    //                                      break ;
551    //                      case DatabaseMetaData.importedKeySetNull :
552    //                                      msg = "åˆ?UPDATE_RULE および DELETE_RULE の堎合ã?䞻キヌが曎新たたã?削陀されたずきに、倖郚キヌ (むンポã?トされたキヌ) ã?NULL に倉曎されたすã?" ;
553    //                                      break ;
554    //                      case DatabaseMetaData.procedureColumnIn :
555    //                                      msg = "列が IN パラメヌタをæ?玍されたすã?" ;
556    //                                      break ;
557    //                      case DatabaseMetaData.procedureColumnInOut :
558    //                                      msg = "列が INOUT パラメヌタをæ?玍されたすã?" ;
559    //                                      break ;
560    //                      case DatabaseMetaData.procedureColumnOut :
561    //                                      msg = "列が OUT パラメヌタをæ?玍されたすã?" ;
562    //                                      break ;
563    //                      case DatabaseMetaData.procedureColumnResult :
564    //                                      msg = "列が結果をæ?玍されたすã?" ;
565    //                                      break ;
566    //                      case DatabaseMetaData.procedureColumnReturn :
567    //                                      msg = "列が戻りå?をæ?玍されたすã?" ;
568    //                                      break ;
569    //                      case DatabaseMetaData.procedureColumnUnknown :
570    //                                      msg = "列ã?型が䞍æ?ですã?" ;
571    //                                      break ;
572    //                      case DatabaseMetaData.procedureNoNulls :
573    //                                      msg = "NULL 倀が蚱可されたせんã€? ;
574    //                                      break ;
575    //                      case DatabaseMetaData.procedureNoResult :
576    //                                      msg = "プロシヌゞャが結果を返したせんã€? ;
577    //                                      break ;
578    //                      case DatabaseMetaData.procedureNullable :
579    //                                      msg = "NULL 倀が蚱可されたすã?" ;
580    //                                      break ;
581    //                      case DatabaseMetaData.procedureNullableUnknown :
582    //                                      msg = "NULL 倀が蚱可されるかどã?‹ãŒäžæ?ですã?" ;
583    //                                      break ;
584    //                      case DatabaseMetaData.procedureResultUnknown :
585    //                                      msg = "プロシヌゞャが結果を返すかどã?‹ãŒäžæ?ですã?" ;
586    //                                      break ;
587    //                      case DatabaseMetaData.procedureReturnsResult :
588    //                                      msg = "プロシヌゞャが結果を返すこずを瀺したすã?" ;
589    //                                      break ;
590    //                      case DatabaseMetaData.sqlStateSQL99 :
591    //                                      msg = "倀ã?SQL99 SQLSTATE 倀ですã?" ;
592    //                                      break ;
593    //                      case DatabaseMetaData.sqlStateXOpen :
594    //                                      msg = "倀ã?X/Open (珟圚は Open Group) の SQL CLI SQLSTATE 倀ですã?" ;
595    //                                      break ;
596    //                      case DatabaseMetaData.typeNoNulls :
597    //                                      msg = "こã?ãƒ??タの型で NULL 倀が蚱可されたせんã€? ;
598    //                                      break ;
599    //                      case DatabaseMetaData.typeNullable :
600    //                                      msg = "こã?ãƒ??タの型で NULL 倀が蚱可されたすã?" ;
601    //                                      break ;
602    //                      case DatabaseMetaData.typeNullableUnknown :
603    //                                      msg = "こã?ãƒ??タの型で NULL 倀が蚱可されるかどã?‹ãŒäžæ?ですã?" ;
604    //                                      break ;
605    //                      case DatabaseMetaData.typePredBasic :
606    //                                      msg = "WHERE . . .LIKE を陀くすべおの WHERE 怜玢のç¯?Œã“ã?ãƒ??タの型に基づくこずができたすã?" ;
607    //                                      break ;
608    //                      case DatabaseMetaData.typePredChar :
609    //                                      msg = "こã?型に基づくこずができる唯äž?? WHERE 怜玢のç¯?Œ WHERE . . .LIKE ですã?" ;
610    //                                      break ;
611    //                      case DatabaseMetaData.typePredNone :
612    //                                      msg = "こã?型で WHERE 怜玢のç¯?Œã‚µãƒã?トされおã?Ÿã›ã‚“ã€? ;
613    //                                      break ;
614    //                      case DatabaseMetaData.typeSearchable :
615    //                                      msg = "すべおの WHERE 怜玢のç¯?Œã“ã?型に基づくこずができたすã?" ;
616    //                                      break ;
617    //                      case DatabaseMetaData.versionColumnNotPseudo :
618    //                                      msg = "こã?バã?ゞョンの列が擬䌌列でありたせんã€? ;
619    //                                      break ;
620    //                      case DatabaseMetaData.versionColumnPseudo :
621    //                                      msg = "こã?バã?ゞョンの列が擬䌌列ですã?" ;
622    //                                      break ;
623    //                      case DatabaseMetaData.versionColumnUnknown :
624    //                                      msg = "こã?バã?ゞョンの列が擬䌌列である堎合ずそうでなã??合がありたすã?" ;
625    //                                      break ;
626    //                      default :
627    //                                      msg = "察象のメãƒ?‚»ãƒŒã‚žãŒã‚りたせんã€? ;
628    //                                      break ;
629    //              }
630    //
631    //              return msg ;
632    //      }
633    
634            /**
635             * å?ƒ¡ã‚œãƒ?ƒ‰æƒ??を画面に出力しおã?ãŸã™ã?
636             *
637             * @og.rev 5.5.3.2 (2012/06/08) JDk1.6 甚のメ゜ãƒ?ƒ‰ã‚’远åŠ?—たすã?
638             *
639             * @param metaData DatabaseMetaDataオブゞェクãƒ?
640             * @throws Throwable
641             */
642            private void callPrintMessage( final DatabaseMetaData metaData ) throws Throwable {
643                    // 単䜓ã?リタヌン倀を持぀ メタãƒ??タ
644    
645    //              int type = ResultSet.TYPE_FORWARD_ONLY ;
646    //              int concurrency = ResultSet.CONCUR_READ_ONLY;
647    //              int holdability = ResultSet.CLOSE_CURSORS_AT_COMMIT;
648    
649                    Integer type = ResultSet.TYPE_FORWARD_ONLY ;
650                    Integer concurrency = ResultSet.CONCUR_READ_ONLY;
651                    Integer holdability = ResultSet.CLOSE_CURSORS_AT_COMMIT;
652    
653                    jspPrint( "<table>" );
654                    jspPrint( "<tr class=\"row_h\"><th>No</th><th>キヌ</th><th>倀</th><th>説æ˜?/th></tr>" );
655    
656                    // 5.5.3.2 (2012/06/08) 個別に呌び出すç®?‰€ã‚’ã?リフレクションに倉曎ã€?
657                    for( int i=0; i<METHOD_LIST.length; i++ ) {
658                            MetaDataInvoke inv = METHOD_LIST[i];
659                            if( inv.isUseMethod( likeKey ) && inv.getType() < 10 ) {
660                                    Object obj = null;
661                                    switch( inv.getType() ) {
662                                            case 0: obj = inv.invokeA( metaData ); break;
663                                            case 1: obj = inv.invokeA( metaData,type ); break;
664                                            case 2: obj = inv.invokeA( metaData,type,concurrency ); break;
665                                            case 3: obj = inv.invokeA( metaData,holdability ); break;
666                                            case 4: obj = inv.invokeA( metaData ); break;
667                                            default : jspPrint( "*** タむプ䞍æ? ***" + HybsSystem.BR ); continue;
668                                    }
669                                    String msg = (obj == null) ? inv.getErrMsg() : String.valueOf( obj );
670    
671                                    String str = "<tr class=\"row_" + (rowNo++ % 2) + "\"><td>"
672                                                    + rowNo + "</td><td>"                       // 5.5.3.2 (2012/06/08) 行番号を衚瀺
673                                                    + inv.getMethod() + "</td><td>" + msg + "</td><td>" + inv.getComment() + "</td></tr>" + HybsSystem.CR ;
674                                    jspPrint( str );
675                            }
676                    }
677    
678                    // 5.5.3.2 (2012/06/08) 個別に呌び出すç®?‰€ã‚’ã?リフレクションに倉曎ã€?
679    //              for( int i=0; i<METHOD_LIST.length; i++ ) {
680    //                      String methodKey = METHOD_LIST[i][0];
681    //                      int    flag  = Integer.parseInt( METHOD_LIST[i][2] );                   // 0:通垞 1:type 2:type, concurrency 3:holdability 4:ResultSet.TYPE_FORWARD_ONLY 5:Connection.TRANSACTION_READ_COMMITTED
682    //                      if( likeKey == null || methodKey.indexOf( likeKey ) >= 0 ) {
683    //                              try {
684    //                                      Object obj= null;
685    //                                      if( flag == 0 ) {
686    //                                              obj= metaData.getClass().getMethod( methodKey ).invoke(metaData);
687    //                                      }
688    //                                      else if( flag == 1 ) {
689    //                                              obj= metaData.getClass().getMethod( methodKey,int.class ).invoke(metaData,type);
690    //                                      }
691    //                                      else if( flag == 2 ) {
692    //                                              obj= metaData.getClass().getMethod( methodKey,int.class,int.class ).invoke(metaData,type,concurrency);
693    //                                      }
694    //                                      else if( flag == 3 ) {
695    //                                              obj= metaData.getClass().getMethod( methodKey,int.class ).invoke(metaData,holdability);
696    //                                      }
697    //                                      else if( flag == 4 ) {
698    //                                              obj= metaData.getClass().getMethod( methodKey,int.class ).invoke(metaData,Integer.valueOf(ResultSet.TYPE_FORWARD_ONLY));
699    //                                              // TYPE_SCROLL_INSENSITIVE , TYPE_SCROLL_SENSITIVE
700    //                                      }
701    //                                      else if( flag == 5 ) {
702    //                                              obj= metaData.getClass().getMethod( methodKey,int.class ).invoke(metaData,Integer.valueOf(Connection.TRANSACTION_READ_COMMITTED));
703    //                                              // TRANSACTION_READ_UNCOMMITTED , TRANSACTION_REPEATABLE_READ , TRANSACTION_SERIALIZABLE
704    //                                      }
705    //
706    //                                      String str = "<tr class=\"row_" + (rowNo++ % 2) + "\"><td>"
707    //                                                      + rowNo + "</td><td>"                       // 5.5.3.2 (2012/06/08) 行番号を衚瀺
708    //                                                      + methodKey + "</td><td>" + obj + "</td><td>" + METHOD_LIST[i][1] + "</td></tr>" + HybsSystem.CR ;
709    //                                      jspPrint( str );
710    //                              }
711    //                              catch( Throwable ex ) {
712    //                                      String str = "<tr class=\"row_" + (rowNo++ % 2) + "\"><td>"
713    //                                                      + rowNo + "</td><td>"                       // 5.5.3.2 (2012/06/08) 行番号を衚瀺
714    //                                                      + methodKey + "</td><td>" + "*** 実行時゚ラヌ ***" + "</td><td>" + METHOD_LIST[i][1] + "</td></tr>" + HybsSystem.CR ;
715    //                                      jspPrint( str );
716    //                              }
717    //                      }
718    //              }
719    
720    //              try { printMessage( metaData.getCatalogSeparator() ,"getCatalogSeparator",getCatalogSeparator); }
721    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getCatalogSeparator",getCatalogSeparator); }
722    //              try { printMessage( metaData.getCatalogTerm() ,"getCatalogTerm",getCatalogTerm); }
723    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getCatalogTerm",getCatalogTerm); }
724    //              try { printMessage( metaData.getDatabaseProductName() ,"getDatabaseProductName",getDatabaseProductName); }
725    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getDatabaseProductName",getDatabaseProductName); }
726    //              try { printMessage( metaData.getDatabaseProductVersion() ,"getDatabaseProductVersion",getDatabaseProductVersion); }
727    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getDatabaseProductVersion",getDatabaseProductVersion); }
728    //              try { printMessage( metaData.getDriverMajorVersion() ,"getDriverMajorVersion",getDriverMajorVersion); }
729    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getDriverMajorVersion",getDriverMajorVersion); }
730    //              try { printMessage( metaData.getDriverMinorVersion() ,"getDriverMinorVersion",getDriverMinorVersion); }
731    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getDriverMinorVersion",getDriverMinorVersion); }
732    //              try { printMessage( metaData.getDriverName() ,"getDriverName",getDriverName); }
733    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getDriverName",getDriverName); }
734    //              try { printMessage( metaData.getDriverVersion() ,"getDriverVersion",getDriverVersion); }
735    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getDriverVersion",getDriverVersion); }
736    //              try { printMessage( metaData.getExtraNameCharacters() ,"getExtraNameCharacters",getExtraNameCharacters); }
737    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getExtraNameCharacters",getExtraNameCharacters); }
738    //              try { printMessage( metaData.getIdentifierQuoteString() ,"getIdentifierQuoteString",getIdentifierQuoteString); }
739    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getIdentifierQuoteString",getIdentifierQuoteString); }
740    //              try { printMessage( metaData.getNumericFunctions() ,"getNumericFunctions",getNumericFunctions); }
741    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getNumericFunctions",getNumericFunctions); }
742    //              try { printMessage( metaData.getProcedureTerm() ,"getProcedureTerm",getProcedureTerm); }
743    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getProcedureTerm",getProcedureTerm); }
744    //              try { printMessage( metaData.getSchemaTerm() ,"getSchemaTerm",getSchemaTerm); }
745    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getSchemaTerm",getSchemaTerm); }
746    //              try { printMessage( metaData.getSearchStringEscape() ,"getSearchStringEscape",getSearchStringEscape); }
747    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getSearchStringEscape",getSearchStringEscape); }
748    //              try { printMessage( metaData.getSQLKeywords() ,"getSQLKeywords",getSQLKeywords); }
749    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getSQLKeywords",getSQLKeywords); }
750    //              try { printMessage( metaData.getStringFunctions() ,"getStringFunctions",getStringFunctions); }
751    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getStringFunctions",getStringFunctions); }
752    //              try { printMessage( metaData.getSystemFunctions() ,"getSystemFunctions",getSystemFunctions); }
753    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getSystemFunctions",getSystemFunctions); }
754                    try { printMessage( metaData.getTimeDateFunctions() ,"getTimeDateFunctions",getTimeDateFunctions); }
755                            catch( Throwable e ) { printMessage( e.getMessage(),"getTimeDateFunctions",getTimeDateFunctions); }
756    //              try { printMessage( metaData.getURL() ,"getURL",getURL); }
757    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getURL",getURL); }
758    //              try { printMessage( metaData.getUserName() ,"getUserName",getUserName); }
759    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getUserName",getUserName); }
760    //              try { printMessage( metaData.getDefaultTransactionIsolation() ,"getDefaultTransactionIsolation",getDefaultTransactionIsolation); }
761    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getDefaultTransactionIsolation",getDefaultTransactionIsolation); }
762    //              try { printMessage( metaData.getSQLStateType() ,"getSQLStateType",getSQLStateType); }
763    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getSQLStateType",getSQLStateType); }
764    //              try { printMessage( metaData.getResultSetHoldability() ,"getResultSetHoldability",getResultSetHoldability); }
765    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getResultSetHoldability",getResultSetHoldability); }
766    //              try { printMessage( metaData.allProceduresAreCallable() ,"allProceduresAreCallable",allProceduresAreCallable); }
767    //                      catch( Throwable e ) { printMessage( e.getMessage(),"allProceduresAreCallable",allProceduresAreCallable); }
768    //              try { printMessage( metaData.allTablesAreSelectable() ,"allTablesAreSelectable",allTablesAreSelectable); }
769    //                      catch( Throwable e ) { printMessage( e.getMessage(),"allTablesAreSelectable",allTablesAreSelectable); }
770    //              try { printMessage( metaData.dataDefinitionCausesTransactionCommit() ,"dataDefinitionCausesTransactionCommit",dataDefinitionCausesTransactionCommit); }
771    //                      catch( Throwable e ) { printMessage( e.getMessage(),"dataDefinitionCausesTransactionCommit",dataDefinitionCausesTransactionCommit); }
772    //              try { printMessage( metaData.dataDefinitionIgnoredInTransactions() ,"dataDefinitionIgnoredInTransactions",dataDefinitionIgnoredInTransactions); }
773    //                      catch( Throwable e ) { printMessage( e.getMessage(),"dataDefinitionIgnoredInTransactions",dataDefinitionIgnoredInTransactions); }
774    //              try { printMessage( metaData.deletesAreDetected(type) ,"deletesAreDetected",deletesAreDetected); }
775    //                      catch( Throwable e ) { printMessage( e.getMessage(),"deletesAreDetected",deletesAreDetected); }
776    //              try { printMessage( metaData.doesMaxRowSizeIncludeBlobs() ,"doesMaxRowSizeIncludeBlobs",doesMaxRowSizeIncludeBlobs); }
777    //                      catch( Throwable e ) { printMessage( e.getMessage(),"doesMaxRowSizeIncludeBlobs",doesMaxRowSizeIncludeBlobs); }
778    //              try { printMessage( metaData.insertsAreDetected(type) ,"insertsAreDetected",insertsAreDetected); }
779    //                      catch( Throwable e ) { printMessage( e.getMessage(),"insertsAreDetected",insertsAreDetected); }
780    //              try { printMessage( metaData.isCatalogAtStart() ,"isCatalogAtStart",isCatalogAtStart); }
781    //                      catch( Throwable e ) { printMessage( e.getMessage(),"isCatalogAtStart",isCatalogAtStart); }
782    //              try { printMessage( metaData.isReadOnly() ,"isReadOnly",isReadOnly); }
783    //                      catch( Throwable e ) { printMessage( e.getMessage(),"isReadOnly",isReadOnly); }
784    //              try { printMessage( metaData.locatorsUpdateCopy() ,"locatorsUpdateCopy",locatorsUpdateCopy); }
785    //                      catch( Throwable e ) { printMessage( e.getMessage(),"locatorsUpdateCopy",locatorsUpdateCopy); }
786    //              try { printMessage( metaData.nullPlusNonNullIsNull() ,"nullPlusNonNullIsNull",nullPlusNonNullIsNull); }
787    //                      catch( Throwable e ) { printMessage( e.getMessage(),"nullPlusNonNullIsNull",nullPlusNonNullIsNull); }
788    //              try { printMessage( metaData.nullsAreSortedAtEnd() ,"nullsAreSortedAtEnd",nullsAreSortedAtEnd); }
789    //                      catch( Throwable e ) { printMessage( e.getMessage(),"nullsAreSortedAtEnd",nullsAreSortedAtEnd); }
790    //              try { printMessage( metaData.nullsAreSortedAtStart() ,"nullsAreSortedAtStart",nullsAreSortedAtStart); }
791    //                      catch( Throwable e ) { printMessage( e.getMessage(),"nullsAreSortedAtStart",nullsAreSortedAtStart); }
792    //              try { printMessage( metaData.nullsAreSortedHigh() ,"nullsAreSortedHigh",nullsAreSortedHigh); }
793    //                      catch( Throwable e ) { printMessage( e.getMessage(),"nullsAreSortedHigh",nullsAreSortedHigh); }
794    //              try { printMessage( metaData.nullsAreSortedLow() ,"nullsAreSortedLow",nullsAreSortedLow); }
795    //                      catch( Throwable e ) { printMessage( e.getMessage(),"nullsAreSortedLow",nullsAreSortedLow); }
796    //              try { printMessage( metaData.othersDeletesAreVisible(type) ,"othersDeletesAreVisible",othersDeletesAreVisible); }
797    //                      catch( Throwable e ) { printMessage( e.getMessage(),"othersDeletesAreVisible",othersDeletesAreVisible); }
798    //              try { printMessage( metaData.othersInsertsAreVisible(type) ,"othersInsertsAreVisible",othersInsertsAreVisible); }
799    //                      catch( Throwable e ) { printMessage( e.getMessage(),"othersInsertsAreVisible",othersInsertsAreVisible); }
800    //              try { printMessage( metaData.othersUpdatesAreVisible(type) ,"othersUpdatesAreVisible",othersUpdatesAreVisible); }
801    //                      catch( Throwable e ) { printMessage( e.getMessage(),"othersUpdatesAreVisible",othersUpdatesAreVisible); }
802    //              try { printMessage( metaData.ownDeletesAreVisible(type) ,"ownDeletesAreVisible",ownDeletesAreVisible); }
803    //                      catch( Throwable e ) { printMessage( e.getMessage(),"ownDeletesAreVisible",ownDeletesAreVisible); }
804    //              try { printMessage( metaData.ownInsertsAreVisible(type) ,"ownInsertsAreVisible",ownInsertsAreVisible); }
805    //                      catch( Throwable e ) { printMessage( e.getMessage(),"ownInsertsAreVisible",ownInsertsAreVisible); }
806    //              try { printMessage( metaData.ownUpdatesAreVisible(type) ,"ownUpdatesAreVisible",ownUpdatesAreVisible); }
807    //                      catch( Throwable e ) { printMessage( e.getMessage(),"ownUpdatesAreVisible",ownUpdatesAreVisible); }
808    //              try { printMessage( metaData.storesLowerCaseIdentifiers() ,"storesLowerCaseIdentifiers",storesLowerCaseIdentifiers); }
809    //                      catch( Throwable e ) { printMessage( e.getMessage(),"storesLowerCaseIdentifiers",storesLowerCaseIdentifiers); }
810    //              try { printMessage( metaData.storesLowerCaseQuotedIdentifiers() ,"storesLowerCaseQuotedIdentifiers",storesLowerCaseQuotedIdentifiers); }
811    //                      catch( Throwable e ) { printMessage( e.getMessage(),"storesLowerCaseQuotedIdentifiers",storesLowerCaseQuotedIdentifiers); }
812    //              try { printMessage( metaData.storesMixedCaseIdentifiers() ,"storesMixedCaseIdentifiers",storesMixedCaseIdentifiers); }
813    //                      catch( Throwable e ) { printMessage( e.getMessage(),"storesMixedCaseIdentifiers",storesMixedCaseIdentifiers); }
814    //              try { printMessage( metaData.storesMixedCaseQuotedIdentifiers() ,"storesMixedCaseQuotedIdentifiers",storesMixedCaseQuotedIdentifiers); }
815    //                      catch( Throwable e ) { printMessage( e.getMessage(),"storesMixedCaseQuotedIdentifiers",storesMixedCaseQuotedIdentifiers); }
816    //              try { printMessage( metaData.storesUpperCaseIdentifiers() ,"storesUpperCaseIdentifiers",storesUpperCaseIdentifiers); }
817    //                      catch( Throwable e ) { printMessage( e.getMessage(),"storesUpperCaseIdentifiers",storesUpperCaseIdentifiers); }
818    //              try { printMessage( metaData.storesUpperCaseQuotedIdentifiers() ,"storesUpperCaseQuotedIdentifiers",storesUpperCaseQuotedIdentifiers); }
819    //                      catch( Throwable e ) { printMessage( e.getMessage(),"storesUpperCaseQuotedIdentifiers",storesUpperCaseQuotedIdentifiers); }
820    //              try { printMessage( metaData.supportsAlterTableWithAddColumn() ,"supportsAlterTableWithAddColumn",supportsAlterTableWithAddColumn); }
821    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsAlterTableWithAddColumn",supportsAlterTableWithAddColumn); }
822    //              try { printMessage( metaData.supportsAlterTableWithDropColumn() ,"supportsAlterTableWithDropColumn",supportsAlterTableWithDropColumn); }
823    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsAlterTableWithDropColumn",supportsAlterTableWithDropColumn); }
824    //              try { printMessage( metaData.supportsANSI92EntryLevelSQL() ,"supportsANSI92EntryLevelSQL",supportsANSI92EntryLevelSQL); }
825    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsANSI92EntryLevelSQL",supportsANSI92EntryLevelSQL); }
826    //              try { printMessage( metaData.supportsANSI92FullSQL() ,"supportsANSI92FullSQL",supportsANSI92FullSQL); }
827    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsANSI92FullSQL",supportsANSI92FullSQL); }
828    //              try { printMessage( metaData.supportsANSI92IntermediateSQL() ,"supportsANSI92IntermediateSQL",supportsANSI92IntermediateSQL); }
829    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsANSI92IntermediateSQL",supportsANSI92IntermediateSQL); }
830    //              try { printMessage( metaData.supportsBatchUpdates() ,"supportsBatchUpdates",supportsBatchUpdates); }
831    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsBatchUpdates",supportsBatchUpdates); }
832    //              try { printMessage( metaData.supportsCatalogsInDataManipulation() ,"supportsCatalogsInDataManipulation",supportsCatalogsInDataManipulation); }
833    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsCatalogsInDataManipulation",supportsCatalogsInDataManipulation); }
834    //              try { printMessage( metaData.supportsCatalogsInIndexDefinitions() ,"supportsCatalogsInIndexDefinitions",supportsCatalogsInIndexDefinitions); }
835    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsCatalogsInIndexDefinitions",supportsCatalogsInIndexDefinitions); }
836    //              try { printMessage( metaData.supportsCatalogsInPrivilegeDefinitions() ,"supportsCatalogsInPrivilegeDefinitions",supportsCatalogsInPrivilegeDefinitions); }
837    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsCatalogsInPrivilegeDefinitions",supportsCatalogsInPrivilegeDefinitions); }
838    //              try { printMessage( metaData.supportsCatalogsInProcedureCalls() ,"supportsCatalogsInProcedureCalls",supportsCatalogsInProcedureCalls); }
839    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsCatalogsInProcedureCalls",supportsCatalogsInProcedureCalls); }
840    //              try { printMessage( metaData.supportsCatalogsInTableDefinitions() ,"supportsCatalogsInTableDefinitions",supportsCatalogsInTableDefinitions); }
841    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsCatalogsInTableDefinitions",supportsCatalogsInTableDefinitions); }
842    //              try { printMessage( metaData.supportsColumnAliasing() ,"supportsColumnAliasing",supportsColumnAliasing); }
843    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsColumnAliasing",supportsColumnAliasing); }
844    //              try { printMessage( metaData.supportsConvert() ,"supportsConvert",supportsConvertFunc); }
845    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsConvert",supportsConvertFunc); }
846    //              try { printMessage( metaData.supportsCoreSQLGrammar() ,"supportsCoreSQLGrammar",supportsCoreSQLGrammar); }
847    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsCoreSQLGrammar",supportsCoreSQLGrammar); }
848    //              try { printMessage( metaData.supportsCorrelatedSubqueries() ,"supportsCorrelatedSubqueries",supportsCorrelatedSubqueries); }
849    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsCorrelatedSubqueries",supportsCorrelatedSubqueries); }
850    //              try { printMessage( metaData.supportsDataDefinitionAndDataManipulationTransactions() ,"supportsDataDefinitionAndDataManipulationTransactions",supportsDataDefinitionAndDataManipulationTransactions); }
851    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsDataDefinitionAndDataManipulationTransactions",supportsDataDefinitionAndDataManipulationTransactions); }
852    //              try { printMessage( metaData.supportsDataManipulationTransactionsOnly() ,"supportsDataManipulationTransactionsOnly",supportsDataManipulationTransactionsOnly); }
853    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsDataManipulationTransactionsOnly",supportsDataManipulationTransactionsOnly); }
854    //              try { printMessage( metaData.supportsDifferentTableCorrelationNames() ,"supportsDifferentTableCorrelationNames",supportsDifferentTableCorrelationNames); }
855    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsDifferentTableCorrelationNames",supportsDifferentTableCorrelationNames); }
856    //              try { printMessage( metaData.supportsExpressionsInOrderBy() ,"supportsExpressionsInOrderBy",supportsExpressionsInOrderBy); }
857    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsExpressionsInOrderBy",supportsExpressionsInOrderBy); }
858    //              try { printMessage( metaData.supportsExtendedSQLGrammar() ,"supportsExtendedSQLGrammar",supportsExtendedSQLGrammar); }
859    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsExtendedSQLGrammar",supportsExtendedSQLGrammar); }
860    //              try { printMessage( metaData.supportsFullOuterJoins() ,"supportsFullOuterJoins",supportsFullOuterJoins); }
861    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsFullOuterJoins",supportsFullOuterJoins); }
862    //              try { printMessage( metaData.supportsGetGeneratedKeys() ,"supportsGetGeneratedKeys",supportsGetGeneratedKeys); }
863    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsGetGeneratedKeys",supportsGetGeneratedKeys); }
864    //              try { printMessage( metaData.supportsGroupBy() ,"supportsGroupBy",supportsGroupBy); }
865    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsGroupBy",supportsGroupBy); }
866    //              try { printMessage( metaData.supportsGroupByBeyondSelect() ,"supportsGroupByBeyondSelect",supportsGroupByBeyondSelect); }
867    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsGroupByBeyondSelect",supportsGroupByBeyondSelect); }
868    //              try { printMessage( metaData.supportsGroupByUnrelated() ,"supportsGroupByUnrelated",supportsGroupByUnrelated); }
869    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsGroupByUnrelated",supportsGroupByUnrelated); }
870    //              try { printMessage( metaData.supportsIntegrityEnhancementFacility() ,"supportsIntegrityEnhancementFacility",supportsIntegrityEnhancementFacility); }
871    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsIntegrityEnhancementFacility",supportsIntegrityEnhancementFacility); }
872    //              try { printMessage( metaData.supportsLikeEscapeClause() ,"supportsLikeEscapeClause",supportsLikeEscapeClause); }
873    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsLikeEscapeClause",supportsLikeEscapeClause); }
874    //              try { printMessage( metaData.supportsLimitedOuterJoins() ,"supportsLimitedOuterJoins",supportsLimitedOuterJoins); }
875    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsLimitedOuterJoins",supportsLimitedOuterJoins); }
876    //              try { printMessage( metaData.supportsMinimumSQLGrammar() ,"supportsMinimumSQLGrammar",supportsMinimumSQLGrammar); }
877    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsMinimumSQLGrammar",supportsMinimumSQLGrammar); }
878    //              try { printMessage( metaData.supportsMixedCaseIdentifiers() ,"supportsMixedCaseIdentifiers",supportsMixedCaseIdentifiers); }
879    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsMixedCaseIdentifiers",supportsMixedCaseIdentifiers); }
880    //              try { printMessage( metaData.supportsMixedCaseQuotedIdentifiers() ,"supportsMixedCaseQuotedIdentifiers",supportsMixedCaseQuotedIdentifiers); }
881    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsMixedCaseQuotedIdentifiers",supportsMixedCaseQuotedIdentifiers); }
882    //              try { printMessage( metaData.supportsMultipleOpenResults() ,"supportsMultipleOpenResults",supportsMultipleOpenResults); }
883    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsMultipleOpenResults",supportsMultipleOpenResults); }
884    //              try { printMessage( metaData.supportsMultipleResultSets() ,"supportsMultipleResultSets",supportsMultipleResultSets); }
885    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsMultipleResultSets",supportsMultipleResultSets); }
886    //              try { printMessage( metaData.supportsMultipleTransactions() ,"supportsMultipleTransactions",supportsMultipleTransactions); }
887    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsMultipleTransactions",supportsMultipleTransactions); }
888    //              try { printMessage( metaData.supportsNamedParameters() ,"supportsNamedParameters",supportsNamedParameters); }
889    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsNamedParameters",supportsNamedParameters); }
890    //              try { printMessage( metaData.supportsNonNullableColumns() ,"supportsNonNullableColumns",supportsNonNullableColumns); }
891    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsNonNullableColumns",supportsNonNullableColumns); }
892    //              try { printMessage( metaData.supportsOpenCursorsAcrossCommit() ,"supportsOpenCursorsAcrossCommit",supportsOpenCursorsAcrossCommit); }
893    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsOpenCursorsAcrossCommit",supportsOpenCursorsAcrossCommit); }
894    //              try { printMessage( metaData.supportsOpenCursorsAcrossRollback() ,"supportsOpenCursorsAcrossRollback",supportsOpenCursorsAcrossRollback); }
895    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsOpenCursorsAcrossRollback",supportsOpenCursorsAcrossRollback); }
896    //              try { printMessage( metaData.supportsOpenStatementsAcrossCommit() ,"supportsOpenStatementsAcrossCommit",supportsOpenStatementsAcrossCommit); }
897    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsOpenStatementsAcrossCommit",supportsOpenStatementsAcrossCommit); }
898    //              try { printMessage( metaData.supportsOpenStatementsAcrossRollback() ,"supportsOpenStatementsAcrossRollback",supportsOpenStatementsAcrossRollback); }
899    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsOpenStatementsAcrossRollback",supportsOpenStatementsAcrossRollback); }
900    //              try { printMessage( metaData.supportsOrderByUnrelated() ,"supportsOrderByUnrelated",supportsOrderByUnrelated); }
901    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsOrderByUnrelated",supportsOrderByUnrelated); }
902    //              try { printMessage( metaData.supportsOuterJoins() ,"supportsOuterJoins",supportsOuterJoins); }
903    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsOuterJoins",supportsOuterJoins); }
904    //              try { printMessage( metaData.supportsPositionedDelete() ,"supportsPositionedDelete",supportsPositionedDelete); }
905    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsPositionedDelete",supportsPositionedDelete); }
906    //              try { printMessage( metaData.supportsPositionedUpdate() ,"supportsPositionedUpdate",supportsPositionedUpdate); }
907    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsPositionedUpdate",supportsPositionedUpdate); }
908    //              try { printMessage( metaData.supportsResultSetConcurrency(type, concurrency) ,"supportsResultSetConcurrency",supportsResultSetConcurrency); }
909    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsResultSetConcurrency",supportsResultSetConcurrency); }
910    //              try { printMessage( metaData.supportsResultSetHoldability(holdability) ,"supportsResultSetHoldability",supportsResultSetHoldability); }
911    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsResultSetHoldability",supportsResultSetHoldability); }
912    //              try { printMessage( metaData.supportsResultSetType(ResultSet.TYPE_FORWARD_ONLY) ,"supportsResultSetType[TYPE_FORWARD_ONLY]",supportsResultSetType); }
913    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsResultSetType",supportsResultSetType); }
914    //              try { printMessage( metaData.supportsResultSetType(ResultSet.TYPE_SCROLL_INSENSITIVE) ,"supportsResultSetType[TYPE_SCROLL_INSENSITIVE]", supportsResultSetType); }
915    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsResultSetType",supportsResultSetType); }
916    //              try { printMessage( metaData.supportsResultSetType(ResultSet.TYPE_SCROLL_SENSITIVE) ,"supportsResultSetType[TYPE_SCROLL_SENSITIVE]", supportsResultSetType); }
917    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsResultSetType",supportsResultSetType); }
918    //              try { printMessage( metaData.supportsSavepoints() ,"supportsSavepoints",supportsSavepoints); }
919    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsSavepoints",supportsSavepoints); }
920    //              try { printMessage( metaData.supportsSchemasInDataManipulation() ,"supportsSchemasInDataManipulation",supportsSchemasInDataManipulation); }
921    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsSchemasInDataManipulation",supportsSchemasInDataManipulation); }
922    //              try { printMessage( metaData.supportsSchemasInIndexDefinitions() ,"supportsSchemasInIndexDefinitions",supportsSchemasInIndexDefinitions); }
923    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsSchemasInIndexDefinitions",supportsSchemasInIndexDefinitions); }
924    //              try { printMessage( metaData.supportsSchemasInPrivilegeDefinitions() ,"supportsSchemasInPrivilegeDefinitions",supportsSchemasInPrivilegeDefinitions); }
925    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsSchemasInPrivilegeDefinitions",supportsSchemasInPrivilegeDefinitions); }
926    //              try { printMessage( metaData.supportsSchemasInProcedureCalls() ,"supportsSchemasInProcedureCalls",supportsSchemasInProcedureCalls); }
927    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsSchemasInProcedureCalls",supportsSchemasInProcedureCalls); }
928    //              try { printMessage( metaData.supportsSchemasInTableDefinitions() ,"supportsSchemasInTableDefinitions",supportsSchemasInTableDefinitions); }
929    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsSchemasInTableDefinitions",supportsSchemasInTableDefinitions); }
930    //              try { printMessage( metaData.supportsSelectForUpdate() ,"supportsSelectForUpdate",supportsSelectForUpdate); }
931    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsSelectForUpdate",supportsSelectForUpdate); }
932    //              try { printMessage( metaData.supportsStatementPooling() ,"supportsStatementPooling",supportsStatementPooling); }
933    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsStatementPooling",supportsStatementPooling); }
934    //              try { printMessage( metaData.supportsStoredProcedures() ,"supportsStoredProcedures",supportsStoredProcedures); }
935    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsStoredProcedures",supportsStoredProcedures); }
936    //              try { printMessage( metaData.supportsSubqueriesInComparisons() ,"supportsSubqueriesInComparisons",supportsSubqueriesInComparisons); }
937    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsSubqueriesInComparisons",supportsSubqueriesInComparisons); }
938    //              try { printMessage( metaData.supportsSubqueriesInExists() ,"supportsSubqueriesInExists",supportsSubqueriesInExists); }
939    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsSubqueriesInExists",supportsSubqueriesInExists); }
940    //              try { printMessage( metaData.supportsSubqueriesInIns() ,"supportsSubqueriesInIns",supportsSubqueriesInIns); }
941    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsSubqueriesInIns",supportsSubqueriesInIns); }
942    //              try { printMessage( metaData.supportsSubqueriesInQuantifieds() ,"supportsSubqueriesInQuantifieds",supportsSubqueriesInQuantifieds); }
943    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsSubqueriesInQuantifieds",supportsSubqueriesInQuantifieds); }
944    //              try { printMessage( metaData.supportsTableCorrelationNames() ,"supportsTableCorrelationNames",supportsTableCorrelationNames); }
945    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsTableCorrelationNames",supportsTableCorrelationNames); }
946    //              try { printMessage( metaData.supportsTransactions() ,"supportsTransactions",supportsTransactions); }
947    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsTransactions",supportsTransactions); }
948    //              try { printMessage( metaData.supportsTransactionIsolationLevel(Connection.TRANSACTION_READ_COMMITTED) ,"supportsTransactionIsolationLevel[TRANSACTION_READ_COMMITTED]",supportsTransactionIsolationLevel); }
949    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsTransactionIsolationLevel",supportsTransactionIsolationLevel); }
950    //              try { printMessage( metaData.supportsTransactionIsolationLevel(Connection.TRANSACTION_READ_UNCOMMITTED) ,"supportsTransactionIsolationLevel[TRANSACTION_READ_UNCOMMITTED]",supportsTransactionIsolationLevel); }
951    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsTransactionIsolationLevel",supportsTransactionIsolationLevel); }
952    //              try { printMessage( metaData.supportsTransactionIsolationLevel(Connection.TRANSACTION_REPEATABLE_READ) ,"supportsTransactionIsolationLevel[TRANSACTION_REPEATABLE_READ]",supportsTransactionIsolationLevel); }
953    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsTransactionIsolationLevel",supportsTransactionIsolationLevel); }
954    //              try { printMessage( metaData.supportsTransactionIsolationLevel(Connection.TRANSACTION_SERIALIZABLE) ,"supportsTransactionIsolationLevel[TRANSACTION_SERIALIZABLE]",supportsTransactionIsolationLevel); }
955    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsTransactionIsolationLevel",supportsTransactionIsolationLevel); }
956    //              try { printMessage( metaData.supportsUnion() ,"supportsUnion",supportsUnion); }
957    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsUnion",supportsUnion); }
958    //              try { printMessage( metaData.supportsUnionAll() ,"supportsUnionAll",supportsUnionAll); }
959    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsUnionAll",supportsUnionAll); }
960    //              try { printMessage( metaData.updatesAreDetected(type) ,"updatesAreDetected",updatesAreDetected); }
961    //                      catch( Throwable e ) { printMessage( e.getMessage(),"updatesAreDetected",updatesAreDetected); }
962    //              try { printMessage( metaData.usesLocalFilePerTable() ,"usesLocalFilePerTable",usesLocalFilePerTable); }
963    //                      catch( Throwable e ) { printMessage( e.getMessage(),"usesLocalFilePerTable",usesLocalFilePerTable); }
964    //              try { printMessage( metaData.usesLocalFiles() ,"usesLocalFiles",usesLocalFiles); }
965    //                      catch( Throwable e ) { printMessage( e.getMessage(),"usesLocalFiles",usesLocalFiles); }
966    //
967    //              // 5.5.3.2 (2012/06/08) JDk1.6 甚のメ゜ãƒ?ƒ‰ã‚’远åŠ?—たすã?
968    //              try { printMessage( metaData.autoCommitFailureClosesAllResultSets() ,"autoCommitFailureClosesAllResultSets",autoCommitFailureClosesAllResultSets); }
969    //                      catch( Throwable e ) { printMessage( e.getMessage(),"autoCommitFailureClosesAllResultSets",autoCommitFailureClosesAllResultSets); }
970    //              try { printMessage( metaData.getDatabaseMajorVersion() ,"getDatabaseMajorVersion",getDatabaseMajorVersion); }
971    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getDatabaseMajorVersion",getDatabaseMajorVersion); }
972    //              try { printMessage( metaData.getDatabaseMinorVersion() ,"getDatabaseMinorVersion",getDatabaseMinorVersion); }
973    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getDatabaseMinorVersion",getDatabaseMinorVersion); }
974    //              try { printMessage( metaData.getJDBCMajorVersion() ,"getJDBCMajorVersion",getJDBCMajorVersion); }
975    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getJDBCMajorVersion",getJDBCMajorVersion); }
976    //              try { printMessage( metaData.getJDBCMinorVersion() ,"getJDBCMinorVersion",getJDBCMinorVersion); }
977    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getJDBCMinorVersion",getJDBCMinorVersion); }
978    //              try { printMessage( metaData.getMaxBinaryLiteralLength() ,"getMaxBinaryLiteralLength",getMaxBinaryLiteralLength); }
979    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getMaxBinaryLiteralLength",getMaxBinaryLiteralLength); }
980    //              try { printMessage( metaData.getMaxCatalogNameLength() ,"getMaxCatalogNameLength",getMaxCatalogNameLength); }
981    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getMaxCatalogNameLength",getMaxCatalogNameLength); }
982    //              try { printMessage( metaData.getMaxCharLiteralLength() ,"getMaxCharLiteralLength",getMaxCharLiteralLength); }
983    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getMaxCharLiteralLength",getMaxCharLiteralLength); }
984    //              try { printMessage( metaData.getMaxColumnNameLength() ,"getMaxColumnNameLength",getMaxColumnNameLength); }
985    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getMaxColumnNameLength",getMaxColumnNameLength); }
986    //              try { printMessage( metaData.getMaxColumnsInGroupBy() ,"getMaxColumnsInGroupBy",getMaxColumnsInGroupBy); }
987    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getMaxColumnsInGroupBy",getMaxColumnsInGroupBy); }
988    //              try { printMessage( metaData.getMaxColumnsInIndex() ,"getMaxColumnsInIndex",getMaxColumnsInIndex); }
989    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getMaxColumnsInIndex",getMaxColumnsInIndex); }
990    //              try { printMessage( metaData.getMaxColumnsInOrderBy() ,"getMaxColumnsInOrderBy",getMaxColumnsInOrderBy); }
991    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getMaxColumnsInOrderBy",getMaxColumnsInOrderBy); }
992    //              try { printMessage( metaData.getMaxColumnsInSelect() ,"getMaxColumnsInSelect",getMaxColumnsInSelect); }
993    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getMaxColumnsInSelect",getMaxColumnsInSelect); }
994    //              try { printMessage( metaData.getMaxColumnsInTable() ,"getMaxColumnsInTable",getMaxColumnsInTable); }
995    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getMaxColumnsInTable",getMaxColumnsInTable); }
996    //              try { printMessage( metaData.getMaxConnections() ,"getMaxConnections",getMaxConnections); }
997    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getMaxConnections",getMaxConnections); }
998    //              try { printMessage( metaData.getMaxCursorNameLength() ,"getMaxCursorNameLength",getMaxCursorNameLength); }
999    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getMaxCursorNameLength",getMaxCursorNameLength); }
1000    //              try { printMessage( metaData.getMaxIndexLength() ,"getMaxIndexLength",getMaxIndexLength); }
1001    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getMaxIndexLength",getMaxIndexLength); }
1002    //              try { printMessage( metaData.getMaxProcedureNameLength() ,"getMaxProcedureNameLength",getMaxProcedureNameLength); }
1003    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getMaxProcedureNameLength",getMaxProcedureNameLength); }
1004    //              try { printMessage( metaData.getMaxRowSize() ,"getMaxRowSize",getMaxRowSize); }
1005    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getMaxRowSize",getMaxRowSize); }
1006    //              try { printMessage( metaData.getMaxSchemaNameLength() ,"getMaxSchemaNameLength",getMaxSchemaNameLength); }
1007    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getMaxSchemaNameLength",getMaxSchemaNameLength); }
1008    //              try { printMessage( metaData.getMaxStatementLength() ,"getMaxStatementLength",getMaxStatementLength); }
1009    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getMaxStatementLength",getMaxStatementLength); }
1010    //              try { printMessage( metaData.getMaxStatements() ,"getMaxStatements",getMaxStatements); }
1011    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getMaxStatements",getMaxStatements); }
1012    //              try { printMessage( metaData.getMaxTableNameLength() ,"getMaxTableNameLength",getMaxTableNameLength); }
1013    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getMaxTableNameLength",getMaxTableNameLength); }
1014    //              try { printMessage( metaData.getMaxTablesInSelect() ,"getMaxTablesInSelect",getMaxTablesInSelect); }
1015    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getMaxTablesInSelect",getMaxTablesInSelect); }
1016    //              try { printMessage( metaData.getMaxUserNameLength() ,"getMaxUserNameLength",getMaxUserNameLength); }
1017    //                      catch( Throwable e ) { printMessage( e.getMessage(),"getMaxUserNameLength",getMaxUserNameLength); }
1018    //              try { printMessage( metaData.supportsConvert() ,"supportsConvert",supportsConvert); }
1019    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsConvert",supportsConvert); }
1020    //              try { printMessage( metaData.supportsStoredFunctionsUsingCallSyntax() ,"supportsStoredFunctionsUsingCallSyntax",supportsStoredFunctionsUsingCallSyntax); }
1021    //                      catch( Throwable e ) { printMessage( e.getMessage(),"supportsStoredFunctionsUsingCallSyntax",supportsStoredFunctionsUsingCallSyntax); }
1022    
1023                    jspPrint( "</table>" );
1024    
1025                    if( metaData.supportsConvert() ) {
1026                            supportsConvert( metaData );
1027                    }
1028    
1029                    // ResultSet のリタヌン倀を持぀ メタãƒ??タ
1030                    boolean nullable = true;
1031                    int scope = 0;
1032    
1033                    // 5.5.3.2 (2012/06/08) 個別に呌び出すç®?‰€ã‚’ã?リフレクションに倉曎ã€?
1034                    for( int i=0; i<METHOD_LIST.length; i++ ) {
1035                            MetaDataInvoke inv = METHOD_LIST[i];
1036                            if( inv.isUseMethod( likeKey ) && inv.getType() >= 10 ) {
1037                                    ResultSet obj = null;
1038                                    switch( inv.getType() ) {
1039                                            case 50: obj = inv.invokeB( metaData ); break;
1040                                            case 60:
1041                                            case 62:
1042                                            case 63:
1043                                            case 64:
1044                                            case 65: obj = inv.invokeB( metaData, catalog, schema, tableName ); break;
1045                                            case 70:
1046                                            case 71: obj = inv.invokeB( metaData, catalog, schema, typeName ); break;
1047                                            case 61: obj = inv.invokeB( metaData, catalog, schema, tableName, columnName ); break;
1048                                            case 72: obj = inv.invokeB( metaData, catalog, schema, typeName, attributeName ); break;
1049                                            case 81: obj = inv.invokeB( metaData, catalog, schema, procedureName, columnName ); break;
1050                                            case 80: obj = inv.invokeB( metaData, catalog, schema, procedureName ); break;
1051                                            default : jspPrint( "*** タむプ䞍æ? ***" + HybsSystem.BR ); continue;
1052                                    }
1053    
1054                                    jspPrint( inv.getMethod() + ":" + inv.getComment() + HybsSystem.BR );
1055                                    if( obj != null ) {
1056                                            jspPrint( makeTableTag( resultToString( obj ) ) );
1057                                    }
1058                                    else {
1059                                            jspPrint( inv.getErrMsg() + HybsSystem.BR );
1060                                    }
1061                            }
1062                    }
1063    
1064                    // 以䞋ã?リフレクションがã?゚ラヌなどで結果を返さなã?ƒ¡ã‚œãƒ?ƒ‰ã€?
1065                    jspPrint( "****************************************************************************************************" + HybsSystem.BR );
1066    
1067                    if( likeKey == null || "getAttributes".indexOf( likeKey ) >= 0 ) {
1068                            jspPrint( "getAttributes:" + getAttributes + HybsSystem.BR );
1069                            try { printMessage( metaData.getAttributes(catalog, schema, typeName, attributeName) ,getAttributes); }
1070                                    catch( Throwable e ) { printMessage( e.getMessage() ,getAttributes); }
1071                    }
1072    //              if( likeKey == null || "getBestRowIdentifier".indexOf( likeKey ) >= 0 ) {
1073    //                      jspPrint( "getBestRowIdentifier:B:" + getBestRowIdentifier + HybsSystem.BR );
1074    //                      try { printMessage( metaData.getBestRowIdentifier(catalog, schema, tableName, scope, nullable) ,getBestRowIdentifier); }
1075    //                              catch( Throwable e ) { printMessage( e.getMessage() ,getBestRowIdentifier); }
1076    //              }
1077    //              if( likeKey == null || "getCatalogs".indexOf( likeKey ) >= 0 ) {
1078    //                      jspPrint( "getCatalogs:" + getCatalogs + HybsSystem.BR );
1079    //                      try { printMessage( metaData.getCatalogs() ,getCatalogs); }
1080    //                              catch( Throwable e ) { printMessage( e.getMessage() ,getCatalogs); }
1081    //              }
1082    //              if( likeKey == null || "getColumnPrivileges".indexOf( likeKey ) >= 0 ) {
1083    //                      jspPrint( "getColumnPrivileges:" + getColumnPrivileges + HybsSystem.BR );
1084    //                      try { printMessage( metaData.getColumnPrivileges(catalog, schema, tableName, columnName) ,getColumnPrivileges); }
1085    //                              catch( Throwable e ) { printMessage( e.getMessage() ,getColumnPrivileges); }
1086    //              }
1087                    if( likeKey == null || "getColumns".indexOf( likeKey ) >= 0 ) {
1088                            jspPrint( "getColumns:" + getColumns + HybsSystem.BR );
1089                            try { printMessage( metaData.getColumns(catalog, schema, tableName, columnName) ,getColumns); }
1090                                    catch( Throwable e ) { printMessage( e.getMessage() ,getColumns); }
1091                    }
1092    //              if( likeKey == null || "getCrossReference".indexOf( likeKey ) >= 0 ) {
1093    //                      jspPrint( "getCrossReference:" + getCrossReference + HybsSystem.BR );
1094    ////                    try { printMessage( metaData.getCrossReference(catalog, schema, tableName, catalog, schema, tableName) ,getCrossReference); }
1095    //                      try { printMessage( metaData.getCrossReference(catalog, schema, tableName, null, null, null) ,getCrossReference); }
1096    //                              catch( Throwable e ) { printMessage( e.getMessage() ,getCrossReference); }
1097    //              }
1098    //              if( likeKey == null || "getExportedKeys".indexOf( likeKey ) >= 0 ) {
1099    //                      jspPrint( "getExportedKeys:" + getExportedKeys + HybsSystem.BR );
1100    //                      try { printMessage( metaData.getExportedKeys(catalog, schema, tableName) ,getExportedKeys); }
1101    //                              catch( Throwable e ) { printMessage( e.getMessage() ,getExportedKeys); }
1102    //              }
1103    //              if( likeKey == null || "getImportedKeys".indexOf( likeKey ) >= 0 ) {
1104    //                      jspPrint( "getImportedKeys:" + getImportedKeys + HybsSystem.BR );
1105    //                      try { printMessage( metaData.getImportedKeys(catalog, schema, tableName) ,getImportedKeys); }
1106    //                              catch( Throwable e ) { printMessage( e.getMessage() ,getImportedKeys); }
1107    //              }
1108                    if( likeKey == null || "getIndexInfo".indexOf( likeKey ) >= 0 ) {
1109                            jspPrint( "getIndexInfo:" + getIndexInfo + HybsSystem.BR );
1110                            try { printMessage( metaData.getIndexInfo(catalog, schema, tableName, false, false) ,getIndexInfo); }
1111                                    catch( Throwable e ) { printMessage( e.getMessage() ,getIndexInfo); }
1112                    }
1113    //              if( likeKey == null || "getPrimaryKeys".indexOf( likeKey ) >= 0 ) {
1114    //                      jspPrint( "getPrimaryKeys:" + getPrimaryKeys + HybsSystem.BR );
1115    //                      try { printMessage( metaData.getPrimaryKeys(catalog, schema, tableName) ,getPrimaryKeys); }
1116    //                              catch( Throwable e ) { printMessage( e.getMessage() ,getPrimaryKeys); }
1117    //              }
1118    //              if( likeKey == null || "getProcedureColumns".indexOf( likeKey ) >= 0 ) {
1119    //                      jspPrint( "getProcedureColumns:" + getProcedureColumns + HybsSystem.BR );
1120    //                      try { printMessage( metaData.getProcedureColumns(catalog, schema, procedureName, columnName) ,getProcedureColumns); }
1121    //                              catch( Throwable e ) { printMessage( e.getMessage() ,getProcedureColumns); }
1122    //              }
1123    //              if( likeKey == null || "getProcedures".indexOf( likeKey ) >= 0 ) {
1124    //                      jspPrint( "getProcedures:" + getProcedures + HybsSystem.BR );
1125    //                      try { printMessage( metaData.getProcedures(catalog, schema, procedureName) ,getProcedures); }
1126    //                              catch( Throwable e ) { printMessage( e.getMessage() ,getProcedures); }
1127    //              }
1128    //              if( likeKey == null || "getSchemas".indexOf( likeKey ) >= 0 ) {
1129    //                      jspPrint( "getSchemas:" + getSchemas + HybsSystem.BR );
1130    //                      try { printMessage( metaData.getSchemas() ,getSchemas); }
1131    //                              catch( Throwable e ) { printMessage( e.getMessage() ,getSchemas); }
1132    //              }
1133                    if( likeKey == null || "getSuperTables".indexOf( likeKey ) >= 0 ) {
1134                            jspPrint( "getSuperTables:" + getSuperTables + HybsSystem.BR );
1135                            try { printMessage( metaData.getSuperTables(catalog, schema, tableName) ,getSuperTables); }
1136                                    catch( Throwable e ) { printMessage( e.getMessage() ,getSuperTables); }
1137                    }
1138                    if( likeKey == null || "getSuperTypes".indexOf( likeKey ) >= 0 ) {
1139                            jspPrint( "getSuperTypes:" + getSuperTypes + HybsSystem.BR );
1140                            try { printMessage( metaData.getSuperTypes(catalog, schema, typeName) ,getSuperTypes); }
1141                                    catch( Throwable e ) { printMessage( e.getMessage() ,getSuperTypes); }
1142                    }
1143    //              if( likeKey == null || "getTablePrivileges".indexOf( likeKey ) >= 0 ) {
1144    //                      jspPrint( "getTablePrivileges:" + getTablePrivileges + HybsSystem.BR );
1145    //                      try { printMessage( metaData.getTablePrivileges(catalog, schema, tableName) ,getTablePrivileges); }
1146    //                              catch( Throwable e ) { printMessage( e.getMessage() ,getTablePrivileges); }
1147    //              }
1148    //              if( likeKey == null || "getTables".indexOf( likeKey ) >= 0 ) {
1149    //                      jspPrint( "getTables:" + getTables + HybsSystem.BR );
1150    //                      try { printMessage( metaData.getTables(catalog, schema, tableName, null) ,getTables); }
1151    //                              catch( Throwable e ) { printMessage( e.getMessage() ,getTables); }
1152    //              }
1153    //              if( likeKey == null || "getTableTypes".indexOf( likeKey ) >= 0 ) {
1154    //                      jspPrint( "getTableTypes:" + getTableTypes + HybsSystem.BR );
1155    //                      try { printMessage( metaData.getTableTypes() ,getTableTypes); }
1156    //                              catch( Throwable e ) { printMessage( e.getMessage() ,getTableTypes); }
1157    //              }
1158                    if( likeKey == null || "getTypeInfo".indexOf( likeKey ) >= 0 ) {
1159                            jspPrint( "getTypeInfo:" + getTypeInfo + HybsSystem.BR );
1160                            try { printMessage( metaData.getTypeInfo() ,getTypeInfo); }
1161                                    catch( Throwable e ) { printMessage( e.getMessage() ,getTypeInfo); }
1162                    }
1163    //              if( likeKey == null || "getUDTs".indexOf( likeKey ) >= 0 ) {
1164    //                      jspPrint( "getUDTs:" + getUDTs + HybsSystem.BR );
1165    //                      try { printMessage( metaData.getUDTs(catalog, schema, typeName, null) ,getUDTs); }
1166    //                              catch( Throwable e ) { printMessage( e.getMessage() ,getUDTs); }
1167    //              }
1168    //              if( likeKey == null || "getVersionColumns".indexOf( likeKey ) >= 0 ) {
1169    //                      jspPrint( "getVersionColumns:" + getVersionColumns + HybsSystem.BR );
1170    //                      try { printMessage( metaData.getVersionColumns(catalog, schema, tableName) ,getVersionColumns); }
1171    //                              catch( Throwable e ) { printMessage( e.getMessage() ,getVersionColumns); }
1172    //              }
1173    //
1174    //              // 5.5.3.2 (2012/06/08) JDk1.6 甚のメ゜ãƒ?ƒ‰ã‚’远åŠ?—たすã?
1175    //              if( likeKey == null || "getClientInfoProperties".indexOf( likeKey ) >= 0 ) {
1176    //                      jspPrint( "getClientInfoProperties:" + getClientInfoProperties + HybsSystem.BR );
1177    //                      try { printMessage( metaData.getClientInfoProperties() ,getClientInfoProperties); }
1178    //                              catch( Throwable e ) { printMessage( e.getMessage() ,getClientInfoProperties); }
1179    //              }
1180    //              if( likeKey == null || "getFunctionColumns".indexOf( likeKey ) >= 0 ) {
1181    //                      jspPrint( "getFunctionColumns:" + getFunctionColumns + HybsSystem.BR );
1182    //                      try { printMessage( metaData.getFunctionColumns(catalog, schema, procedureName ,columnName),getFunctionColumns); }
1183    //                              catch( Throwable e ) { printMessage( e.getMessage() ,getFunctionColumns); }
1184    //              }
1185    //              if( likeKey == null || "getFunctions".indexOf( likeKey ) >= 0 ) {
1186    //                      jspPrint( "getFunctions:" + getFunctions + HybsSystem.BR );
1187    //                      try { printMessage( metaData.getFunctions(catalog, schema, procedureName) ,getFunctions); }
1188    //                              catch( Throwable e ) { printMessage( e.getMessage() ,getFunctions); }
1189    //              }
1190            }
1191    
1192            /**
1193             * ãƒ??タベã?スの Types 定数を文字å?に倉換したãƒ??ブルを画面に出力したすã?
1194             *
1195             * @param metaData DatabaseMetaDataオブゞェクãƒ?
1196             * @throws Throwable
1197             * @see java.sql.Types
1198             */
1199            private void supportsConvert( final DatabaseMetaData metaData ) throws Throwable {
1200    
1201                    int cnt = 36;
1202                    int[]    key = new int[cnt] ;
1203                    String[] msg = new String[cnt] ;
1204    
1205                    int i = 0;
1206                    key[i] = Types.ARRAY ;                  msg[i++] = "ARRAY" ;                    // 0
1207                    key[i] = Types.BIGINT ;                 msg[i++] = "BIGINT" ;                   // 1
1208                    key[i] = Types.BINARY ;                 msg[i++] = "BINARY" ;                   // 2
1209                    key[i] = Types.BIT ;                    msg[i++] = "BIT" ;                              // 3
1210                    key[i] = Types.BLOB ;                   msg[i++] = "BLOB" ;                             // 4
1211                    key[i] = Types.BOOLEAN ;                msg[i++] = "BOOLEAN" ;                  // 5
1212                    key[i] = Types.CHAR ;                   msg[i++] = "CHAR" ;                             // 6
1213                    key[i] = Types.CLOB ;                   msg[i++] = "CLOB" ;                             // 7
1214                    key[i] = Types.DATALINK ;               msg[i++] = "DATALINK" ;                 // 8
1215                    key[i] = Types.DATE ;                   msg[i++] = "DATE" ;                             // 9
1216                    key[i] = Types.DECIMAL ;                msg[i++] = "DECIMAL" ;                  // 10
1217                    key[i] = Types.DISTINCT ;               msg[i++] = "DISTINCT" ;                 // 11
1218                    key[i] = Types.DOUBLE ;                 msg[i++] = "DOUBLE" ;                   // 12
1219                    key[i] = Types.FLOAT ;                  msg[i++] = "FLOAT" ;                    // 13
1220                    key[i] = Types.INTEGER ;                msg[i++] = "INTEGER" ;                  // 14
1221                    key[i] = Types.JAVA_OBJECT ;    msg[i++] = "JAVA_OBJECT" ;              // 15
1222                    key[i] = Types.LONGNVARCHAR ;   msg[i++] = "LONGNVARCHAR" ;             // 16   5.5.3.2 (2012/06/08)
1223                    key[i] = Types.LONGVARBINARY ;  msg[i++] = "LONGVARBINARY" ;    // 17
1224                    key[i] = Types.LONGVARCHAR ;    msg[i++] = "LONGVARCHAR" ;              // 18
1225                    key[i] = Types.NCHAR ;                  msg[i++] = "NCHAR" ;                    // 19   5.5.3.2 (2012/06/08)
1226                    key[i] = Types.NCLOB ;                  msg[i++] = "NCLOB" ;                    // 20   5.5.3.2 (2012/06/08)
1227                    key[i] = Types.NULL ;                   msg[i++] = "NULL" ;                             // 21
1228                    key[i] = Types.NUMERIC ;                msg[i++] = "NUMERIC" ;                  // 22
1229                    key[i] = Types.NVARCHAR ;               msg[i++] = "NVARCHAR" ;                 // 23   5.5.3.2 (2012/06/08)
1230                    key[i] = Types.OTHER ;                  msg[i++] = "OTHER" ;                    // 24
1231                    key[i] = Types.REAL ;                   msg[i++] = "REAL" ;                             // 25
1232                    key[i] = Types.REF ;                    msg[i++] = "REF" ;                              // 26
1233                    key[i] = Types.ROWID ;                  msg[i++] = "ROWID" ;                    // 27   5.5.3.2 (2012/06/08)
1234                    key[i] = Types.SMALLINT ;               msg[i++] = "SMALLINT" ;                 // 28   5.5.3.2 (2012/06/08)
1235                    key[i] = Types.SQLXML ;                 msg[i++] = "SQLXML" ;                   // 29
1236                    key[i] = Types.STRUCT ;                 msg[i++] = "STRUCT" ;                   // 30
1237                    key[i] = Types.TIME ;                   msg[i++] = "TIME" ;                             // 31
1238                    key[i] = Types.TIMESTAMP ;              msg[i++] = "TIMESTAMP" ;                // 32
1239                    key[i] = Types.TINYINT ;                msg[i++] = "TINYINT" ;                  // 33
1240                    key[i] = Types.VARBINARY ;              msg[i++] = "VARBINARY" ;                // 34
1241                    key[i] = Types.VARCHAR ;                msg[i  ] = "VARCHAR" ;                  // 35
1242    
1243                    // それぞれ、Types 名称甚のフィヌルドを远åŠ?
1244                    String[][] table = new String[cnt+1][cnt+1];            // ヘッãƒ??行を远åŠ?
1245                    for( int hd=0; hd<cnt; hd++ ) {
1246                            table[0][hd+1] = msg[hd];               // 行ã?ヘッãƒ??
1247                            table[hd+1][0] = msg[hd];               // 列ã?ヘッãƒ??
1248                    }
1249    
1250                    for( int row=0; row<cnt; row++ ) {
1251                            for( int clm=0; clm<cnt; clm++ ) {
1252                                    if( metaData.supportsConvert( key[row], key[clm]) ) {
1253                                            table[row+1][clm+1] = "â—? ;
1254                                    }
1255                                    else {
1256                                            table[row+1][clm+1] = "Ã? ;
1257                                    }
1258                            }
1259                    }
1260    
1261                    jspPrint( supportsConvertFunc + HybsSystem.BR );
1262                    jspPrint( makeTableTag( table ) );
1263            }
1264    
1265            // 5.5.3.2 (2012/06/08) メ゜ãƒ?ƒ‰ã®Mapですã?é ?ºã‚’登録é ?«ä¿ã€ãŸã‚ã€LinkedHashMap を䜿ã?Ÿã™ã?
1266    
1267    //      private static final String[][] METHOD_LIST = new String[][] {
1268    //                { "getCatalogSeparator" , "こã?ãƒ??タベã?スがカタログ名ずãƒ??ブル名ã?セパレヌタずしお䜿甚する String"  , "0" }
1269    //              , { "getCatalogTerm" , "「catalog」に察するãƒ??タベã?スベンãƒ??の掚奚甚語を取埗したすã? "  , "0" }
1270    //              , { "getDatabaseProductName" , "こã?ãƒ??タベã?ス補品ã?名前を取埗したすã? "  , "0" }
1271    //              , { "getDatabaseProductVersion" , "こã?ãƒ??タベã?ス補品ã?バã?ゞョンを取埗したすã? "  , "0" }
1272    //              , { "getDriverMajorVersion" , "こã? JDBC ドラむバã?メゞャヌバã?ゞョンを取埗したすã? "  , "0" }
1273    //              , { "getDriverMinorVersion" , "こã? JDBC ドラむバã?マむナã?バã?ゞョンを取埗したすã? "  , "0" }
1274    //              , { "getDriverName" , "こã? JDBC ドラむバã?名前を取埗したすã? "  , "0" }
1275    //              , { "getDriverVersion" , "こã? JDBC ドラむバã?バã?ゞョンã‚?String"  , "0" }
1276    //              , { "getExtraNameCharacters" , "匕甚笊で囲たれおã?ªã?­˜åˆ¥åã«äœ¿ç”šã§ãã‚‹ã™ã¹ãŠã®ã€Œç‰¹æ®Šã?æ–?­?(a-z、A-Zã€?-9、およã? _ 以å€? を取埗したすã? "  , "0" }
1277    //              , { "getIdentifierQuoteString" , "SQL 識別子を匕甚するのに䜿甚するæ–?­—å?を取埗したすã? "  , "0" }
1278    //              , { "getNumericFunctions" , "こã?ãƒ??タベã?スで䜿甚可胜なコンマで区åˆ?£ãŸæ•°å­Šé–¢æ•°ã®ãƒªã‚¹ãƒˆã‚’取埗したすã? "  , "0" }
1279    //              , { "getProcedureTerm" , "「procedure」に察するãƒ??タベã?スベンãƒ??の掚奚甚語を取埗したすã? "  , "0" }
1280    //              , { "getSchemaTerm" , "「schema」に察するãƒ??タベã?スベンãƒ??の掚奚甚語を取埗したすã? "  , "0" }
1281    //              , { "getSearchStringEscape" , "ワむルドカヌド文字を゚スケヌプするã?に䜿甚できるæ–?­—å?を取埗したすã? "  , "0" }
1282    //              , { "getSQLKeywords" , "こã?ãƒ??タベã?スの SQL キヌワヌドであっお、SQL92 のキヌワヌドではなã??すべおのキヌワヌドをコンマで区åˆ?£ãŸãƒªã‚¹ãƒˆã‚’取埗したすã? "  , "0" }
1283    //              , { "getStringFunctions" , "こã?ãƒ??タベã?スで䜿甚可胜なコンマで区åˆ?£ãŸæ–‡å­—å?関数のリストを取埗したすã? "  , "0" }
1284    //              , { "getSystemFunctions" , "こã?ãƒ??タベã?スで䜿甚可胜なコンマで区åˆ?£ãŸã‚·ã‚¹ãƒ?ƒ é–¢æ•°ã®ãƒªã‚¹ãƒˆã‚’取埗したすã? "  , "0" }
1285    //              , { "getTimeDateFunctions" , "こã?ãƒ??タベã?スで䜿甚可胜な時間関数ず日付関数をコンマで区åˆ?£ãŸãƒªã‚¹ãƒˆã‚’取埗したすã? "  , "0" }
1286    //              , { "getURL" , "こã? DBMS の URL を取埗したすã? "  , "0" }
1287    //              , { "getUserName" , "こã?ãƒ??タベã?スに蚘録されおã?‚‹ãƒŠãƒŒã‚¶åã‚’取埗したすã? "  , "0" }
1288    //
1289    //              , { "getDefaultTransactionIsolation" , "こã?ãƒ??タベã?スのãƒ?ƒ•ォルトã?トランザクション遮断レベルを取埗したすã? "  , "0" }
1290    //              , { "getSQLStateType" , "Throwable.getSQLState によっお返される SQLSTATE ã?X/Open (珟圚は Open Group) の SQL CLI であるã?SQL99 であるかを瀺したすã? "  , "0" }
1291    //              , { "getResultSetHoldability" , "こã? ResultSet オブゞェクトã?ãƒ?ƒ•ォルトã?保持機è?を取埗したすã? "  , "0" }
1292    //
1293    //              , { "allProceduresAreCallable" , "getProcedures メ゜ãƒ?ƒ‰ã«ã‚ˆã£ãŠè¿”されるすべおのプロシヌゞャがã?珟圚のナヌザから呌び出せるかどã?‹ã‚’取埗したすã? "  , "0" }
1294    //              , { "allTablesAreSelectable" , "getTables メ゜ãƒ?ƒ‰ã«ã‚ˆã£ãŠè¿”されるすべおのãƒ??ブルがã?珟圚のナヌザによっお䜿甚できるかどã?‹ã‚’取埗したすã? "  , "0" }
1295    //              , { "dataDefinitionCausesTransactionCommit" , "トランザクションのãƒ??タ定矩æ–?Œã€ãƒˆãƒ©ãƒ³ã‚¶ã‚¯ã‚·ãƒ§ãƒ³ã‚’匷制çš?«ã‚³ãƒŸãƒƒãƒˆã•せるかどã?‹ã‚’取埗したすã? "  , "0" }
1296    //              , { "dataDefinitionIgnoredInTransactions" , "こã?ãƒ??タベã?スによっお、トランザクションでãƒ??タ定矩æ–?Œç„¡èŠ–ã•ã‚Œã‚‹ã‹ã©ã?‹ã‚’取埗したすã? "  , "0" }
1297    //              , { "deletesAreDetected" , "ResultSet.rowDeleted メ゜ãƒ?ƒ‰ã‚’呌び出すこずによっお可芖ã?行が削陀されたこずを怜å?できるかどã?‹ã‚’取埗したすã? "  , "1" }
1298    //              , { "doesMaxRowSizeIncludeBlobs" , "getMaxRowSize メ゜ãƒ?ƒ‰ã®æˆ»ã‚Šå?ã?SQL ãƒ??タの型ã? LONGVARCHAR および LONGVARBINARY を含ã‚?‹ã©ã?‹ã‚’取埗したすã? "  , "0" }
1299    //              , { "insertsAreDetected" , "ResultSet.rowInserted メ゜ãƒ?ƒ‰ã‚’呌び出すこずによっお可芖ã?行が挿入されたこずを怜å?できるかどã?‹ã‚’取埗したすã? "  , "1" }
1300    //              , { "isCatalogAtStart" , "完å?修食されたテヌブル名ã?開始郚åˆ?(たたã?終äº?ƒšåˆ? にカタログが珟れるかどã?‹ã‚’取埗したすã? "  , "0" }
1301    //              , { "isReadOnly" , "こã?ãƒ??タベã?スが読み蟌み専甚モヌドかどã?‹ã‚’取埗したすã? "  , "0" }
1302    //              , { "locatorsUpdateCopy" , "LOB ぞの倉曎がã?コピã?に察しお行われたのかã?LOB に盎接行われたのかを瀺したすã? "  , "0" }
1303    //              , { "nullPlusNonNullIsNull" , "こã?ãƒ??タベã?スがã?NULL 倀ずé?NULL 倀の連結を NULL ずするかどã?‹ã‚’取埗したすã? "  , "0" }
1304    //              , { "nullsAreSortedAtEnd" , "NULL 倀がã?終äº?™‚に゜ヌトé?にかかわらず゜ヌトされるかどã?‹ã‚’取埗したすã? "  , "0" }
1305    //              , { "nullsAreSortedAtStart" , "NULL 倀がã?開始時に゜ヌトé?にかかわらず゜ヌトされるかどã?‹ã‚’取埗したすã? "  , "0" }
1306    //              , { "nullsAreSortedHigh" , "NULL 倀が高䜍に゜ヌトされるかどã?‹ã‚’取埗したすã? "  , "0" }
1307    //              , { "nullsAreSortedLow" , "NULL 倀が䞋䜍に゜ヌトされるかどã?‹ã‚’取埗したすã? "  , "0" }
1308    //              , { "othersDeletesAreVisible" , "他で行われた削陀が可芖かどã?‹ã‚’取埗したすã? "  , "1" }
1309    //              , { "othersInsertsAreVisible" , "他で行われた挿入が可芖かどã?‹ã‚’取埗したすã? "  , "1" }
1310    //              , { "othersUpdatesAreVisible" , "他で行われた曎新が可芖かどã?‹ã‚’取埗したすã? "  , "1" }
1311    //              , { "ownDeletesAreVisible" , "結果セãƒ?ƒˆè‡ªèº«ã®å‰Šé™€ãŒå¯èŠ–ã‹ã©ã?‹ã‚’取埗したすã? "  , "1" }
1312    //              , { "ownInsertsAreVisible" , "結果セãƒ?ƒˆè‡ªèº«ã®æŒ¿å…¥ãŒå¯èŠ–ã‹ã©ã?‹ã‚’取埗したすã? "  , "1" }
1313    //              , { "ownUpdatesAreVisible" , "æŒ?®šã•れた ResultSet オブゞェクトに぀ã?Šã€çµæžœã‚»ãƒ?ƒˆè‡ªèº«ã®æ›Žæ–°ãŒå¯èŠ–ã‹ã©ã?‹ã‚’取埗したすã? "  , "1" }
1314    //              , { "storesLowerCaseIdentifiers" , "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊なしã? SQL 識別子を、倧æ–?­—小文字を区別しなã?§å‡Šç?—、小文字で栌玍するかどã?‹ã‚’取埗したすã? "  , "0" }
1315    //              , { "storesLowerCaseQuotedIdentifiers" , "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊付きの SQL 識別子を、倧æ–?­—小文字を区別しなã?§å‡Šç?—、小文字で栌玍するかどã?‹ã‚’取埗したすã? "  , "0" }
1316    //              , { "storesMixedCaseIdentifiers" , "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊なしã? SQL 識別子を、倧æ–?­—小文字を区別しなã?§å‡Šç?—、倧æ–?­—小文字混圚で栌玍するかどã?‹ã‚’取埗したすã? "  , "0" }
1317    //              , { "storesMixedCaseQuotedIdentifiers" , "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊付きの SQL 識別子を、倧æ–?­—小文字を区別しなã?§å‡Šç?—、倧æ–?­—小文字混圚で栌玍するかどã?‹ã‚’取埗したすã? "  , "0" }
1318    //              , { "storesUpperCaseIdentifiers" , "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊なしã? SQL 識別子を、倧æ–?­—小文字を区別しなã?§å‡Šç?—、倧æ–?­—で栌玍するかどã?‹ã‚’取埗したすã? "  , "0" }
1319    //              , { "storesUpperCaseQuotedIdentifiers" , "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊付きの SQL 識別子を、倧æ–?­—小文字を区別しなã?§å‡Šç?—、倧æ–?­—で栌玍するかどã?‹ã‚’取埗したすã? "  , "0" }
1320    //              , { "supportsAlterTableWithAddColumn" , "こã?ãƒ??タベã?スによっお、远åŠ??のある ALTER TABLE がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1321    //              , { "supportsAlterTableWithDropColumn" , "こã?ãƒ??タベã?スによっお、ドロãƒ??列ã?ある ALTER TABLE がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1322    //              , { "supportsANSI92EntryLevelSQL" , "こã?ãƒ??タベã?スによっお、ANSI92 ゚ントリレベルの SQL æ–?³•がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1323    //              , { "supportsANSI92FullSQL" , "こã?ãƒ??タベã?スによっお、ANSI92 完å?レベルの SQL æ–?³•がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1324    //              , { "supportsANSI92IntermediateSQL" , "こã?ãƒ??タベã?スによっお、ANSI92 䞭間レベルの SQL æ–?³•がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1325    //              , { "supportsBatchUpdates" , "こã?ãƒ??タベã?スによっおバッチ曎新がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1326    //              , { "supportsCatalogsInDataManipulation" , "ãƒ??タ操䜜文でカタログ名を䜿甚できるかどã?‹ã‚’取埗したすã? "  , "0" }
1327    //              , { "supportsCatalogsInIndexDefinitions" , "むンãƒ?ƒƒã‚¯ã‚¹å®šçŸ©æ–?§ã‚«ã‚¿ãƒ­ã‚°åã‚’䜿甚できるかどã?‹ã‚’取埗したすã? "  , "0" }
1328    //              , { "supportsCatalogsInPrivilegeDefinitions" , "特暩定矩æ–?§ã‚«ã‚¿ãƒ­ã‚°åã‚’䜿甚できるかどã?‹ã‚’取埗したすã? "  , "0" }
1329    //              , { "supportsCatalogsInProcedureCalls" , "プロシヌゞャ呌び出し文でカタログ名を䜿甚できるかどã?‹ã‚’取埗したすã? "  , "0" }
1330    //              , { "supportsCatalogsInTableDefinitions" , "ãƒ??ブル定矩æ–?§ã‚«ã‚¿ãƒ­ã‚°åã‚’䜿甚できるかどã?‹ã‚’取埗したすã? "  , "0" }
1331    //              , { "supportsColumnAliasing" , "こã?ãƒ??タベã?スによっお列ã?別名がサポã?トされるかどã?‹ã‚’取埗したすã?  "  , "0" }
1332    //      //      , { "supportsConvertFunc" , "こã?ãƒ??タベã?スによっお、SQL の型間の CONVERT 関数がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1333    //              , { "supportsCoreSQLGrammar" , "こã?ãƒ??タベã?スによっお、ODBC Core SQL æ–?³•がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1334    //              , { "supportsCorrelatedSubqueries" , "こã?ãƒ??タベã?スによっお照合関係サブク゚リヌがサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1335    //              , { "supportsDataDefinitionAndDataManipulationTransactions" , "こã?ãƒ??タベã?スによっお、トランザクションで、デヌタ定矩æ–?šãƒ??タ操䜜文の䞡方がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1336    //              , { "supportsDataManipulationTransactionsOnly" , "こã?ãƒ??タベã?スによっお、トランザクションでãƒ??タ操䜜文ã?‘がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1337    //              , { "supportsDifferentTableCorrelationNames" , "ãƒ??ブル盞互関係名がサポã?トされる堎合ã?ãƒ??ブルの名前ず異なる名前であるずã?†åˆ¶é™ã‚’付けるかどã?‹ã‚’取埗したすã? "  , "0" }
1338    //              , { "supportsExpressionsInOrderBy" , "こã?ãƒ??タベã?スによっお、ORDER BY リスト䞭で匏がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1339    //              , { "supportsExtendedSQLGrammar" , "こã?ãƒ??タベã?スによっお、ODBC Extended SQL æ–?³•がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1340    //              , { "supportsFullOuterJoins" , "こã?ãƒ??タベã?スによっお、完å?入れ子ã?倖郚結合がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1341    //              , { "supportsGetGeneratedKeys" , "æ–?Œå®Ÿè¡Œã•れたあずに自動生成キヌを取埗できるかどã?‹ã‚’取埗したすã? "  , "0" }
1342    //              , { "supportsGroupBy" , "こã?ãƒ??タベã?スによっお、GROUP BY ç¯??フォヌãƒ?Œã‚µãƒã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1343    //              , { "supportsGroupByBeyondSelect" , "SELECT æ–?ž­ã®ã™ã¹ãŠã®åˆ—が GROUP BY ç¯?«å«ãŸã‚Œã‚‹ãšã?†æ¡ä»¶ã§ã€ã“のãƒ??タベã?スによっお、GROUP BY ç¯?§ SELECT æ–?ž­ã«ãªã??の䜿甚がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1344    //              , { "supportsGroupByUnrelated" , "こã?ãƒ??タベã?スによっお、GROUP BY ç¯?§ SELECT æ–?ž­ã«ãªã??の䜿甚がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1345    //              , { "supportsIntegrityEnhancementFacility" , "こã?ãƒ??タベã?スによっお、SQL Integrity Enhancement Facility がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1346    //              , { "supportsLikeEscapeClause" , "こã?ãƒ??タベã?スによっお、LIKE ゚スケヌプç¯??æŒ?®šãŒã‚µãƒã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1347    //              , { "supportsLimitedOuterJoins" , "こã?ãƒ??タベã?スによっお、倖郚結合に関しã?制限されたサポã?トが提䟛されるかどã?‹ã‚’取埗したã?(supportsFullOuterJoins メ゜ãƒ?ƒ‰ã?true を返す堎合ã? true)ã€?"  , "0" }
1348    //              , { "supportsMinimumSQLGrammar" , "こã?ãƒ??タベã?スによっお、ODBC Minimum SQL æ–?³•がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1349    //              , { "supportsMixedCaseIdentifiers" , "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊なしã? SQL 識別子を、倧æ–?­—小文字を区別しお凊ç?—、倧æ–?­—小文字混圚で栌玍するかどã?‹ã‚’取埗したすã? "  , "0" }
1350    //              , { "supportsMixedCaseQuotedIdentifiers" , "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊付きの SQL 識別子を、倧æ–?­—小文字を区別しお凊ç?—、結果ずしお倧æ–?­—小文字混圚で栌玍するかどã?‹ã‚’取埗したすã? "  , "0" }
1351    //              , { "supportsMultipleOpenResults" , "CallableStatement オブゞェクトから同時に返されたè€?•°ã® ResultSet オブゞェクトを持぀こずが可胜かどã?‹ã‚’取埗したすã? "  , "0" }
1352    //              , { "supportsMultipleResultSets" , "こã?ãƒ??タベã?スによっお、execute メ゜ãƒ?ƒ‰ã®å˜äž??呌び出しからã?è€?•°ã® ResultSet オブゞェクトã?取埗がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1353    //              , { "supportsMultipleTransactions" , "こã?ãƒ??タベã?スがäž?ºŠã«è€?•°ã®ãƒˆãƒ©ãƒ³ã‚¶ã‚¯ã‚·ãƒ§ãƒ³ã‚?(異なった接続で) オヌプンできるかどã?‹ã‚’取埗したすã? "  , "0" }
1354    //              , { "supportsNamedParameters" , "こã?ãƒ??タベã?スによっお、callable æ–?žã®åå‰ä»˜ããƒ‘ラメヌタがサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1355    //              , { "supportsNonNullableColumns" , "こã?ãƒ??タベã?スの列をé?null ずしお定矩できるかどã?‹ã‚’取埗したすã? "  , "0" }
1356    //              , { "supportsOpenCursorsAcrossCommit" , "こã?ãƒ??タベã?スによっお、コミット間でカヌ゜ルがオヌプンされたたたの状態がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1357    //              , { "supportsOpenCursorsAcrossRollback" , "こã?ãƒ??タベã?スによっお、ロヌルバック間でカヌ゜ルがオヌプンされたたたの状態がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1358    //              , { "supportsOpenStatementsAcrossCommit" , "こã?ãƒ??タベã?スによっお、コミット間でæ–?Œã‚ªãƒŒãƒ—ンされたたたの状態がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1359    //              , { "supportsOpenStatementsAcrossRollback" , "こã?ãƒ??タベã?スによっお、ロヌルバック間でæ–?Œã‚ªãƒŒãƒ—ンされたたたの状態がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1360    //              , { "supportsOrderByUnrelated" , "こã?ãƒ??タベã?スによっお、ORDER BY ç¯?§ SELECT æ–?ž­ã«ãªã??の䜿甚がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1361    //              , { "supportsOuterJoins" , "こã?ãƒ??タベã?スによっお、倖郚結合のなんらかã?圢匏がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1362    //              , { "supportsPositionedDelete" , "こã?ãƒ??タベã?スによっお、䜍眮æŒ?®šã•れた DELETE æ–?Œã‚µãƒã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1363    //              , { "supportsPositionedUpdate" , "こã?ãƒ??タベã?スによっお、䜍眮æŒ?®šã•れた UPDATE æ–?Œã‚µãƒã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1364    //              , { "supportsResultSetConcurrency" , "こã?ãƒ??タベã?スがã?æŒ?®šã•れた結果セãƒ?ƒˆã®åž‹ãšäžŽãˆã‚‰ã‚ŒãŸäžŠè¡Œå?ç??皮類ã?çµ?¿åˆã‚ã›ã‚’サポã?トするかどã?‹ã‚’取埗したすã? "  , "2" }
1365    //              , { "supportsResultSetHoldability" , "こã?ãƒ??タベã?スがã?æŒ?®šã•れた結果セãƒ?ƒˆã®ä¿æŒæ©Ÿè?をサポã?トするかどã?‹ã‚’取埗したすã? "  , "3" }
1366    //              , { "supportsResultSetType" , "こã?ãƒ??タベã?スがã?[TYPE_FORWARD_ONLY]æŒ?®šã•れた結果セãƒ?ƒˆã®åž‹ã‚’サポã?トするかどã?‹ã‚’取埗したすã? "  , "41" }
1367    //              , { "supportsResultSetType" , "こã?ãƒ??タベã?スがã?[TYPE_SCROLL_INSENSITIVE]æŒ?®šã•れた結果セãƒ?ƒˆã®åž‹ã‚’サポã?トするかどã?‹ã‚’取埗したすã? "  , "42" }
1368    //              , { "supportsResultSetType" , "こã?ãƒ??タベã?スがã?[TYPE_SCROLL_SENSITIVE]æŒ?®šã•れた結果セãƒ?ƒˆã®åž‹ã‚’サポã?トするかどã?‹ã‚’取埗したすã? "  , "43" }
1369    //              , { "supportsSavepoints" , "こã?ãƒ??タベã?スによっおセヌブã?むントがサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1370    //              , { "supportsSchemasInDataManipulation" , "ãƒ??タ操䜜文でスキヌマ名を䜿甚できるかどã?‹ã‚’取埗したすã? "  , "0" }
1371    //              , { "supportsSchemasInIndexDefinitions" , "むンãƒ?ƒƒã‚¯ã‚¹å®šçŸ©æ–?§ã‚¹ã‚­ãƒŒãƒžåã‚’䜿甚できるかどã?‹ã‚’取埗したすã? "  , "0" }
1372    //              , { "supportsSchemasInPrivilegeDefinitions" , "特暩定矩æ–?§ã‚¹ã‚­ãƒŒãƒžåã‚’䜿甚できるかどã?‹ã‚’取埗したすã? "  , "0" }
1373    //              , { "supportsSchemasInProcedureCalls" , "プロシヌゞャ呌び出し文でスキヌマ名を䜿甚できるかどã?‹ã‚’取埗したすã? "  , "0" }
1374    //              , { "supportsSchemasInTableDefinitions" , "ãƒ??ブル定矩æ–?§ã‚¹ã‚­ãƒŒãƒžåã‚’䜿甚できるかどã?‹ã‚’取埗したすã? "  , "0" }
1375    //              , { "supportsSelectForUpdate" , "こã?ãƒ??タベã?スによっお SELECT FOR UPDATE æ–?Œã‚µãƒã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1376    //              , { "supportsStatementPooling" , "こã?ãƒ??タベã?スによっおæ–??プã?ルがサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1377    //              , { "supportsStoredProcedures" , "こã?ãƒ??タベã?スによっお、ストアドã?ロシヌゞャ゚スケヌプ構文を䜿甚するストアドã?ロシヌゞャコヌルがサポã?トされるかどã?‹ã‚’刀定したすã? "  , "0" }
1378    //              , { "supportsSubqueriesInComparisons" , "こã?ãƒ??タベã?スによっお、比èŒ?Œäž­ã§ã‚µãƒ–ク゚リヌがサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1379    //              , { "supportsSubqueriesInExists" , "こã?ãƒ??タベã?スによっお、EXISTS 匏䞭でサブク゚リヌがサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1380    //              , { "supportsSubqueriesInIns" , "こã?ãƒ??タベã?スによっお、IN æ–?ž­ã§ã‚µãƒ–ク゚リヌがサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1381    //              , { "supportsSubqueriesInQuantifieds" , "こã?ãƒ??タベã?スによっお、定量化された匏䞭でサブク゚リヌがサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1382    //              , { "supportsTableCorrelationNames" , "こã?ãƒ??タベã?スによっおãƒ??ブル盞互関係名がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1383    //              , { "supportsTransactionIsolationLevel" , "こã?ãƒ??タベã?スがã?æŒ?®šã•れたトランザクション遮断レベルをサポã?トするかどã?‹ã‚’取埗したすã? "  , "5" }
1384    //              , { "supportsTransactions" , "こã?ãƒ??タベã?スによっおトランザクションがサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1385    //              , { "supportsUnion" , "こã?ãƒ??タベã?スによっお SQL UNION がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1386    //              , { "supportsUnionAll" , "こã?ãƒ??タベã?スによっお SQL UNION ALL がサポã?トされるかどã?‹ã‚’取埗したすã? "  , "0" }
1387    //              , { "updatesAreDetected" , "ResultSet.rowUpdated メ゜ãƒ?ƒ‰ã‚’呌び出すこずによっお可芖ã?行が曎新されたこずを怜å?できるかどã?‹ã‚’取埗したすã? "  , "1" }
1388    //              , { "usesLocalFilePerTable" , "こã?ãƒ??タベã?スがã?å?ƒ†ãƒŒãƒ–ルにファむルを䜿甚するかどã?‹ã‚’取埗したすã? "  , "0" }
1389    //              , { "usesLocalFiles" , "こã?ãƒ??タベã?スがã?ロヌカルファむルにãƒ??ブルをæ?玍するかどã?‹ã‚’取埗したすã? "  , "0" }
1390    //
1391    //      // これらã?、匕数がå¿?Šãªã®ã§ã€ãƒªãƒ•ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³å‡Šç??、ずりあえず保留
1392    //      //      , { "getAttributes" , "æŒ?®šã•れたスキヌマおよã?カタログで䜿甚可胜なナヌザ定矩のåž?(UDT) のためのæŒ?®šã•れた型ã?æŒ?®šã•れた属æ?に関する蚘述を取埗したすã?  "  , "0" }
1393    //      //      , { "getBestRowIdentifier" , "行をäž?„ã«è­˜åˆ¥ã™ã‚‹ãƒ??ブルのæœ?©ãªåˆ—ã‚»ãƒ?ƒˆã«é–¢ã™ã‚‹èš˜è¿°ã‚’取埗したすã? "  , "0" }
1394    //      //      , { "getCatalogs" , "こã?ãƒ??タベã?スで䜿甚可胜なカタログ名を取埗したすã? "  , "0" }
1395    //      //      , { "getColumnPrivileges" , "ãƒ??ブルの列ぞのアクセス暩に関する蚘述を取埗したすã?  "  , "0" }
1396    //      //      , { "getColumns" , "æŒ?®šã•れたカタログで䜿甚可胜なãƒ??ブル列ã?蚘述を取埗したすã?  "  , "0" }
1397    //      //      , { "getCrossReference" , "æŒ?®šã•れた䞻キヌãƒ??ブルの䞻キヌ列を参ç?するæŒ?®šã•れた倖郚のキヌãƒ??ブル䞭の、倖郚のキヌ列に関する蚘述 (ãƒ??ブルが別のキヌをむンポã?トする方法を蚘述) を取埗したすã? "  , "0" }
1398    //      //      , { "getExportedKeys" , "æŒ?®šã•れたãƒ??ブルの䞻キヌåˆ?(ãƒ??ブルによっお゚クスポã?トされた倖郚キヌ) を参照する倖郚キヌ列に関する蚘述を取埗したすã? "  , "0" }
1399    //      //      , { "getImportedKeys" , "ãƒ??ブルの倖郚キヌåˆ?(ãƒ??ブルによっおむンポã?トされる䞻キヌ) を参照する䞻キヌ列に関する蚘述を取埗したすã? "  , "0" }
1400    //      //      , { "getIndexInfo" , "æŒ?®šã•れたãƒ??ブルのむンãƒ?ƒƒã‚¯ã‚¹ãšçµ±èšˆæƒ…報に関する蚘述を取埗したすã? "  , "0" }
1401    //      //      , { "getPrimaryKeys" , "æŒ?®šã•れたãƒ??ブルの䞻キヌ列ã?蚘述を取埗したすã? "  , "0" }
1402    //      //      , { "getProcedureColumns" , "æŒ?®šã•れたカタログのストアドã?ロシヌゞャパラメヌタず結果列に関する蚘述を取埗したすã?  "  , "0" }
1403    //      //      , { "getProcedures" , "æŒ?®šã•れたカタログで䜿甚可胜なストアドã?ロシヌゞャに関する蚘述を取埗したすã?  "  , "0" }
1404    //      //      , { "getSchemas" , "こã?ãƒ??タベã?スで䜿甚可胜なスキヌマ名を取埗したすã? "  , "0" }
1405    //      //      , { "getSuperTables" , "こã?ãƒ??タベã?スの特定ã?スキヌマで定矩されおã?‚‹ãƒ??ブル階局の説明を取埗したすã?  "  , "0" }
1406    //      //      , { "getSuperTypes" , "こã?ãƒ??タベã?スの特定ã?スキヌマで定矩されおã?‚‹ãƒŠãƒŒã‚¶å®šçŸ©åž?(UDT) 階局の説明を取埗したすã? "  , "0" }
1407    //      //      , { "getTablePrivileges" , "カタログで䜿甚可胜なå?ƒ†ãƒŒãƒ–ルに察するアクセス暩に関する蚘述を取埗したすã? "  , "0" }
1408    //      //      , { "getTables" , "æŒ?®šã•れたカタログで䜿甚可胜なãƒ??ブルに関する蚘述を取埗したすã? "  , "0" }
1409    //      //      , { "getTableTypes" , "こã?ãƒ??タベã?スで䜿甚可胜なãƒ??ブルの型を取埗したすã? "  , "0" }
1410    //      //      , { "getTypeInfo" , "こã?ãƒ??タベã?スでサポã?トされおã?‚‹ã™ã¹ãŠã®æš™æº?SQL の型に関する蚘述を取埗したすã? "  , "0" }
1411    //      //      , { "getUDTs" , "特定ã?スキヌマで定矩されおã?‚‹ãƒŠãƒŒã‚¶å®šçŸ©åž?(UDT) の説明を取埗したすã? "  , "0" }
1412    //      //      , { "getVersionColumns" , "行ã?任意ã?倀が倉曎されたå?合に、è?動的に曎新されるテヌブルの列に関する蚘述を取埗したすã? "  , "0" }
1413    //
1414    //      // 5.5.3.2 (2012/06/08) JDk1.6 甚のメ゜ãƒ?ƒ‰ã‚’远åŠ?—たすã?
1415    //              , { "autoCommitFailureClosesAllResultSets" , "autoCommit ã?true の堎合に、ResultSet が保持可胜であっおもã?すべおのオヌプンされã?ResultSet がクロヌズされたこずã‚?SQLException が瀺すかどã?‹ã‚’取埗したすã?"  , "0" }
1416    //              , { "supportsConvert" , "こã?ãƒ??タベã?スによっお、JDBC åž?fromType ず toType の間ã?倉換に䜿甚されã‚?JDBC スカラヌ関数 CONVERT がサポã?トされるかどã?‹ã‚’取埗したすã?"  , "0" }
1417    //              , { "supportsStoredFunctionsUsingCallSyntax" , "こã?ãƒ??タベã?スがã?ストアドã?ロシヌゞャヌ゚スケヌプ構文を䜿甚した、ナヌザヌ定矩関数たたã?ベンãƒ??関数の呌び出しをサポã?トするかどã?‹ã‚’取埗したすã?"  , "0" }
1418    //              , { "getDatabaseMajorVersion" , "基本ずなるデヌタベã?スのメゞャヌバã?ゞョン番号を取埗したすã?"  , "0" }
1419    //              , { "getDatabaseMinorVersion" , "基本ずなるデヌタベã?スのマむナã?バã?ゞョン番号を取埗したすã?"  , "0" }
1420    //              , { "getJDBCMajorVersion" , "こã?ドラむバã? JDBC メゞャヌバã?ゞョン番号を取埗したすã?"  , "0" }
1421    //              , { "getJDBCMinorVersion" , "こã?ドラむバã? JDBC マむナã?バã?ゞョン番号を取埗したすã?"  , "0" }
1422    //              , { "getMaxBinaryLiteralLength" , "こã?ãƒ??タベã?スで、むンラむンバむナリリãƒ?ƒ©ãƒ«äž­ã«å…¥ã‚Œã‚‰ã‚Œã‚‹ 16 進数のæœ?€§æ–?­—数を取埗したすã?"  , "0" }
1423    //              , { "getMaxCatalogNameLength" , "こã?ãƒ??タベã?スでの、カタログ名ã?æœ?€§æ–?­—数を取埗したすã?"  , "0" }
1424    //              , { "getMaxCharLiteralLength" , "こã?ãƒ??タベã?スでの、キャラクタリãƒ?ƒ©ãƒ«ã®æœ?€§æ–?­—数を取埗したすã?"  , "0" }
1425    //              , { "getMaxColumnNameLength" , "こã?ãƒ??タベã?スでの、å?名ã?æœ?€§æ–?­—数を取埗したすã?"  , "0" }
1426    //              , { "getMaxColumnsInGroupBy" , "こã?ãƒ??タベã?スでの、GROUP BY ç¯?ž­ã®åˆ—数のæœ?€§å€€ã‚’取埗したすã?"  , "0" }
1427    //              , { "getMaxColumnsInIndex" , "こã?ãƒ??タベã?スでの、むンãƒ?ƒƒã‚¯ã‚¹äž­ã®åˆ—数のæœ?€§å€€ã‚’取埗したすã?"  , "0" }
1428    //              , { "getMaxColumnsInOrderBy" , "こã?ãƒ??タベã?スでの、ORDER BY ç¯?ž­ã®åˆ—数のæœ?€§å€€ã‚’取埗したすã?"  , "0" }
1429    //              , { "getMaxColumnsInSelect" , "こã?ãƒ??タベã?スでの、SELECT リスト䞭の列数のæœ?€§å€€ã‚’取埗したすã?"  , "0" }
1430    //              , { "getMaxColumnsInTable" , "こã?ãƒ??タベã?スでの、テヌブル䞭の列数のæœ?€§å€€ã‚’取埗したすã?"  , "0" }
1431    //              , { "getMaxConnections" , "こã?ãƒ??タベã?スに察しお可胜な䞊行接続ã?æœ?€§æ•°ã‚’取埗したすã?"  , "0" }
1432    //              , { "getMaxCursorNameLength" , "こã?ãƒ??タベã?スでの、カヌ゜ル名ã?æœ?€§æ–?­—数を取埗したすã?"  , "0" }
1433    //              , { "getMaxIndexLength" , "こã?ãƒ??タベã?スでの、むンãƒ?ƒƒã‚¯ã‚¹ã®å…šéƒšåˆ?‚’含ã‚??むンãƒ?ƒƒã‚¯ã‚¹ã®æœ?€§ãƒã‚€ãƒˆæ•°ã‚’取埗したすã?"  , "0" }
1434    //              , { "getMaxProcedureNameLength" , "こã?ãƒ??タベã?スでの、ã?ロシヌゞャヌ名ã?æœ?€§æ–?­—数を取埗したすã?"  , "0" }
1435    //              , { "getMaxRowSize" , "こã?ãƒ??タベã?スでのã€? 行ã?æœ?€§ãƒã‚€ãƒˆæ•°ã‚’取埗したすã?"  , "0" }
1436    //              , { "getMaxSchemaNameLength" , "こã?ãƒ??タベã?スでの、スキヌマ名のæœ?€§æ–?­—数を取埗したすã?"  , "0" }
1437    //              , { "getMaxStatementLength" , "こã?ãƒ??タベã?スでの、SQL æ–??æœ?€§æ–?­—数を取埗したすã?"  , "0" }
1438    //              , { "getMaxStatements" , "こã?ãƒ??タベã?スの同時にオヌプンできるアクãƒ?‚£ãƒ–なæ–??æœ?€§æ•°ã‚’取埗したすã?"  , "0" }
1439    //              , { "getMaxTableNameLength" , "こã?ãƒ??タベã?スでの、テヌブル名ã?æœ?€§æ–?­—数を取埗したすã?"  , "0" }
1440    //              , { "getMaxTablesInSelect" , "こã?ãƒ??タベã?スでの、SELECT æ–??æœ?€§ãƒ??ブル数を取埗したすã?"  , "0" }
1441    //              , { "getMaxUserNameLength" , "こã?ãƒ??タベã?スでの、ナヌザヌ名ã?æœ?€§æ–?­—数を取埗したすã?"  , "0" }
1442    //
1443    //      // これらã?、匕数がå¿?Šãªã®ã§ã€ãƒªãƒ•ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³å‡Šç??、ずりあえず保留
1444    //      //      , { "getClientInfoProperties" , "ドラむバがサポã?トするクラむアント情報プロパティヌのリストを取埗したすã?"  , "0" }
1445    //      //      , { "getFunctionColumns" , "æŒ?®šã•れたカタログのシスãƒ?ƒ é–¢æ•°ãŸãŸã?ナヌザヌ関数のパラメヌタず返される型に関する蚘述を取埗したすã?"  , "0" }
1446    //      //      , { "getFunctions" , "æŒ?®šã•れたカタログで䜿甚可胜なシスãƒ?ƒ é–¢æ•°ãŠã‚ˆã³ãƒŠãƒŒã‚¶ãƒŒé–¢æ•°ã«é–¢ã™ã‚‹èš˜è¿°ã‚’取埗したすã?"  , "0" }
1447    //      };
1448    
1449            private static final MetaDataInvoke[] METHOD_LIST = new MetaDataInvoke[] {
1450                      new MetaDataInvoke( "getCatalogSeparator"     ,       0       ,       -1      ,        "こã?ãƒ??タベã?スがカタログ名ずãƒ??ブル名ã?セパレヌタずしお䜿甚する String"       )
1451                    , new MetaDataInvoke( "getCatalogTerm"  ,       0       ,       -1      ,        "「catalog」に察するãƒ??タベã?スベンãƒ??の掚奚甚語を取埗したすã? "       )
1452                    , new MetaDataInvoke( "getDatabaseProductName"  ,       0       ,       -1      ,        "こã?ãƒ??タベã?ス補品ã?名前を取埗したすã? "    )
1453                    , new MetaDataInvoke( "getDatabaseProductVersion"       ,       0       ,       -1      ,        "こã?ãƒ??タベã?ス補品ã?バã?ゞョンを取埗したすã? "      )
1454                    , new MetaDataInvoke( "getDriverMajorVersion"   ,       0       ,       -1      ,        "こã? JDBC ドラむバã?メゞャヌバã?ゞョンを取埗したすã? "       )
1455                    , new MetaDataInvoke( "getDriverMinorVersion"   ,       0       ,       -1      ,        "こã? JDBC ドラむバã?マむナã?バã?ゞョンを取埗したすã? "         )
1456                    , new MetaDataInvoke( "getDriverName"   ,       0       ,       -1      ,        "こã? JDBC ドラむバã?名前を取埗したすã? "     )
1457                    , new MetaDataInvoke( "getDriverVersion"        ,       0       ,       -1      ,        "こã? JDBC ドラむバã?バã?ゞョンã‚?String"   )
1458                    , new MetaDataInvoke( "getExtraNameCharacters"  ,       0       ,       -1      ,        "匕甚笊で囲たれおã?ªã?­˜åˆ¥åã«äœ¿ç”šã§ãã‚‹ã™ã¹ãŠã®ã€Œç‰¹æ®Šã?æ–?­?(a-z、A-Zã€?-9、およã? _ 以å€? を取埗したすã? "    )
1459                    , new MetaDataInvoke( "getIdentifierQuoteString"        ,       0       ,       -1      ,        "SQL 識別子を匕甚するのに䜿甚するæ–?­—å?を取埗したすã? "         )
1460                    , new MetaDataInvoke( "getNumericFunctions"     ,       0       ,       -1      ,        "こã?ãƒ??タベã?スで䜿甚可胜なコンマで区åˆ?£ãŸæ•°å­Šé–¢æ•°ã®ãƒªã‚¹ãƒˆã‚’取埗したすã? "   )
1461                    , new MetaDataInvoke( "getProcedureTerm"        ,       0       ,       -1      ,        "「procedure」に察するãƒ??タベã?スベンãƒ??の掚奚甚語を取埗したすã? "     )
1462                    , new MetaDataInvoke( "getSchemaTerm"   ,       0       ,       -1      ,        "「schema」に察するãƒ??タベã?スベンãƒ??の掚奚甚語を取埗したすã? "        )
1463                    , new MetaDataInvoke( "getSearchStringEscape"   ,       0       ,       -1      ,        "ワむルドカヌド文字を゚スケヌプするã?に䜿甚できるæ–?­—å?を取埗したすã? "  )
1464                    , new MetaDataInvoke( "getSQLKeywords"  ,       0       ,       -1      ,        "こã?ãƒ??タベã?スの SQL キヌワヌドであっお、SQL92 のキヌワヌドではなã??すべおのキヌワヌドをコンマで区åˆ?£ãŸãƒªã‚¹ãƒˆã‚’取埗したすã? "     )
1465                    , new MetaDataInvoke( "getStringFunctions"      ,       0       ,       -1      ,        "こã?ãƒ??タベã?スで䜿甚可胜なコンマで区åˆ?£ãŸæ–‡å­—å?関数のリストを取埗したすã? "  )
1466                    , new MetaDataInvoke( "getSystemFunctions"      ,       0       ,       -1      ,        "こã?ãƒ??タベã?スで䜿甚可胜なコンマで区åˆ?£ãŸã‚·ã‚¹ãƒ?ƒ é–¢æ•°ã®ãƒªã‚¹ãƒˆã‚’取埗したすã? "        )
1467                    , new MetaDataInvoke( "getTimeDateFunctions"    ,       0       ,       -1      ,        "こã?ãƒ??タベã?スで䜿甚可胜な時間関数ず日付関数をコンマで区åˆ?£ãŸãƒªã‚¹ãƒˆã‚’取埗したすã? "    )
1468                    , new MetaDataInvoke( "getURL"  ,       0       ,       -1      ,        "こã? DBMS の URL を取埗したすã? "         )
1469                    , new MetaDataInvoke( "getUserName"     ,       0       ,       -1      ,        "こã?ãƒ??タベã?スに蚘録されおã?‚‹ãƒŠãƒŒã‚¶åã‚’取埗したすã? "       )
1470    
1471                    , new MetaDataInvoke( "getDefaultTransactionIsolation"  ,       0       ,       -1      ,        "こã?ãƒ??タベã?スのãƒ?ƒ•ォルトã?トランザクション遮断レベルを取埗したすã? "        )
1472                    , new MetaDataInvoke( "getSQLStateType"         ,       0       ,       -1      ,        "Throwable.getSQLState によっお返される SQLSTATE ã?X/Open (珟圚は Open Group) の SQL CLI であるã?SQL99 であるかを瀺したすã? "  )
1473                    , new MetaDataInvoke( "getResultSetHoldability"         ,       0       ,       -1      ,        "こã? ResultSet オブゞェクトã?ãƒ?ƒ•ォルトã?保持機è?を取埗したすã? "       )
1474    
1475                    , new MetaDataInvoke( "allProceduresAreCallable"        ,       0       ,       -1      ,        "getProcedures メ゜ãƒ?ƒ‰ã«ã‚ˆã£ãŠè¿”されるすべおのプロシヌゞャがã?珟圚のナヌザから呌び出せるかどã?‹ã‚’取埗したすã? "    )
1476                    , new MetaDataInvoke( "allTablesAreSelectable"  ,       0       ,       -1      ,        "getTables メ゜ãƒ?ƒ‰ã«ã‚ˆã£ãŠè¿”されるすべおのãƒ??ブルがã?珟圚のナヌザによっお䜿甚できるかどã?‹ã‚’取埗したすã? "         )
1477                    , new MetaDataInvoke( "dataDefinitionCausesTransactionCommit"   ,       0       ,       -1      ,        "トランザクションのãƒ??タ定矩æ–?Œã€ãƒˆãƒ©ãƒ³ã‚¶ã‚¯ã‚·ãƒ§ãƒ³ã‚’匷制çš?«ã‚³ãƒŸãƒƒãƒˆã•せるかどã?‹ã‚’取埗したすã? "         )
1478                    , new MetaDataInvoke( "dataDefinitionIgnoredInTransactions"     ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、トランザクションでãƒ??タ定矩æ–?Œç„¡èŠ–ã•ã‚Œã‚‹ã‹ã©ã?‹ã‚’取埗したすã? "        )
1479                    , new MetaDataInvoke( "deletesAreDetected"      ,       1       ,       -1      ,        "ResultSet.rowDeleted メ゜ãƒ?ƒ‰ã‚’呌び出すこずによっお可芖ã?行が削陀されたこずを怜å?できるかどã?‹ã‚’取埗したすã? "       )
1480                    , new MetaDataInvoke( "doesMaxRowSizeIncludeBlobs"      ,       0       ,       -1      ,        "getMaxRowSize メ゜ãƒ?ƒ‰ã®æˆ»ã‚Šå?ã?SQL ãƒ??タの型ã? LONGVARCHAR および LONGVARBINARY を含ã‚?‹ã©ã?‹ã‚’取埗したすã? "         )
1481                    , new MetaDataInvoke( "insertsAreDetected"      ,       1       ,       -1      ,        "ResultSet.rowInserted メ゜ãƒ?ƒ‰ã‚’呌び出すこずによっお可芖ã?行が挿入されたこずを怜å?できるかどã?‹ã‚’取埗したすã? "     )
1482                    , new MetaDataInvoke( "isCatalogAtStart"        ,       0       ,       -1      ,        "完å?修食されたテヌブル名ã?開始郚åˆ?(たたã?終äº?ƒšåˆ? にカタログが珟れるかどã?‹ã‚’取埗したすã? "         )
1483                    , new MetaDataInvoke( "isReadOnly"      ,       0       ,       -1      ,        "こã?ãƒ??タベã?スが読み蟌み専甚モヌドかどã?‹ã‚’取埗したすã? "   )
1484                    , new MetaDataInvoke( "locatorsUpdateCopy"      ,       0       ,       -1      ,        "LOB ぞの倉曎がã?コピã?に察しお行われたのかã?LOB に盎接行われたのかを瀺したすã? "  )
1485                    , new MetaDataInvoke( "nullPlusNonNullIsNull"   ,       0       ,       -1      ,        "こã?ãƒ??タベã?スがã?NULL 倀ずé?NULL 倀の連結を NULL ずするかどã?‹ã‚’取埗したすã? "       )
1486                    , new MetaDataInvoke( "nullsAreSortedAtEnd"     ,       0       ,       -1      ,        "NULL 倀がã?終äº?™‚に゜ヌトé?にかかわらず゜ヌトされるかどã?‹ã‚’取埗したすã? "        )
1487                    , new MetaDataInvoke( "nullsAreSortedAtStart"   ,       0       ,       -1      ,        "NULL 倀がã?開始時に゜ヌトé?にかかわらず゜ヌトされるかどã?‹ã‚’取埗したすã? "        )
1488                    , new MetaDataInvoke( "nullsAreSortedHigh"      ,       0       ,       -1      ,        "NULL 倀が高䜍に゜ヌトされるかどã?‹ã‚’取埗したすã? "   )
1489                    , new MetaDataInvoke( "nullsAreSortedLow"       ,       0       ,       -1      ,        "NULL 倀が䞋䜍に゜ヌトされるかどã?‹ã‚’取埗したすã? "   )
1490                    , new MetaDataInvoke( "othersDeletesAreVisible"         ,       1       ,       -1      ,        "他で行われた削陀が可芖かどã?‹ã‚’取埗したすã? "  )
1491                    , new MetaDataInvoke( "othersInsertsAreVisible"         ,       1       ,       -1      ,        "他で行われた挿入が可芖かどã?‹ã‚’取埗したすã? "         )
1492                    , new MetaDataInvoke( "othersUpdatesAreVisible"         ,       1       ,       -1      ,        "他で行われた曎新が可芖かどã?‹ã‚’取埗したすã? "         )
1493                    , new MetaDataInvoke( "ownDeletesAreVisible"    ,       1       ,       -1      ,        "結果セãƒ?ƒˆè‡ªèº«ã®å‰Šé™€ãŒå¯èŠ–ã‹ã©ã?‹ã‚’取埗したすã? "     )
1494                    , new MetaDataInvoke( "ownInsertsAreVisible"    ,       1       ,       -1      ,        "結果セãƒ?ƒˆè‡ªèº«ã®æŒ¿å…¥ãŒå¯èŠ–ã‹ã©ã?‹ã‚’取埗したすã? "    )
1495                    , new MetaDataInvoke( "ownUpdatesAreVisible"    ,       1       ,       -1      ,        "æŒ?®šã•れた ResultSet オブゞェクトに぀ã?Šã€çµæžœã‚»ãƒ?ƒˆè‡ªèº«ã®æ›Žæ–°ãŒå¯èŠ–ã‹ã©ã?‹ã‚’取埗したすã? "      )
1496                    , new MetaDataInvoke( "storesLowerCaseIdentifiers"      ,       0       ,       -1      ,        "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊なしã? SQL 識別子を、倧æ–?­—小文字を区別しなã?§å‡Šç?—、小文字で栌玍するかどã?‹ã‚’取埗したすã? "       )
1497                    , new MetaDataInvoke( "storesLowerCaseQuotedIdentifiers"        ,       0       ,       -1      ,        "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊付きの SQL 識別子を、倧æ–?­—小文字を区別しなã?§å‡Šç?—、小文字で栌玍するかどã?‹ã‚’取埗したすã? "       )
1498                    , new MetaDataInvoke( "storesMixedCaseIdentifiers"      ,       0       ,       -1      ,        "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊なしã? SQL 識別子を、倧æ–?­—小文字を区別しなã?§å‡Šç?—、倧æ–?­—小文字混圚で栌玍するかどã?‹ã‚’取埗したすã? "    )
1499                    , new MetaDataInvoke( "storesMixedCaseQuotedIdentifiers"        ,       0       ,       -1      ,        "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊付きの SQL 識別子を、倧æ–?­—小文字を区別しなã?§å‡Šç?—、倧æ–?­—小文字混圚で栌玍するかどã?‹ã‚’取埗したすã? "    )
1500                    , new MetaDataInvoke( "storesUpperCaseIdentifiers"      ,       0       ,       -1      ,        "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊なしã? SQL 識別子を、倧æ–?­—小文字を区別しなã?§å‡Šç?—、倧æ–?­—で栌玍するかどã?‹ã‚’取埗したすã? "      )
1501                    , new MetaDataInvoke( "storesUpperCaseQuotedIdentifiers"        ,       0       ,       -1      ,        "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊付きの SQL 識別子を、倧æ–?­—小文字を区別しなã?§å‡Šç?—、倧æ–?­—で栌玍するかどã?‹ã‚’取埗したすã? "      )
1502                    , new MetaDataInvoke( "supportsAlterTableWithAddColumn"         ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、远åŠ??のある ALTER TABLE がサポã?トされるかどã?‹ã‚’取埗したすã? "  )
1503                    , new MetaDataInvoke( "supportsAlterTableWithDropColumn"        ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、ドロãƒ??列ã?ある ALTER TABLE がサポã?トされるかどã?‹ã‚’取埗したすã? "        )
1504                    , new MetaDataInvoke( "supportsANSI92EntryLevelSQL"     ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、ANSI92 ゚ントリレベルの SQL æ–?³•がサポã?トされるかどã?‹ã‚’取埗したすã? "    )
1505                    , new MetaDataInvoke( "supportsANSI92FullSQL"   ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、ANSI92 完å?レベルの SQL æ–?³•がサポã?トされるかどã?‹ã‚’取埗したすã? "        )
1506                    , new MetaDataInvoke( "supportsANSI92IntermediateSQL"   ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、ANSI92 䞭間レベルの SQL æ–?³•がサポã?トされるかどã?‹ã‚’取埗したすã? "        )
1507                    , new MetaDataInvoke( "supportsBatchUpdates"    ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっおバッチ曎新がサポã?トされるかどã?‹ã‚’取埗したすã? "   )
1508                    , new MetaDataInvoke( "supportsCatalogsInDataManipulation"      ,       0       ,       -1      ,        "ãƒ??タ操䜜文でカタログ名を䜿甚できるかどã?‹ã‚’取埗したすã? "   )
1509                    , new MetaDataInvoke( "supportsCatalogsInIndexDefinitions"      ,       0       ,       -1      ,        "むンãƒ?ƒƒã‚¯ã‚¹å®šçŸ©æ–?§ã‚«ã‚¿ãƒ­ã‚°åã‚’䜿甚できるかどã?‹ã‚’取埗したすã? "     )
1510                    , new MetaDataInvoke( "supportsCatalogsInPrivilegeDefinitions"  ,       0       ,       -1      ,        "特暩定矩æ–?§ã‚«ã‚¿ãƒ­ã‚°åã‚’䜿甚できるかどã?‹ã‚’取埗したすã? "    )
1511                    , new MetaDataInvoke( "supportsCatalogsInProcedureCalls"        ,       0       ,       -1      ,        "プロシヌゞャ呌び出し文でカタログ名を䜿甚できるかどã?‹ã‚’取埗したすã? "         )
1512                    , new MetaDataInvoke( "supportsCatalogsInTableDefinitions"      ,       0       ,       -1      ,        "ãƒ??ブル定矩æ–?§ã‚«ã‚¿ãƒ­ã‚°åã‚’䜿甚できるかどã?‹ã‚’取埗したすã? "  )
1513                    , new MetaDataInvoke( "supportsColumnAliasing"  ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお列ã?別名がサポã?トされるかどã?‹ã‚’取埗したすã?  "   )
1514            //      , new MetaDataInvoke( "supportsConvertFunc"     ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、SQL の型間の CONVERT 関数がサポã?トされるかどã?‹ã‚’取埗したすã? "  )
1515                    , new MetaDataInvoke( "supportsCoreSQLGrammar"  ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、ODBC Core SQL æ–?³•がサポã?トされるかどã?‹ã‚’取埗したすã? "        )
1516                    , new MetaDataInvoke( "supportsCorrelatedSubqueries"    ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお照合関係サブク゚リヌがサポã?トされるかどã?‹ã‚’取埗したすã? "  )
1517                    , new MetaDataInvoke( "supportsDataDefinitionAndDataManipulationTransactions"   ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、トランザクションで、デヌタ定矩æ–?šãƒ??タ操䜜文の䞡方がサポã?トされるかどã?‹ã‚’取埗したすã? "  )
1518                    , new MetaDataInvoke( "supportsDataManipulationTransactionsOnly"        ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、トランザクションでãƒ??タ操䜜文ã?‘がサポã?トされるかどã?‹ã‚’取埗したすã? "   )
1519                    , new MetaDataInvoke( "supportsDifferentTableCorrelationNames"  ,       0       ,       -1      ,        "ãƒ??ブル盞互関係名がサポã?トされる堎合ã?ãƒ??ブルの名前ず異なる名前であるずã?†åˆ¶é™ã‚’付けるかどã?‹ã‚’取埗したすã? "   )
1520                    , new MetaDataInvoke( "supportsExpressionsInOrderBy"    ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、ORDER BY リスト䞭で匏がサポã?トされるかどã?‹ã‚’取埗したすã? "     )
1521                    , new MetaDataInvoke( "supportsExtendedSQLGrammar"      ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、ODBC Extended SQL æ–?³•がサポã?トされるかどã?‹ã‚’取埗したすã? "    )
1522                    , new MetaDataInvoke( "supportsFullOuterJoins"  ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、完å?入れ子ã?倖郚結合がサポã?トされるかどã?‹ã‚’取埗したすã? "         )
1523                    , new MetaDataInvoke( "supportsGetGeneratedKeys"        ,       0       ,       -1      ,        "æ–?Œå®Ÿè¡Œã•れたあずに自動生成キヌを取埗できるかどã?‹ã‚’取埗したすã? "        )
1524                    , new MetaDataInvoke( "supportsGroupBy"         ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、GROUP BY ç¯??フォヌãƒ?Œã‚µãƒã?トされるかどã?‹ã‚’取埗したすã? "       )
1525                    , new MetaDataInvoke( "supportsGroupByBeyondSelect"     ,       0       ,       -1      ,        "SELECT æ–?ž­ã®ã™ã¹ãŠã®åˆ—が GROUP BY ç¯?«å«ãŸã‚Œã‚‹ãšã?†æ¡ä»¶ã§ã€ã“のãƒ??タベã?スによっお、GROUP BY ç¯?§ SELECT æ–?ž­ã«ãªã??の䜿甚がサポã?トされるかどã?‹ã‚’取埗したすã? "     )
1526                    , new MetaDataInvoke( "supportsGroupByUnrelated"        ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、GROUP BY ç¯?§ SELECT æ–?ž­ã«ãªã??の䜿甚がサポã?トされるかどã?‹ã‚’取埗したすã? "     )
1527                    , new MetaDataInvoke( "supportsIntegrityEnhancementFacility"    ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、SQL Integrity Enhancement Facility がサポã?トされるかどã?‹ã‚’取埗したすã? "       )
1528                    , new MetaDataInvoke( "supportsLikeEscapeClause"        ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、LIKE ゚スケヌプç¯??æŒ?®šãŒã‚µãƒã?トされるかどã?‹ã‚’取埗したすã? "    )
1529                    , new MetaDataInvoke( "supportsLimitedOuterJoins"       ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、倖郚結合に関しã?制限されたサポã?トが提䟛されるかどã?‹ã‚’取埗したã?(supportsFullOuterJoins メ゜ãƒ?ƒ‰ã?true を返す堎合ã? true)ã€?"  )
1530                    , new MetaDataInvoke( "supportsMinimumSQLGrammar"       ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、ODBC Minimum SQL æ–?³•がサポã?トされるかどã?‹ã‚’取埗したすã? "     )
1531                    , new MetaDataInvoke( "supportsMixedCaseIdentifiers"    ,       0       ,       -1      ,        "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊なしã? SQL 識別子を、倧æ–?­—小文字を区別しお凊ç?—、倧æ–?­—小文字混圚で栌玍するかどã?‹ã‚’取埗したすã? "       )
1532                    , new MetaDataInvoke( "supportsMixedCaseQuotedIdentifiers"      ,       0       ,       -1      ,        "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊付きの SQL 識別子を、倧æ–?­—小文字を区別しお凊ç?—、結果ずしお倧æ–?­—小文字混圚で栌玍するかどã?‹ã‚’取埗したすã? "       )
1533                    , new MetaDataInvoke( "supportsMultipleOpenResults"     ,       0       ,       -1      ,        "CallableStatement オブゞェクトから同時に返されたè€?•°ã® ResultSet オブゞェクトを持぀こずが可胜かどã?‹ã‚’取埗したすã? "  )
1534                    , new MetaDataInvoke( "supportsMultipleResultSets"      ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、execute メ゜ãƒ?ƒ‰ã®å˜äž??呌び出しからã?è€?•°ã® ResultSet オブゞェクトã?取埗がサポã?トされるかどã?‹ã‚’取埗したすã? "        )
1535                    , new MetaDataInvoke( "supportsMultipleTransactions"    ,       0       ,       -1      ,        "こã?ãƒ??タベã?スがäž?ºŠã«è€?•°ã®ãƒˆãƒ©ãƒ³ã‚¶ã‚¯ã‚·ãƒ§ãƒ³ã‚?(異なった接続で) オヌプンできるかどã?‹ã‚’取埗したすã? "     )
1536                    , new MetaDataInvoke( "supportsNamedParameters"         ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、callable æ–?žã®åå‰ä»˜ããƒ‘ラメヌタがサポã?トされるかどã?‹ã‚’取埗したすã? "     )
1537                    , new MetaDataInvoke( "supportsNonNullableColumns"      ,       0       ,       -1      ,        "こã?ãƒ??タベã?スの列をé?null ずしお定矩できるかどã?‹ã‚’取埗したすã? "    )
1538                    , new MetaDataInvoke( "supportsOpenCursorsAcrossCommit"         ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、コミット間でカヌ゜ルがオヌプンされたたたの状態がサポã?トされるかどã?‹ã‚’取埗したすã? "  )
1539                    , new MetaDataInvoke( "supportsOpenCursorsAcrossRollback"       ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、ロヌルバック間でカヌ゜ルがオヌプンされたたたの状態がサポã?トされるかどã?‹ã‚’取埗したすã? "      )
1540                    , new MetaDataInvoke( "supportsOpenStatementsAcrossCommit"      ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、コミット間でæ–?Œã‚ªãƒŒãƒ—ンされたたたの状態がサポã?トされるかどã?‹ã‚’取埗したすã? "        )
1541                    , new MetaDataInvoke( "supportsOpenStatementsAcrossRollback"    ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、ロヌルバック間でæ–?Œã‚ªãƒŒãƒ—ンされたたたの状態がサポã?トされるかどã?‹ã‚’取埗したすã? "    )
1542                    , new MetaDataInvoke( "supportsOrderByUnrelated"        ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、ORDER BY ç¯?§ SELECT æ–?ž­ã«ãªã??の䜿甚がサポã?トされるかどã?‹ã‚’取埗したすã? "     )
1543                    , new MetaDataInvoke( "supportsOuterJoins"      ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、倖郚結合のなんらかã?圢匏がサポã?トされるかどã?‹ã‚’取埗したすã? "     )
1544                    , new MetaDataInvoke( "supportsPositionedDelete"        ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、䜍眮æŒ?®šã•れた DELETE æ–?Œã‚µãƒã?トされるかどã?‹ã‚’取埗したすã? "   )
1545                    , new MetaDataInvoke( "supportsPositionedUpdate"        ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、䜍眮æŒ?®šã•れた UPDATE æ–?Œã‚µãƒã?トされるかどã?‹ã‚’取埗したすã? "   )
1546                    , new MetaDataInvoke( "supportsResultSetConcurrency"    ,       2       ,       -1      ,        "こã?ãƒ??タベã?スがã?æŒ?®šã•れた結果セãƒ?ƒˆã®åž‹ãšäžŽãˆã‚‰ã‚ŒãŸäžŠè¡Œå?ç??皮類ã?çµ?¿åˆã‚ã›ã‚’サポã?トするかどã?‹ã‚’取埗したすã? "      )
1547                    , new MetaDataInvoke( "supportsResultSetHoldability"    ,       3       ,       -1      ,        "こã?ãƒ??タベã?スがã?æŒ?®šã•れた結果セãƒ?ƒˆã®ä¿æŒæ©Ÿè?をサポã?トするかどã?‹ã‚’取埗したすã? "        )
1548                    , new MetaDataInvoke( "supportsResultSetType"   ,       4       ,       ResultSet.TYPE_FORWARD_ONLY     ,        "こã?ãƒ??タベã?スがã?[TYPE_FORWARD_ONLY]æŒ?®šã•れた結果セãƒ?ƒˆã®åž‹ã‚’サポã?トするかどã?‹ã‚’取埗したすã? "         )
1549                    , new MetaDataInvoke( "supportsResultSetType"   ,       4       ,       ResultSet.TYPE_SCROLL_INSENSITIVE       ,        "こã?ãƒ??タベã?スがã?[TYPE_SCROLL_INSENSITIVE]æŒ?®šã•れた結果セãƒ?ƒˆã®åž‹ã‚’サポã?トするかどã?‹ã‚’取埗したすã? "   )
1550                    , new MetaDataInvoke( "supportsResultSetType"   ,       4       ,       ResultSet.TYPE_SCROLL_SENSITIVE ,        "こã?ãƒ??タベã?スがã?[TYPE_SCROLL_SENSITIVE]æŒ?®šã•れた結果セãƒ?ƒˆã®åž‹ã‚’サポã?トするかどã?‹ã‚’取埗したすã? "     )
1551                    , new MetaDataInvoke( "supportsSavepoints"      ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっおセヌブã?むントがサポã?トされるかどã?‹ã‚’取埗したすã? "      )
1552                    , new MetaDataInvoke( "supportsSchemasInDataManipulation"       ,       0       ,       -1      ,        "ãƒ??タ操䜜文でスキヌマ名を䜿甚できるかどã?‹ã‚’取埗したすã? "   )
1553                    , new MetaDataInvoke( "supportsSchemasInIndexDefinitions"       ,       0       ,       -1      ,        "むンãƒ?ƒƒã‚¯ã‚¹å®šçŸ©æ–?§ã‚¹ã‚­ãƒŒãƒžåã‚’䜿甚できるかどã?‹ã‚’取埗したすã? "     )
1554                    , new MetaDataInvoke( "supportsSchemasInPrivilegeDefinitions"   ,       0       ,       -1      ,        "特暩定矩æ–?§ã‚¹ã‚­ãƒŒãƒžåã‚’䜿甚できるかどã?‹ã‚’取埗したすã? "    )
1555                    , new MetaDataInvoke( "supportsSchemasInProcedureCalls"         ,       0       ,       -1      ,        "プロシヌゞャ呌び出し文でスキヌマ名を䜿甚できるかどã?‹ã‚’取埗したすã? "         )
1556                    , new MetaDataInvoke( "supportsSchemasInTableDefinitions"       ,       0       ,       -1      ,        "ãƒ??ブル定矩æ–?§ã‚¹ã‚­ãƒŒãƒžåã‚’䜿甚できるかどã?‹ã‚’取埗したすã? "  )
1557                    , new MetaDataInvoke( "supportsSelectForUpdate"         ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお SELECT FOR UPDATE æ–?Œã‚µãƒã?トされるかどã?‹ã‚’取埗したすã? "      )
1558                    , new MetaDataInvoke( "supportsStatementPooling"        ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっおæ–??プã?ルがサポã?トされるかどã?‹ã‚’取埗したすã? "   )
1559                    , new MetaDataInvoke( "supportsStoredProcedures"        ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、ストアドã?ロシヌゞャ゚スケヌプ構文を䜿甚するストアドã?ロシヌゞャコヌルがサポã?トされるかどã?‹ã‚’刀定したすã? "  )
1560                    , new MetaDataInvoke( "supportsSubqueriesInComparisons"         ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、比èŒ?Œäž­ã§ã‚µãƒ–ク゚リヌがサポã?トされるかどã?‹ã‚’取埗したすã? "    )
1561                    , new MetaDataInvoke( "supportsSubqueriesInExists"      ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、EXISTS 匏䞭でサブク゚リヌがサポã?トされるかどã?‹ã‚’取埗したすã? "  )
1562                    , new MetaDataInvoke( "supportsSubqueriesInIns"         ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、IN æ–?ž­ã§ã‚µãƒ–ク゚リヌがサポã?トされるかどã?‹ã‚’取埗したすã? "      )
1563                    , new MetaDataInvoke( "supportsSubqueriesInQuantifieds"         ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、定量化された匏䞭でサブク゚リヌがサポã?トされるかどã?‹ã‚’取埗したすã? "       )
1564                    , new MetaDataInvoke( "supportsTableCorrelationNames"   ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっおãƒ??ブル盞互関係名がサポã?トされるかどã?‹ã‚’取埗したすã? "     )
1565                    , new MetaDataInvoke( "supportsTransactionIsolationLevel"       ,       4       ,       Connection.TRANSACTION_READ_COMMITTED   ,        "こã?ãƒ??タベã?スがã?æŒ?®šã•れたトランザクション遮断レベルをサポã?トするかどã?‹ã‚’取埗したすã? "        )
1566                    , new MetaDataInvoke( "supportsTransactionIsolationLevel"       ,       4       ,       Connection.TRANSACTION_READ_UNCOMMITTED ,        "こã?ãƒ??タベã?スがã?æŒ?®šã•れたトランザクション遮断レベルをサポã?トするかどã?‹ã‚’取埗したすã? "        )
1567                    , new MetaDataInvoke( "supportsTransactionIsolationLevel"       ,       4       ,       Connection.TRANSACTION_REPEATABLE_READ  ,        "こã?ãƒ??タベã?スがã?æŒ?®šã•れたトランザクション遮断レベルをサポã?トするかどã?‹ã‚’取埗したすã? "        )
1568                    , new MetaDataInvoke( "supportsTransactionIsolationLevel"       ,       4       ,       Connection.TRANSACTION_SERIALIZABLE     ,        "こã?ãƒ??タベã?スがã?æŒ?®šã•れたトランザクション遮断レベルをサポã?トするかどã?‹ã‚’取埗したすã? "        )
1569                    , new MetaDataInvoke( "supportsTransactions"    ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっおトランザクションがサポã?トされるかどã?‹ã‚’取埗したすã? "    )
1570                    , new MetaDataInvoke( "supportsUnion"   ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお SQL UNION がサポã?トされるかどã?‹ã‚’取埗したすã? "        )
1571                    , new MetaDataInvoke( "supportsUnionAll"        ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお SQL UNION ALL がサポã?トされるかどã?‹ã‚’取埗したすã? "    )
1572                    , new MetaDataInvoke( "updatesAreDetected"      ,       1       ,       -1      ,        "ResultSet.rowUpdated メ゜ãƒ?ƒ‰ã‚’呌び出すこずによっお可芖ã?行が曎新されたこずを怜å?できるかどã?‹ã‚’取埗したすã? "      )
1573                    , new MetaDataInvoke( "usesLocalFilePerTable"   ,       0       ,       -1      ,        "こã?ãƒ??タベã?スがã?å?ƒ†ãƒŒãƒ–ルにファむルを䜿甚するかどã?‹ã‚’取埗したすã? "         )
1574                    , new MetaDataInvoke( "usesLocalFiles"  ,       0       ,       -1      ,        "こã?ãƒ??タベã?スがã?ロヌカルファむルにãƒ??ブルをæ?玍するかどã?‹ã‚’取埗したすã? "    )
1575    
1576                    , new MetaDataInvoke( "getAttributes"   ,       72      ,       -1      ,        "æŒ?®šã•れたスキヌマおよã?カタログで䜿甚可胜なナヌザ定矩のåž?(UDT) のためのæŒ?®šã•れた型ã?æŒ?®šã•れた属æ?に関する蚘述を取埗したすã?  "    )
1577                    , new MetaDataInvoke( "getBestRowIdentifier"    ,       64      ,       -1      ,        "行をäž?„ã«è­˜åˆ¥ã™ã‚‹ãƒ??ブルのæœ?©ãªåˆ—ã‚»ãƒ?ƒˆã«é–¢ã™ã‚‹èš˜è¿°ã‚’取埗したすã? "     )
1578                    , new MetaDataInvoke( "getCatalogs"     ,       50      ,       -1      ,        "こã?ãƒ??タベã?スで䜿甚可胜なカタログ名を取埗したすã? "      )
1579                    , new MetaDataInvoke( "getColumnPrivileges"     ,       61      ,       -1      ,        "ãƒ??ブルの列ぞのアクセス暩に関する蚘述を取埗したすã?  "      )
1580                    , new MetaDataInvoke( "getColumns"      ,       61      ,       -1      ,        "æŒ?®šã•れたカタログで䜿甚可胜なãƒ??ブル列ã?蚘述を取埗したすã?  "       )
1581                    , new MetaDataInvoke( "getCrossReference"       ,       65      ,       -1      ,        "æŒ?®šã•れた䞻キヌãƒ??ブルの䞻キヌ列を参ç?するæŒ?®šã•れた倖郚のキヌãƒ??ブル䞭の、倖郚のキヌ列に関する蚘述 (ãƒ??ブルが別のキヌをむンポã?トする方法を蚘述) を取埗したすã? "  )
1582                    , new MetaDataInvoke( "getExportedKeys"         ,       60      ,       -1      ,        "æŒ?®šã•れたãƒ??ブルの䞻キヌåˆ?(ãƒ??ブルによっお゚クスポã?トされた倖郚キヌ) を参照する倖郚キヌ列に関する蚘述を取埗したすã? "        )
1583                    , new MetaDataInvoke( "getImportedKeys"         ,       60      ,       -1      ,        "ãƒ??ブルの倖郚キヌåˆ?(ãƒ??ブルによっおむンポã?トされる䞻キヌ) を参照する䞻キヌ列に関する蚘述を取埗したすã? "   )
1584                    , new MetaDataInvoke( "getIndexInfo"    ,       63      ,       -1      ,        "æŒ?®šã•れたãƒ??ブルのむンãƒ?ƒƒã‚¯ã‚¹ãšçµ±èšˆæƒ…報に関する蚘述を取埗したすã? "  )
1585                    , new MetaDataInvoke( "getPrimaryKeys"  ,       60      ,       -1      ,        "æŒ?®šã•れたãƒ??ブルの䞻キヌ列ã?蚘述を取埗したすã? "    )
1586                    , new MetaDataInvoke( "getProcedureColumns"     ,       81      ,       -1      ,        "æŒ?®šã•れたカタログのストアドã?ロシヌゞャパラメヌタず結果列に関する蚘述を取埗したすã?  "  )
1587                    , new MetaDataInvoke( "getProcedures"   ,       80      ,       -1      ,        "æŒ?®šã•れたカタログで䜿甚可胜なストアドã?ロシヌゞャに関する蚘述を取埗したすã?  "       )
1588                    , new MetaDataInvoke( "getSchemas"      ,       50      ,       -1      ,        "こã?ãƒ??タベã?スで䜿甚可胜なスキヌマ名を取埗したすã? "       )
1589                    , new MetaDataInvoke( "getSuperTables"  ,       60      ,       -1      ,        "こã?ãƒ??タベã?スの特定ã?スキヌマで定矩されおã?‚‹ãƒ??ブル階局の説明を取埗したすã?  "       )
1590                    , new MetaDataInvoke( "getSuperTypes"   ,       70      ,       -1      ,        "こã?ãƒ??タベã?スの特定ã?スキヌマで定矩されおã?‚‹ãƒŠãƒŒã‚¶å®šçŸ©åž?(UDT) 階局の説明を取埗したすã? "    )
1591                    , new MetaDataInvoke( "getTablePrivileges"      ,       60      ,       -1      ,        "カタログで䜿甚可胜なå?ƒ†ãƒŒãƒ–ルに察するアクセス暩に関する蚘述を取埗したすã? "         )
1592                    , new MetaDataInvoke( "getTables"       ,       62      ,       -1      ,        "æŒ?®šã•れたカタログで䜿甚可胜なãƒ??ブルに関する蚘述を取埗したすã? "    )
1593                    , new MetaDataInvoke( "getTableTypes"   ,       50      ,       -1      ,        "こã?ãƒ??タベã?スで䜿甚可胜なãƒ??ブルの型を取埗したすã? "      )
1594                    , new MetaDataInvoke( "getTypeInfo"     ,       50      ,       -1      ,        "こã?ãƒ??タベã?スでサポã?トされおã?‚‹ã™ã¹ãŠã®æš™æº?SQL の型に関する蚘述を取埗したすã? "       )
1595                    , new MetaDataInvoke( "getUDTs"         ,       71      ,       -1      ,        "特定ã?スキヌマで定矩されおã?‚‹ãƒŠãƒŒã‚¶å®šçŸ©åž?(UDT) の説明を取埗したすã? "       )
1596                    , new MetaDataInvoke( "getVersionColumns"       ,       60      ,       -1      ,        "行ã?任意ã?倀が倉曎されたå?合に、è?動的に曎新されるテヌブルの列に関する蚘述を取埗したすã? "    )
1597    
1598            // 5.5.3.2 (2012/06/08) JDk1.6 甚のメ゜ãƒ?ƒ‰ã‚’远åŠ?—たすã?
1599                    , new MetaDataInvoke( "autoCommitFailureClosesAllResultSets"    ,       0       ,       -1      ,        "autoCommit ã?true の堎合に、ResultSet が保持可胜であっおもã?すべおのオヌプンされã?ResultSet がクロヌズされたこずã‚?SQLException が瀺すかどã?‹ã‚’取埗したすã?"  )
1600                    , new MetaDataInvoke( "supportsConvert"         ,       0       ,       -1      ,        "こã?ãƒ??タベã?スによっお、JDBC åž?fromType ず toType の間ã?倉換に䜿甚されã‚?JDBC スカラヌ関数 CONVERT がサポã?トされるかどã?‹ã‚’取埗したすã?"    )
1601                    , new MetaDataInvoke( "supportsStoredFunctionsUsingCallSyntax"  ,       0       ,       -1      ,        "こã?ãƒ??タベã?スがã?ストアドã?ロシヌゞャヌ゚スケヌプ構文を䜿甚した、ナヌザヌ定矩関数たたã?ベンãƒ??関数の呌び出しをサポã?トするかどã?‹ã‚’取埗したすã?"     )
1602                    , new MetaDataInvoke( "getDatabaseMajorVersion"         ,       0       ,       -1      ,        "基本ずなるデヌタベã?スのメゞャヌバã?ゞョン番号を取埗したすã?"       )
1603                    , new MetaDataInvoke( "getDatabaseMinorVersion"         ,       0       ,       -1      ,        "基本ずなるデヌタベã?スのマむナã?バã?ゞョン番号を取埗したすã?"         )
1604                    , new MetaDataInvoke( "getJDBCMajorVersion"     ,       0       ,       -1      ,        "こã?ドラむバã? JDBC メゞャヌバã?ゞョン番号を取埗したすã?"    )
1605                    , new MetaDataInvoke( "getJDBCMinorVersion"     ,       0       ,       -1      ,        "こã?ドラむバã? JDBC マむナã?バã?ゞョン番号を取埗したすã?"      )
1606                    , new MetaDataInvoke( "getMaxBinaryLiteralLength"       ,       0       ,       -1      ,        "こã?ãƒ??タベã?スで、むンラむンバむナリリãƒ?ƒ©ãƒ«äž­ã«å…¥ã‚Œã‚‰ã‚Œã‚‹ 16 進数のæœ?€§æ–?­—数を取埗したすã?"    )
1607                    , new MetaDataInvoke( "getMaxCatalogNameLength"         ,       0       ,       -1      ,        "こã?ãƒ??タベã?スでの、カタログ名ã?æœ?€§æ–?­—数を取埗したすã?"    )
1608                    , new MetaDataInvoke( "getMaxCharLiteralLength"         ,       0       ,       -1      ,        "こã?ãƒ??タベã?スでの、キャラクタリãƒ?ƒ©ãƒ«ã®æœ?€§æ–?­—数を取埗したすã?"    )
1609                    , new MetaDataInvoke( "getMaxColumnNameLength"  ,       0       ,       -1      ,        "こã?ãƒ??タベã?スでの、å?名ã?æœ?€§æ–?­—数を取埗したすã?"  )
1610                    , new MetaDataInvoke( "getMaxColumnsInGroupBy"  ,       0       ,       -1      ,        "こã?ãƒ??タベã?スでの、GROUP BY ç¯?ž­ã®åˆ—数のæœ?€§å€€ã‚’取埗したすã?"      )
1611                    , new MetaDataInvoke( "getMaxColumnsInIndex"    ,       0       ,       -1      ,        "こã?ãƒ??タベã?スでの、むンãƒ?ƒƒã‚¯ã‚¹äž­ã®åˆ—数のæœ?€§å€€ã‚’取埗したすã?"      )
1612                    , new MetaDataInvoke( "getMaxColumnsInOrderBy"  ,       0       ,       -1      ,        "こã?ãƒ??タベã?スでの、ORDER BY ç¯?ž­ã®åˆ—数のæœ?€§å€€ã‚’取埗したすã?"      )
1613                    , new MetaDataInvoke( "getMaxColumnsInSelect"   ,       0       ,       -1      ,        "こã?ãƒ??タベã?スでの、SELECT リスト䞭の列数のæœ?€§å€€ã‚’取埗したすã?"    )
1614                    , new MetaDataInvoke( "getMaxColumnsInTable"    ,       0       ,       -1      ,        "こã?ãƒ??タベã?スでの、テヌブル䞭の列数のæœ?€§å€€ã‚’取埗したすã?"  )
1615                    , new MetaDataInvoke( "getMaxConnections"       ,       0       ,       -1      ,        "こã?ãƒ??タベã?スに察しお可胜な䞊行接続ã?æœ?€§æ•°ã‚’取埗したすã?"  )
1616                    , new MetaDataInvoke( "getMaxCursorNameLength"  ,       0       ,       -1      ,        "こã?ãƒ??タベã?スでの、カヌ゜ル名ã?æœ?€§æ–?­—数を取埗したすã?"    )
1617                    , new MetaDataInvoke( "getMaxIndexLength"       ,       0       ,       -1      ,        "こã?ãƒ??タベã?スでの、むンãƒ?ƒƒã‚¯ã‚¹ã®å…šéƒšåˆ?‚’含ã‚??むンãƒ?ƒƒã‚¯ã‚¹ã®æœ?€§ãƒã‚€ãƒˆæ•°ã‚’取埗したすã?"        )
1618                    , new MetaDataInvoke( "getMaxProcedureNameLength"       ,       0       ,       -1      ,        "こã?ãƒ??タベã?スでの、ã?ロシヌゞャヌ名ã?æœ?€§æ–?­—数を取埗したすã?"      )
1619                    , new MetaDataInvoke( "getMaxRowSize"   ,       0       ,       -1      ,        "こã?ãƒ??タベã?スでのã€? 行ã?æœ?€§ãƒã‚€ãƒˆæ•°ã‚’取埗したすã?"         )
1620                    , new MetaDataInvoke( "getMaxSchemaNameLength"  ,       0       ,       -1      ,        "こã?ãƒ??タベã?スでの、スキヌマ名のæœ?€§æ–?­—数を取埗したすã?"    )
1621                    , new MetaDataInvoke( "getMaxStatementLength"   ,       0       ,       -1      ,        "こã?ãƒ??タベã?スでの、SQL æ–??æœ?€§æ–?­—数を取埗したすã?"        )
1622                    , new MetaDataInvoke( "getMaxStatements"        ,       0       ,       -1      ,        "こã?ãƒ??タベã?スの同時にオヌプンできるアクãƒ?‚£ãƒ–なæ–??æœ?€§æ•°ã‚’取埗したすã?"       )
1623                    , new MetaDataInvoke( "getMaxTableNameLength"   ,       0       ,       -1      ,        "こã?ãƒ??タベã?スでの、テヌブル名ã?æœ?€§æ–?­—数を取埗したすã?"     )
1624                    , new MetaDataInvoke( "getMaxTablesInSelect"    ,       0       ,       -1      ,        "こã?ãƒ??タベã?スでの、SELECT æ–??æœ?€§ãƒ??ブル数を取埗したすã?"  )
1625                    , new MetaDataInvoke( "getMaxUserNameLength"    ,       0       ,       -1      ,        "こã?ãƒ??タベã?スでの、ナヌザヌ名ã?æœ?€§æ–?­—数を取埗したすã?"    )
1626    
1627                    , new MetaDataInvoke( "getClientInfoProperties" ,       50      ,       -1      ,       "ドラむバがサポã?トするクラむアント情報プロパティヌのリストを取埗したすã?" )
1628                    , new MetaDataInvoke( "getFunctionColumns"      ,       81      ,       -1      ,       "æŒ?®šã•れたカタログのシスãƒ?ƒ é–¢æ•°ãŸãŸã?ナヌザヌ関数のパラメヌタず返される型に関する蚘述を取埗したすã?"      )
1629                    , new MetaDataInvoke( "getFunctions"    ,       80      ,       -1      ,       "æŒ?®šã•れたカタログで䜿甚可胜なシスãƒ?ƒ é–¢æ•°ãŠã‚ˆã³ãƒŠãƒŒã‚¶ãƒŒé–¢æ•°ã«é–¢ã™ã‚‹èš˜è¿°ã‚’取埗したすã?"        )
1630            } ;
1631    
1632            private static final class MetaDataInvoke {
1633                    private final String  method  ;
1634                    private final int     type    ;                 // 0:匕数なã?1: 2: 3: 4:å†?ƒšvalue
1635                    private final Integer value   ;
1636                    private final String  comment ;
1637    
1638                    public MetaDataInvoke( String method,int type,int value,String comment ) {
1639                            this.method  = method  ;
1640                            this.type        = type    ;
1641                            this.value   = Integer.valueOf(value) ;
1642                            this.comment = comment ;
1643                    }
1644    
1645                    public String getMethod() { return method; }
1646    
1647                    public boolean isUseMethod( final String likeKey ) {
1648                            return ( likeKey == null || method.indexOf( likeKey ) >= 0 );
1649                    }
1650    
1651                    public int getType() { return type; }
1652    
1653                    public String getComment() { return comment; }
1654    
1655                    public String getErrMsg() { return errMsg; }
1656    
1657                    public Object invokeA( final DatabaseMetaData metaData , final Integer... vals  ) {
1658                            Object obj = null ;
1659    synchronized( metaData ) {
1660                                    try {
1661                                            if( type == 0 ) {
1662                                                    obj = metaData.getClass().getMethod( method ).invoke(metaData);
1663                                            } else if( type == 1 || type == 3 ) {
1664                                                    obj = metaData.getClass().getMethod( method,int.class ).invoke(metaData,vals[0]);
1665                                            } else if( type == 2 ) {
1666                                                    obj = metaData.getClass().getMethod( method,int.class,int.class ).invoke(metaData,vals[0],vals[1]);
1667                                            } else if( type == 4 ) {
1668                                                    obj = metaData.getClass().getMethod( method,int.class ).invoke(metaData,value);
1669                                            } else {
1670                                                    errMsg = "*** リフレクションタむプなし゚ラヌ ***";
1671                                            }
1672                                    }
1673                                    catch( Throwable ex ) {
1674                                            errMsg = "*** 実行時゚ラヌ ***" + ex.getMessage();
1675                                            obj = null;                             // "*** 実行時゚ラヌ ***"
1676                                    }
1677    }
1678                                    if( obj == null && errMsg == null ) { errMsg = "サポã?トされなã?©Ÿè?ですã?"; }
1679                            return obj ;
1680                    }
1681    
1682                    // 50   匕数なã?
1683                    // 60   (catalog, schema, tableName)
1684                    // 70   (catalog, schema, typeName)
1685                    // 80   (catalog, schema, procedureName)
1686                    // 62   (catalog, schema, tableName, (String[])null)    // String[]
1687                    // 71   (catalog, schema, typeName, (int[])null)                // int[]
1688                    // 63   (catalog, schema, tableName, false, false)
1689                    // 61   (catalog, schema, tableName, columnName)
1690                    // 72   (catalog, schema, typeName, attributeName)
1691                    // 81   (catalog, schema, procedureName, columnName)
1692                    // 64   (catalog, schema, tableName, (int)scope, (boolean)nullable)
1693                    // 65   (catalog, schema, tableName, (String)null, (String)null, (String)null)
1694    
1695                    private static final int     scope    = 0;
1696                    private static final boolean nullable = true;
1697    
1698                    private String errMsg = null;
1699    
1700                    public ResultSet invokeB( final DatabaseMetaData metaData , final String... vals  ) {
1701                            ResultSet obj = null ;
1702    synchronized( metaData ) {
1703                            try {
1704                                    if( type == 50 ) {      // 匕数なã?
1705                                            obj = (ResultSet)metaData.getClass().getMethod( method ).invoke(metaData);
1706                                    } else if( type == 60 || type == 70 || type == 80 ) {
1707                                            obj = (ResultSet)metaData.getClass().getMethod( method,String.class,String.class,String.class ).invoke(metaData,vals[0],vals[1],vals[2]);
1708                                    } else if( type == 62 ) {
1709                                            obj = (ResultSet)metaData.getClass().getMethod( method,String.class,String.class,String.class,String[].class ).invoke(metaData,vals[0],vals[1],vals[2],null);
1710                                    } else if( type == 71 ) {
1711                                            obj = (ResultSet)metaData.getClass().getMethod( method,String.class,String.class,String.class,int[].class ).invoke(metaData,vals[0],vals[1],vals[2],null);
1712                                    } else if( type == 63 ) {
1713                                            obj = (ResultSet)metaData.getClass().getMethod( method,String.class,String.class,String.class,boolean.class,boolean.class ).invoke(metaData,vals[0],vals[1],vals[2],false,false);
1714                                    } else if( type == 61 || type == 72 || type == 81 ) {
1715                                            obj = (ResultSet)metaData.getClass().getMethod( method,String.class,String.class,String.class,String.class ).invoke(metaData,vals[0],vals[1],vals[2],vals[3]);
1716                                    } else if( type == 64 ) {
1717                                            obj = (ResultSet)metaData.getClass().getMethod( method,String.class,String.class,String.class,int.class,boolean.class ).invoke(metaData,vals[0],vals[1],vals[2],scope,nullable);
1718                                    } else if( type == 65 ) {
1719                                            obj = (ResultSet)metaData.getClass().getMethod( method,String.class,String.class,String.class,String.class,String.class,String.class ).invoke(metaData,vals[0],vals[1],vals[2],null,null,null);
1720                                    } else {
1721                                            errMsg = "*** リフレクションタむプなし゚ラヌ ***";
1722                                    }
1723                            }
1724                            catch( Throwable ex ) {
1725                                    errMsg = "*** 実行時゚ラヌ ***" + ex.getMessage();
1726                                    obj = null;                             // "*** 実行時゚ラヌ ***"
1727                            }
1728    }
1729                            if( obj == null && errMsg == null ) { errMsg = "サポã?トされなã?©Ÿè?ですã?"; }
1730                            return obj ;
1731                    }
1732            }
1733    
1734    //      private static final String getCatalogSeparator = "こã?ãƒ??タベã?スがカタログ名ずãƒ??ブル名ã?セパレヌタずしお䜿甚する String" ;
1735    //      private static final String getCatalogTerm = "「catalog」に察するãƒ??タベã?スベンãƒ??の掚奚甚語を取埗したすã? " ;
1736    //      private static final String getDatabaseProductName = "こã?ãƒ??タベã?ス補品ã?名前を取埗したすã? " ;
1737    //      private static final String getDatabaseProductVersion = "こã?ãƒ??タベã?ス補品ã?バã?ゞョンを取埗したすã? " ;
1738    //      private static final String getDriverMajorVersion = "こã? JDBC ドラむバã?メゞャヌバã?ゞョンを取埗したすã? " ;
1739    //      private static final String getDriverMinorVersion = "こã? JDBC ドラむバã?マむナã?バã?ゞョンを取埗したすã? " ;
1740    //      private static final String getDriverName = "こã? JDBC ドラむバã?名前を取埗したすã? " ;
1741    //      private static final String getDriverVersion = "こã? JDBC ドラむバã?バã?ゞョンã‚?String" ;
1742    //      private static final String getExtraNameCharacters = "匕甚笊で囲たれおã?ªã?­˜åˆ¥åã«äœ¿ç”šã§ãã‚‹ã™ã¹ãŠã®ã€Œç‰¹æ®Šã?æ–?­?(a-z、A-Zã€?-9、およã? _ 以å€? を取埗したすã? " ;
1743    //      private static final String getIdentifierQuoteString = "SQL 識別子を匕甚するのに䜿甚するæ–?­—å?を取埗したすã? " ;
1744    //      private static final String getNumericFunctions = "こã?ãƒ??タベã?スで䜿甚可胜なコンマで区åˆ?£ãŸæ•°å­Šé–¢æ•°ã®ãƒªã‚¹ãƒˆã‚’取埗したすã? " ;
1745    //      private static final String getProcedureTerm = "「procedure」に察するãƒ??タベã?スベンãƒ??の掚奚甚語を取埗したすã? " ;
1746    //      private static final String getSchemaTerm = "「schema」に察するãƒ??タベã?スベンãƒ??の掚奚甚語を取埗したすã? " ;
1747    //      private static final String getSearchStringEscape = "ワむルドカヌド文字を゚スケヌプするã?に䜿甚できるæ–?­—å?を取埗したすã? " ;
1748    //      private static final String getSQLKeywords = "こã?ãƒ??タベã?スの SQL キヌワヌドであっお、SQL92 のキヌワヌドではなã??すべおのキヌワヌドをコンマで区åˆ?£ãŸãƒªã‚¹ãƒˆã‚’取埗したすã? " ;
1749    //      private static final String getStringFunctions = "こã?ãƒ??タベã?スで䜿甚可胜なコンマで区åˆ?£ãŸæ–‡å­—å?関数のリストを取埗したすã? " ;
1750    //      private static final String getSystemFunctions = "こã?ãƒ??タベã?スで䜿甚可胜なコンマで区åˆ?£ãŸã‚·ã‚¹ãƒ?ƒ é–¢æ•°ã®ãƒªã‚¹ãƒˆã‚’取埗したすã? " ;
1751            private static final String getTimeDateFunctions = "こã?ãƒ??タベã?スで䜿甚可胜な時間関数ず日付関数をコンマで区åˆ?£ãŸãƒªã‚¹ãƒˆã‚’取埗したすã? " ;
1752    //      private static final String getURL = "こã? DBMS の URL を取埗したすã? " ;
1753    //      private static final String getUserName = "こã?ãƒ??タベã?スに蚘録されおã?‚‹ãƒŠãƒŒã‚¶åã‚’取埗したすã? " ;
1754    //
1755    //      private static final String getDefaultTransactionIsolation = "こã?ãƒ??タベã?スのãƒ?ƒ•ォルトã?トランザクション遮断レベルを取埗したすã? " ;
1756    //      private static final String getSQLStateType = "Throwable.getSQLState によっお返される SQLSTATE ã?X/Open (珟圚は Open Group) の SQL CLI であるã?SQL99 であるかを瀺したすã? " ;
1757    //      private static final String getResultSetHoldability = "こã? ResultSet オブゞェクトã?ãƒ?ƒ•ォルトã?保持機è?を取埗したすã? " ;
1758    //
1759    //      private static final String allProceduresAreCallable = "getProcedures メ゜ãƒ?ƒ‰ã«ã‚ˆã£ãŠè¿”されるすべおのプロシヌゞャがã?珟圚のナヌザから呌び出せるかどã?‹ã‚’取埗したすã? " ;
1760    //      private static final String allTablesAreSelectable = "getTables メ゜ãƒ?ƒ‰ã«ã‚ˆã£ãŠè¿”されるすべおのãƒ??ブルがã?珟圚のナヌザによっお䜿甚できるかどã?‹ã‚’取埗したすã? " ;
1761    //      private static final String dataDefinitionCausesTransactionCommit = "トランザクションのãƒ??タ定矩æ–?Œã€ãƒˆãƒ©ãƒ³ã‚¶ã‚¯ã‚·ãƒ§ãƒ³ã‚’匷制çš?«ã‚³ãƒŸãƒƒãƒˆã•せるかどã?‹ã‚’取埗したすã? " ;
1762    //      private static final String dataDefinitionIgnoredInTransactions = "こã?ãƒ??タベã?スによっお、トランザクションでãƒ??タ定矩æ–?Œç„¡èŠ–ã•ã‚Œã‚‹ã‹ã©ã?‹ã‚’取埗したすã? " ;
1763    //      private static final String deletesAreDetected = "ResultSet.rowDeleted メ゜ãƒ?ƒ‰ã‚’呌び出すこずによっお可芖ã?行が削陀されたこずを怜å?できるかどã?‹ã‚’取埗したすã? " ;
1764    //      private static final String doesMaxRowSizeIncludeBlobs = "getMaxRowSize メ゜ãƒ?ƒ‰ã®æˆ»ã‚Šå?ã?SQL ãƒ??タの型ã? LONGVARCHAR および LONGVARBINARY を含ã‚?‹ã©ã?‹ã‚’取埗したすã? " ;
1765    //      private static final String insertsAreDetected = "ResultSet.rowInserted メ゜ãƒ?ƒ‰ã‚’呌び出すこずによっお可芖ã?行が挿入されたこずを怜å?できるかどã?‹ã‚’取埗したすã? " ;
1766    //      private static final String isCatalogAtStart = "完å?修食されたテヌブル名ã?開始郚åˆ?(たたã?終äº?ƒšåˆ? にカタログが珟れるかどã?‹ã‚’取埗したすã? " ;
1767    //      private static final String isReadOnly = "こã?ãƒ??タベã?スが読み蟌み専甚モヌドかどã?‹ã‚’取埗したすã? " ;
1768    //      private static final String locatorsUpdateCopy = "LOB ぞの倉曎がã?コピã?に察しお行われたのかã?LOB に盎接行われたのかを瀺したすã? " ;
1769    //      private static final String nullPlusNonNullIsNull = "こã?ãƒ??タベã?スがã?NULL 倀ずé?NULL 倀の連結を NULL ずするかどã?‹ã‚’取埗したすã? " ;
1770    //      private static final String nullsAreSortedAtEnd = "NULL 倀がã?終äº?™‚に゜ヌトé?にかかわらず゜ヌトされるかどã?‹ã‚’取埗したすã? " ;
1771    //      private static final String nullsAreSortedAtStart = "NULL 倀がã?開始時に゜ヌトé?にかかわらず゜ヌトされるかどã?‹ã‚’取埗したすã? " ;
1772    //      private static final String nullsAreSortedHigh = "NULL 倀が高䜍に゜ヌトされるかどã?‹ã‚’取埗したすã? " ;
1773    //      private static final String nullsAreSortedLow = "NULL 倀が䞋䜍に゜ヌトされるかどã?‹ã‚’取埗したすã? " ;
1774    //      private static final String othersDeletesAreVisible = "他で行われた削陀が可芖かどã?‹ã‚’取埗したすã? " ;
1775    //      private static final String othersInsertsAreVisible = "他で行われた挿入が可芖かどã?‹ã‚’取埗したすã? " ;
1776    //      private static final String othersUpdatesAreVisible = "他で行われた曎新が可芖かどã?‹ã‚’取埗したすã? " ;
1777    //      private static final String ownDeletesAreVisible = "結果セãƒ?ƒˆè‡ªèº«ã®å‰Šé™€ãŒå¯èŠ–ã‹ã©ã?‹ã‚’取埗したすã? " ;
1778    //      private static final String ownInsertsAreVisible = "結果セãƒ?ƒˆè‡ªèº«ã®æŒ¿å…¥ãŒå¯èŠ–ã‹ã©ã?‹ã‚’取埗したすã? " ;
1779    //      private static final String ownUpdatesAreVisible = "æŒ?®šã•れた ResultSet オブゞェクトに぀ã?Šã€çµæžœã‚»ãƒ?ƒˆè‡ªèº«ã®æ›Žæ–°ãŒå¯èŠ–ã‹ã©ã?‹ã‚’取埗したすã? " ;
1780    //      private static final String storesLowerCaseIdentifiers = "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊なしã? SQL 識別子を、倧æ–?­—小文字を区別しなã?§å‡Šç?—、小文字で栌玍するかどã?‹ã‚’取埗したすã? " ;
1781    //      private static final String storesLowerCaseQuotedIdentifiers = "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊付きの SQL 識別子を、倧æ–?­—小文字を区別しなã?§å‡Šç?—、小文字で栌玍するかどã?‹ã‚’取埗したすã? " ;
1782    //      private static final String storesMixedCaseIdentifiers = "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊なしã? SQL 識別子を、倧æ–?­—小文字を区別しなã?§å‡Šç?—、倧æ–?­—小文字混圚で栌玍するかどã?‹ã‚’取埗したすã? " ;
1783    //      private static final String storesMixedCaseQuotedIdentifiers = "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊付きの SQL 識別子を、倧æ–?­—小文字を区別しなã?§å‡Šç?—、倧æ–?­—小文字混圚で栌玍するかどã?‹ã‚’取埗したすã? " ;
1784    //      private static final String storesUpperCaseIdentifiers = "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊なしã? SQL 識別子を、倧æ–?­—小文字を区別しなã?§å‡Šç?—、倧æ–?­—で栌玍するかどã?‹ã‚’取埗したすã? " ;
1785    //      private static final String storesUpperCaseQuotedIdentifiers = "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊付きの SQL 識別子を、倧æ–?­—小文字を区別しなã?§å‡Šç?—、倧æ–?­—で栌玍するかどã?‹ã‚’取埗したすã? " ;
1786    //      private static final String supportsAlterTableWithAddColumn = "こã?ãƒ??タベã?スによっお、远åŠ??のある ALTER TABLE がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1787    //      private static final String supportsAlterTableWithDropColumn = "こã?ãƒ??タベã?スによっお、ドロãƒ??列ã?ある ALTER TABLE がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1788    //      private static final String supportsANSI92EntryLevelSQL = "こã?ãƒ??タベã?スによっお、ANSI92 ゚ントリレベルの SQL æ–?³•がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1789    //      private static final String supportsANSI92FullSQL = "こã?ãƒ??タベã?スによっお、ANSI92 完å?レベルの SQL æ–?³•がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1790    //      private static final String supportsANSI92IntermediateSQL = "こã?ãƒ??タベã?スによっお、ANSI92 䞭間レベルの SQL æ–?³•がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1791    //      private static final String supportsBatchUpdates = "こã?ãƒ??タベã?スによっおバッチ曎新がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1792    //      private static final String supportsCatalogsInDataManipulation = "ãƒ??タ操䜜文でカタログ名を䜿甚できるかどã?‹ã‚’取埗したすã? " ;
1793    //      private static final String supportsCatalogsInIndexDefinitions = "むンãƒ?ƒƒã‚¯ã‚¹å®šçŸ©æ–?§ã‚«ã‚¿ãƒ­ã‚°åã‚’䜿甚できるかどã?‹ã‚’取埗したすã? " ;
1794    //      private static final String supportsCatalogsInPrivilegeDefinitions = "特暩定矩æ–?§ã‚«ã‚¿ãƒ­ã‚°åã‚’䜿甚できるかどã?‹ã‚’取埗したすã? " ;
1795    //      private static final String supportsCatalogsInProcedureCalls = "プロシヌゞャ呌び出し文でカタログ名を䜿甚できるかどã?‹ã‚’取埗したすã? " ;
1796    //      private static final String supportsCatalogsInTableDefinitions = "ãƒ??ブル定矩æ–?§ã‚«ã‚¿ãƒ­ã‚°åã‚’䜿甚できるかどã?‹ã‚’取埗したすã? " ;
1797    //      private static final String supportsColumnAliasing = "こã?ãƒ??タベã?スによっお列ã?別名がサポã?トされるかどã?‹ã‚’取埗したすã?  " ;
1798            private static final String supportsConvertFunc = "こã?ãƒ??タベã?スによっお、SQL の型間の CONVERT 関数がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1799    //      private static final String supportsCoreSQLGrammar = "こã?ãƒ??タベã?スによっお、ODBC Core SQL æ–?³•がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1800    //      private static final String supportsCorrelatedSubqueries = "こã?ãƒ??タベã?スによっお照合関係サブク゚リヌがサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1801    //      private static final String supportsDataDefinitionAndDataManipulationTransactions = "こã?ãƒ??タベã?スによっお、トランザクションで、デヌタ定矩æ–?šãƒ??タ操䜜文の䞡方がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1802    //      private static final String supportsDataManipulationTransactionsOnly = "こã?ãƒ??タベã?スによっお、トランザクションでãƒ??タ操䜜文ã?‘がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1803    //      private static final String supportsDifferentTableCorrelationNames = "ãƒ??ブル盞互関係名がサポã?トされる堎合ã?ãƒ??ブルの名前ず異なる名前であるずã?†åˆ¶é™ã‚’付けるかどã?‹ã‚’取埗したすã? " ;
1804    //      private static final String supportsExpressionsInOrderBy = "こã?ãƒ??タベã?スによっお、ORDER BY リスト䞭で匏がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1805    //      private static final String supportsExtendedSQLGrammar = "こã?ãƒ??タベã?スによっお、ODBC Extended SQL æ–?³•がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1806    //      private static final String supportsFullOuterJoins = "こã?ãƒ??タベã?スによっお、完å?入れ子ã?倖郚結合がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1807    //      private static final String supportsGetGeneratedKeys = "æ–?Œå®Ÿè¡Œã•れたあずに自動生成キヌを取埗できるかどã?‹ã‚’取埗したすã? " ;
1808    //      private static final String supportsGroupBy = "こã?ãƒ??タベã?スによっお、GROUP BY ç¯??フォヌãƒ?Œã‚µãƒã?トされるかどã?‹ã‚’取埗したすã? " ;
1809    //      private static final String supportsGroupByBeyondSelect = "SELECT æ–?ž­ã®ã™ã¹ãŠã®åˆ—が GROUP BY ç¯?«å«ãŸã‚Œã‚‹ãšã?†æ¡ä»¶ã§ã€ã“のãƒ??タベã?スによっお、GROUP BY ç¯?§ SELECT æ–?ž­ã«ãªã??の䜿甚がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1810    //      private static final String supportsGroupByUnrelated = "こã?ãƒ??タベã?スによっお、GROUP BY ç¯?§ SELECT æ–?ž­ã«ãªã??の䜿甚がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1811    //      private static final String supportsIntegrityEnhancementFacility = "こã?ãƒ??タベã?スによっお、SQL Integrity Enhancement Facility がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1812    //      private static final String supportsLikeEscapeClause = "こã?ãƒ??タベã?スによっお、LIKE ゚スケヌプç¯??æŒ?®šãŒã‚µãƒã?トされるかどã?‹ã‚’取埗したすã? " ;
1813    //      private static final String supportsLimitedOuterJoins = "こã?ãƒ??タベã?スによっお、倖郚結合に関しã?制限されたサポã?トが提䟛されるかどã?‹ã‚’取埗したã?(supportsFullOuterJoins メ゜ãƒ?ƒ‰ã?true を返す堎合ã? true)ã€?" ;
1814    //      private static final String supportsMinimumSQLGrammar = "こã?ãƒ??タベã?スによっお、ODBC Minimum SQL æ–?³•がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1815    //      private static final String supportsMixedCaseIdentifiers = "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊なしã? SQL 識別子を、倧æ–?­—小文字を区別しお凊ç?—、倧æ–?­—小文字混圚で栌玍するかどã?‹ã‚’取埗したすã? " ;
1816    //      private static final String supportsMixedCaseQuotedIdentifiers = "こã?ãƒ??タベã?スがã?倧æ–?­—小文字が混圚する匕甚笊付きの SQL 識別子を、倧æ–?­—小文字を区別しお凊ç?—、結果ずしお倧æ–?­—小文字混圚で栌玍するかどã?‹ã‚’取埗したすã? " ;
1817    //      private static final String supportsMultipleOpenResults = "CallableStatement オブゞェクトから同時に返されたè€?•°ã® ResultSet オブゞェクトを持぀こずが可胜かどã?‹ã‚’取埗したすã? " ;
1818    //      private static final String supportsMultipleResultSets = "こã?ãƒ??タベã?スによっお、execute メ゜ãƒ?ƒ‰ã®å˜äž??呌び出しからã?è€?•°ã® ResultSet オブゞェクトã?取埗がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1819    //      private static final String supportsMultipleTransactions = "こã?ãƒ??タベã?スがäž?ºŠã«è€?•°ã®ãƒˆãƒ©ãƒ³ã‚¶ã‚¯ã‚·ãƒ§ãƒ³ã‚?(異なった接続で) オヌプンできるかどã?‹ã‚’取埗したすã? " ;
1820    //      private static final String supportsNamedParameters = "こã?ãƒ??タベã?スによっお、callable æ–?žã®åå‰ä»˜ããƒ‘ラメヌタがサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1821    //      private static final String supportsNonNullableColumns = "こã?ãƒ??タベã?スの列をé?null ずしお定矩できるかどã?‹ã‚’取埗したすã? " ;
1822    //      private static final String supportsOpenCursorsAcrossCommit = "こã?ãƒ??タベã?スによっお、コミット間でカヌ゜ルがオヌプンされたたたの状態がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1823    //      private static final String supportsOpenCursorsAcrossRollback = "こã?ãƒ??タベã?スによっお、ロヌルバック間でカヌ゜ルがオヌプンされたたたの状態がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1824    //      private static final String supportsOpenStatementsAcrossCommit = "こã?ãƒ??タベã?スによっお、コミット間でæ–?Œã‚ªãƒŒãƒ—ンされたたたの状態がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1825    //      private static final String supportsOpenStatementsAcrossRollback = "こã?ãƒ??タベã?スによっお、ロヌルバック間でæ–?Œã‚ªãƒŒãƒ—ンされたたたの状態がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1826    //      private static final String supportsOrderByUnrelated = "こã?ãƒ??タベã?スによっお、ORDER BY ç¯?§ SELECT æ–?ž­ã«ãªã??の䜿甚がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1827    //      private static final String supportsOuterJoins = "こã?ãƒ??タベã?スによっお、倖郚結合のなんらかã?圢匏がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1828    //      private static final String supportsPositionedDelete = "こã?ãƒ??タベã?スによっお、䜍眮æŒ?®šã•れた DELETE æ–?Œã‚µãƒã?トされるかどã?‹ã‚’取埗したすã? " ;
1829    //      private static final String supportsPositionedUpdate = "こã?ãƒ??タベã?スによっお、䜍眮æŒ?®šã•れた UPDATE æ–?Œã‚µãƒã?トされるかどã?‹ã‚’取埗したすã? " ;
1830    //      private static final String supportsResultSetConcurrency = "こã?ãƒ??タベã?スがã?æŒ?®šã•れた結果セãƒ?ƒˆã®åž‹ãšäžŽãˆã‚‰ã‚ŒãŸäžŠè¡Œå?ç??皮類ã?çµ?¿åˆã‚ã›ã‚’サポã?トするかどã?‹ã‚’取埗したすã? " ;
1831    //      private static final String supportsResultSetHoldability = "こã?ãƒ??タベã?スがã?æŒ?®šã•れた結果セãƒ?ƒˆã®ä¿æŒæ©Ÿè?をサポã?トするかどã?‹ã‚’取埗したすã? " ;
1832    //      private static final String supportsResultSetType = "こã?ãƒ??タベã?スがã?æŒ?®šã•れた結果セãƒ?ƒˆã®åž‹ã‚’サポã?トするかどã?‹ã‚’取埗したすã? " ;
1833    //      private static final String supportsSavepoints = "こã?ãƒ??タベã?スによっおセヌブã?むントがサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1834    //      private static final String supportsSchemasInDataManipulation = "ãƒ??タ操䜜文でスキヌマ名を䜿甚できるかどã?‹ã‚’取埗したすã? " ;
1835    //      private static final String supportsSchemasInIndexDefinitions = "むンãƒ?ƒƒã‚¯ã‚¹å®šçŸ©æ–?§ã‚¹ã‚­ãƒŒãƒžåã‚’䜿甚できるかどã?‹ã‚’取埗したすã? " ;
1836    //      private static final String supportsSchemasInPrivilegeDefinitions = "特暩定矩æ–?§ã‚¹ã‚­ãƒŒãƒžåã‚’䜿甚できるかどã?‹ã‚’取埗したすã? " ;
1837    //      private static final String supportsSchemasInProcedureCalls = "プロシヌゞャ呌び出し文でスキヌマ名を䜿甚できるかどã?‹ã‚’取埗したすã? " ;
1838    //      private static final String supportsSchemasInTableDefinitions = "ãƒ??ブル定矩æ–?§ã‚¹ã‚­ãƒŒãƒžåã‚’䜿甚できるかどã?‹ã‚’取埗したすã? " ;
1839    //      private static final String supportsSelectForUpdate = "こã?ãƒ??タベã?スによっお SELECT FOR UPDATE æ–?Œã‚µãƒã?トされるかどã?‹ã‚’取埗したすã? " ;
1840    //      private static final String supportsStatementPooling = "こã?ãƒ??タベã?スによっおæ–??プã?ルがサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1841    //      private static final String supportsStoredProcedures = "こã?ãƒ??タベã?スによっお、ストアドã?ロシヌゞャ゚スケヌプ構文を䜿甚するストアドã?ロシヌゞャコヌルがサポã?トされるかどã?‹ã‚’刀定したすã? " ;
1842    //      private static final String supportsSubqueriesInComparisons = "こã?ãƒ??タベã?スによっお、比èŒ?Œäž­ã§ã‚µãƒ–ク゚リヌがサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1843    //      private static final String supportsSubqueriesInExists = "こã?ãƒ??タベã?スによっお、EXISTS 匏䞭でサブク゚リヌがサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1844    //      private static final String supportsSubqueriesInIns = "こã?ãƒ??タベã?スによっお、IN æ–?ž­ã§ã‚µãƒ–ク゚リヌがサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1845    //      private static final String supportsSubqueriesInQuantifieds = "こã?ãƒ??タベã?スによっお、定量化された匏䞭でサブク゚リヌがサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1846    //      private static final String supportsTableCorrelationNames = "こã?ãƒ??タベã?スによっおãƒ??ブル盞互関係名がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1847    //      private static final String supportsTransactionIsolationLevel = "こã?ãƒ??タベã?スがã?æŒ?®šã•れたトランザクション遮断レベルをサポã?トするかどã?‹ã‚’取埗したすã? " ;
1848    //      private static final String supportsTransactions = "こã?ãƒ??タベã?スによっおトランザクションがサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1849    //      private static final String supportsUnion = "こã?ãƒ??タベã?スによっお SQL UNION がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1850    //      private static final String supportsUnionAll = "こã?ãƒ??タベã?スによっお SQL UNION ALL がサポã?トされるかどã?‹ã‚’取埗したすã? " ;
1851    //      private static final String updatesAreDetected = "ResultSet.rowUpdated メ゜ãƒ?ƒ‰ã‚’呌び出すこずによっお可芖ã?行が曎新されたこずを怜å?できるかどã?‹ã‚’取埗したすã? " ;
1852    //      private static final String usesLocalFilePerTable = "こã?ãƒ??タベã?スがã?å?ƒ†ãƒŒãƒ–ルにファむルを䜿甚するかどã?‹ã‚’取埗したすã? " ;
1853    //      private static final String usesLocalFiles = "こã?ãƒ??タベã?スがã?ロヌカルファむルにãƒ??ブルをæ?玍するかどã?‹ã‚’取埗したすã? " ;
1854    
1855            private static final String getAttributes = "æŒ?®šã•れたスキヌマおよã?カタログで䜿甚可胜なナヌザ定矩のåž?(UDT) のためのæŒ?®šã•れた型ã?æŒ?®šã•れた属æ?に関する蚘述を取埗したすã?  " ;
1856    //      private static final String getBestRowIdentifier = "行をäž?„ã«è­˜åˆ¥ã™ã‚‹ãƒ??ブルのæœ?©ãªåˆ—ã‚»ãƒ?ƒˆã«é–¢ã™ã‚‹èš˜è¿°ã‚’取埗したすã? " ;
1857    //      private static final String getCatalogs = "こã?ãƒ??タベã?スで䜿甚可胜なカタログ名を取埗したすã? " ;
1858    //      private static final String getColumnPrivileges = "ãƒ??ブルの列ぞのアクセス暩に関する蚘述を取埗したすã?  " ;
1859            private static final String getColumns = "æŒ?®šã•れたカタログで䜿甚可胜なãƒ??ブル列ã?蚘述を取埗したすã?  " ;
1860    //      private static final String getCrossReference = "æŒ?®šã•れた䞻キヌãƒ??ブルの䞻キヌ列を参ç?するæŒ?®šã•れた倖郚のキヌãƒ??ブル䞭の、倖郚のキヌ列に関する蚘述 (ãƒ??ブルが別のキヌをむンポã?トする方法を蚘述) を取埗したすã? " ;
1861    //      private static final String getExportedKeys = "æŒ?®šã•れたãƒ??ブルの䞻キヌåˆ?(ãƒ??ブルによっお゚クスポã?トされた倖郚キヌ) を参照する倖郚キヌ列に関する蚘述を取埗したすã? " ;
1862    //      private static final String getImportedKeys = "ãƒ??ブルの倖郚キヌåˆ?(ãƒ??ブルによっおむンポã?トされる䞻キヌ) を参照する䞻キヌ列に関する蚘述を取埗したすã? " ;
1863            private static final String getIndexInfo = "æŒ?®šã•れたãƒ??ブルのむンãƒ?ƒƒã‚¯ã‚¹ãšçµ±èšˆæƒ…報に関する蚘述を取埗したすã? " ;
1864    //      private static final String getPrimaryKeys = "æŒ?®šã•れたãƒ??ブルの䞻キヌ列ã?蚘述を取埗したすã? " ;
1865    //      private static final String getProcedureColumns = "æŒ?®šã•れたカタログのストアドã?ロシヌゞャパラメヌタず結果列に関する蚘述を取埗したすã?  " ;
1866    //      private static final String getProcedures = "æŒ?®šã•れたカタログで䜿甚可胜なストアドã?ロシヌゞャに関する蚘述を取埗したすã?  " ;
1867    //      private static final String getSchemas = "こã?ãƒ??タベã?スで䜿甚可胜なスキヌマ名を取埗したすã? " ;
1868            private static final String getSuperTables = "こã?ãƒ??タベã?スの特定ã?スキヌマで定矩されおã?‚‹ãƒ??ブル階局の説明を取埗したすã?  " ;
1869            private static final String getSuperTypes = "こã?ãƒ??タベã?スの特定ã?スキヌマで定矩されおã?‚‹ãƒŠãƒŒã‚¶å®šçŸ©åž?(UDT) 階局の説明を取埗したすã? " ;
1870    //      private static final String getTablePrivileges = "カタログで䜿甚可胜なå?ƒ†ãƒŒãƒ–ルに察するアクセス暩に関する蚘述を取埗したすã? " ;
1871    //      private static final String getTables = "æŒ?®šã•れたカタログで䜿甚可胜なãƒ??ブルに関する蚘述を取埗したすã? " ;
1872    //      private static final String getTableTypes = "こã?ãƒ??タベã?スで䜿甚可胜なãƒ??ブルの型を取埗したすã? " ;
1873            private static final String getTypeInfo = "こã?ãƒ??タベã?スでサポã?トされおã?‚‹ã™ã¹ãŠã®æš™æº?SQL の型に関する蚘述を取埗したすã? " ;
1874    //      private static final String getUDTs = "特定ã?スキヌマで定矩されおã?‚‹ãƒŠãƒŒã‚¶å®šçŸ©åž?(UDT) の説明を取埗したすã? " ;
1875    //      private static final String getVersionColumns = "行ã?任意ã?倀が倉曎されたå?合に、è?動的に曎新されるテヌブルの列に関する蚘述を取埗したすã? " ;
1876    
1877            // 5.5.3.2 (2012/06/08) JDk1.6 甚のメ゜ãƒ?ƒ‰ã‚’远åŠ?—たすã?
1878    //      private static final String autoCommitFailureClosesAllResultSets = "autoCommit ã?true の堎合に、ResultSet が保持可胜であっおもã?すべおのオヌプンされã?ResultSet がクロヌズされたこずã‚?SQLException が瀺すかどã?‹ã‚’取埗したすã?" ;
1879    //      private static final String supportsConvert = "こã?ãƒ??タベã?スによっお、JDBC åž?fromType ず toType の間ã?倉換に䜿甚されã‚?JDBC スカラヌ関数 CONVERT がサポã?トされるかどã?‹ã‚’取埗したすã?" ;
1880    //      private static final String supportsStoredFunctionsUsingCallSyntax = "こã?ãƒ??タベã?スがã?ストアドã?ロシヌゞャヌ゚スケヌプ構文を䜿甚した、ナヌザヌ定矩関数たたã?ベンãƒ??関数の呌び出しをサポã?トするかどã?‹ã‚’取埗したすã?" ;
1881    //      private static final String getDatabaseMajorVersion = "基本ずなるデヌタベã?スのメゞャヌバã?ゞョン番号を取埗したすã?" ;
1882    //      private static final String getDatabaseMinorVersion = "基本ずなるデヌタベã?スのマむナã?バã?ゞョン番号を取埗したすã?" ;
1883    //      private static final String getJDBCMajorVersion = "こã?ドラむバã? JDBC メゞャヌバã?ゞョン番号を取埗したすã?" ;
1884    //      private static final String getJDBCMinorVersion = "こã?ドラむバã? JDBC マむナã?バã?ゞョン番号を取埗したすã?" ;
1885    //      private static final String getMaxBinaryLiteralLength = "こã?ãƒ??タベã?スで、むンラむンバむナリリãƒ?ƒ©ãƒ«äž­ã«å…¥ã‚Œã‚‰ã‚Œã‚‹ 16 進数のæœ?€§æ–?­—数を取埗したすã?" ;
1886    //      private static final String getMaxCatalogNameLength = "こã?ãƒ??タベã?スでの、カタログ名ã?æœ?€§æ–?­—数を取埗したすã?" ;
1887    //      private static final String getMaxCharLiteralLength = "こã?ãƒ??タベã?スでの、キャラクタリãƒ?ƒ©ãƒ«ã®æœ?€§æ–?­—数を取埗したすã?" ;
1888    //      private static final String getMaxColumnNameLength = "こã?ãƒ??タベã?スでの、å?名ã?æœ?€§æ–?­—数を取埗したすã?" ;
1889    //      private static final String getMaxColumnsInGroupBy = "こã?ãƒ??タベã?スでの、GROUP BY ç¯?ž­ã®åˆ—数のæœ?€§å€€ã‚’取埗したすã?" ;
1890    //      private static final String getMaxColumnsInIndex = "こã?ãƒ??タベã?スでの、むンãƒ?ƒƒã‚¯ã‚¹äž­ã®åˆ—数のæœ?€§å€€ã‚’取埗したすã?" ;
1891    //      private static final String getMaxColumnsInOrderBy = "こã?ãƒ??タベã?スでの、ORDER BY ç¯?ž­ã®åˆ—数のæœ?€§å€€ã‚’取埗したすã?" ;
1892    //      private static final String getMaxColumnsInSelect = "こã?ãƒ??タベã?スでの、SELECT リスト䞭の列数のæœ?€§å€€ã‚’取埗したすã?" ;
1893    //      private static final String getMaxColumnsInTable = "こã?ãƒ??タベã?スでの、テヌブル䞭の列数のæœ?€§å€€ã‚’取埗したすã?" ;
1894    //      private static final String getMaxConnections = "こã?ãƒ??タベã?スに察しお可胜な䞊行接続ã?æœ?€§æ•°ã‚’取埗したすã?" ;
1895    //      private static final String getMaxCursorNameLength = "こã?ãƒ??タベã?スでの、カヌ゜ル名ã?æœ?€§æ–?­—数を取埗したすã?" ;
1896    //      private static final String getMaxIndexLength = "こã?ãƒ??タベã?スでの、むンãƒ?ƒƒã‚¯ã‚¹ã®å…šéƒšåˆ?‚’含ã‚??むンãƒ?ƒƒã‚¯ã‚¹ã®æœ?€§ãƒã‚€ãƒˆæ•°ã‚’取埗したすã?" ;
1897    //      private static final String getMaxProcedureNameLength = "こã?ãƒ??タベã?スでの、ã?ロシヌゞャヌ名ã?æœ?€§æ–?­—数を取埗したすã?" ;
1898    //      private static final String getMaxRowSize = "こã?ãƒ??タベã?スでのã€? 行ã?æœ?€§ãƒã‚€ãƒˆæ•°ã‚’取埗したすã?" ;
1899    //      private static final String getMaxSchemaNameLength = "こã?ãƒ??タベã?スでの、スキヌマ名のæœ?€§æ–?­—数を取埗したすã?" ;
1900    //      private static final String getMaxStatementLength = "こã?ãƒ??タベã?スでの、SQL æ–??æœ?€§æ–?­—数を取埗したすã?" ;
1901    //      private static final String getMaxStatements = "こã?ãƒ??タベã?スの同時にオヌプンできるアクãƒ?‚£ãƒ–なæ–??æœ?€§æ•°ã‚’取埗したすã?" ;
1902    //      private static final String getMaxTableNameLength = "こã?ãƒ??タベã?スでの、テヌブル名ã?æœ?€§æ–?­—数を取埗したすã?" ;
1903    //      private static final String getMaxTablesInSelect = "こã?ãƒ??タベã?スでの、SELECT æ–??æœ?€§ãƒ??ブル数を取埗したすã?" ;
1904    //      private static final String getMaxUserNameLength = "こã?ãƒ??タベã?スでの、ナヌザヌ名ã?æœ?€§æ–?­—数を取埗したすã?" ;
1905    
1906    //      private static final String getClientInfoProperties = "ドラむバがサポã?トするクラむアント情報プロパティヌのリストを取埗したすã?" ;
1907    //      private static final String getFunctionColumns = "æŒ?®šã•れたカタログのシスãƒ?ƒ é–¢æ•°ãŸãŸã?ナヌザヌ関数のパラメヌタず返される型に関する蚘述を取埗したすã?" ;
1908    //      private static final String getFunctions = "æŒ?®šã•れたカタログで䜿甚可胜なシスãƒ?ƒ é–¢æ•°ãŠã‚ˆã³ãƒŠãƒŒã‚¶ãƒŒé–¢æ•°ã«é–¢ã™ã‚‹èš˜è¿°ã‚’取埗したすã?" ;
1909    
1910            /**
1911             * こã?オブゞェクトã?æ–?­—å?衚珟を返したすã?
1912             * 基本çš?«ãƒ?ƒãƒ?‚°ç›®çš?«äœ¿ç”šã—たすã?
1913             *
1914             * @return こã?クラスのæ–?­—å?衚珟
1915             */
1916            @Override
1917            public String toString() {
1918                    return org.opengion.fukurou.util.ToString.title( this.getClass().getName() )
1919                                    .println( "VERSION"                     ,VERSION                )
1920                                    .println( "dbid"                        ,dbid                   )
1921                                    .println( "catalog"                     ,catalog                )
1922                                    .println( "schema"                      ,schema                 )
1923                                    .println( "tableName"           ,tableName              )
1924                                    .println( "columnName"          ,columnName             )
1925                                    .println( "typeName"            ,typeName               )
1926                                    .println( "procedureName"       ,procedureName  )
1927                                    .println( "attributeName"       ,attributeName  )
1928                                    .println( "rowNo"                       ,rowNo                  )
1929                                    .println( "Other..."            ,getAttributes().getAttribute() )
1930                                    .fixForm().toString() ;
1931            }
1932    }