1*d1766043SAndrew Rist/************************************************************** 2cdf0e10cSrcweir * 3*d1766043SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4*d1766043SAndrew Rist * or more contributor license agreements. See the NOTICE file 5*d1766043SAndrew Rist * distributed with this work for additional information 6*d1766043SAndrew Rist * regarding copyright ownership. The ASF licenses this file 7*d1766043SAndrew Rist * to you under the Apache License, Version 2.0 (the 8*d1766043SAndrew Rist * "License"); you may not use this file except in compliance 9*d1766043SAndrew Rist * with the License. You may obtain a copy of the License at 10*d1766043SAndrew Rist * 11*d1766043SAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12*d1766043SAndrew Rist * 13*d1766043SAndrew Rist * Unless required by applicable law or agreed to in writing, 14*d1766043SAndrew Rist * software distributed under the License is distributed on an 15*d1766043SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*d1766043SAndrew Rist * KIND, either express or implied. See the License for the 17*d1766043SAndrew Rist * specific language governing permissions and limitations 18*d1766043SAndrew Rist * under the License. 19*d1766043SAndrew Rist * 20*d1766043SAndrew Rist *************************************************************/ 21*d1766043SAndrew Rist 22*d1766043SAndrew Rist 23cdf0e10cSrcweir#ifndef __com_sun_star_sdbc_XDatabaseMetaData_idl__ 24cdf0e10cSrcweir#define __com_sun_star_sdbc_XDatabaseMetaData_idl__ 25cdf0e10cSrcweir 26cdf0e10cSrcweir#ifndef __com_sun_star_uno_XInterface_idl__ 27cdf0e10cSrcweir#include <com/sun/star/uno/XInterface.idl> 28cdf0e10cSrcweir#endif 29cdf0e10cSrcweir 30cdf0e10cSrcweir#ifndef __com_sun_star_sdbc_SQLException_idl__ 31cdf0e10cSrcweir#include <com/sun/star/sdbc/SQLException.idl> 32cdf0e10cSrcweir#endif 33cdf0e10cSrcweir 34cdf0e10cSrcweir 35cdf0e10cSrcweir module com { module sun { module star { module sdbc { 36cdf0e10cSrcweir 37cdf0e10cSrcweir published interface XResultSet; 38cdf0e10cSrcweir published interface XConnection; 39cdf0e10cSrcweir 40cdf0e10cSrcweir/** provides comprehensive information about the database as a whole. 41cdf0e10cSrcweir 42cdf0e10cSrcweir 43cdf0e10cSrcweir <p>Many of the methods here return lists of information in 44cdf0e10cSrcweir the form of 45cdf0e10cSrcweir <type scope="com::sun::star::sdbc">XResultSet</type> 46cdf0e10cSrcweir objects. 47cdf0e10cSrcweir You can use the normal <type scope="com::sun::star::sdbc">XResultSet</type> 48cdf0e10cSrcweir methods such as 49cdf0e10cSrcweir <member scope="com::sun::star::sdbc">XResultSet::getString()</member> 50cdf0e10cSrcweir and 51cdf0e10cSrcweir <member scope="com::sun::star::sdbc">XResultSet::getInt()</member> 52cdf0e10cSrcweir to retrieve the data from these XResultSets. If a given form of 53cdf0e10cSrcweir metadata is not available, these methods should throw a 54cdf0e10cSrcweir <type scope="com::sun::star::sdbc">SQLException</type> 55cdf0e10cSrcweir . 56cdf0e10cSrcweir That a value of <type scope="com::sun::star::sdbc">XResultSet</type> is <NULL/> 57cdf0e10cSrcweir can be chaked with the method <member scope="com::sun::star::sdbc">XResultSet::wasNull()</member>. 58cdf0e10cSrcweir In the text only "(may be <NULL/>)" is mentioned for this case. 59cdf0e10cSrcweir </p> 60cdf0e10cSrcweir <p>Some of these methods take arguments that are String patterns. These 61cdf0e10cSrcweir arguments all have names such as fooPattern. Within a pattern String, "%" 62cdf0e10cSrcweir means match any substring of 0 or more characters, and "_" means match 63cdf0e10cSrcweir any one character. Only metadata entries matching the search pattern 64cdf0e10cSrcweir are returned. If a search pattern argument is set to <VOID/>, 65cdf0e10cSrcweir that argument's criteria will be dropped from the search. 66cdf0e10cSrcweir </p> 67cdf0e10cSrcweir <p> 68cdf0e10cSrcweir A 69cdf0e10cSrcweir <type scope="com::sun::star::sdbc">SQLException</type> 70cdf0e10cSrcweir will be thrown if a driver does not support 71cdf0e10cSrcweir a meta data method. In the case of methods that return an XResultSet, 72cdf0e10cSrcweir either an XResultSet (which may be empty) is returned or a 73cdf0e10cSrcweir SQLException is thrown.</p> 74cdf0e10cSrcweir */ 75cdf0e10cSrcweirpublished interface XDatabaseMetaData: com::sun::star::uno::XInterface 76cdf0e10cSrcweir{ 77cdf0e10cSrcweir 78cdf0e10cSrcweir /** Can all the procedures returned by getProcedures be called by the 79cdf0e10cSrcweir current user? 80cdf0e10cSrcweir 81cdf0e10cSrcweir @return 82cdf0e10cSrcweir <TRUE/> 83cdf0e10cSrcweir if the user is allowed to call all procedures returned by getProcedures 84cdf0e10cSrcweir otherwise 85cdf0e10cSrcweir <FALSE/> 86cdf0e10cSrcweir . 87cdf0e10cSrcweir @throws SQLException 88cdf0e10cSrcweir if a database access error occurs. 89cdf0e10cSrcweir */ 90cdf0e10cSrcweir boolean allProceduresAreCallable() raises (SQLException); 91cdf0e10cSrcweir //------------------------------------------------------------------------- 92cdf0e10cSrcweir 93cdf0e10cSrcweir /** Can all the tables returned by getTable be SELECTed by the 94cdf0e10cSrcweir current user? 95cdf0e10cSrcweir @returns 96cdf0e10cSrcweir <TRUE/> if so 97cdf0e10cSrcweir @throws SQLException 98cdf0e10cSrcweir if a database access error occurs. 99cdf0e10cSrcweir */ 100cdf0e10cSrcweir boolean allTablesAreSelectable() raises (SQLException); 101cdf0e10cSrcweir //------------------------------------------------------------------------- 102cdf0e10cSrcweir 103cdf0e10cSrcweir /** returns the URL for the database connection 104cdf0e10cSrcweir */ 105cdf0e10cSrcweir string getURL() raises (SQLException); 106cdf0e10cSrcweir //------------------------------------------------------------------------- 107cdf0e10cSrcweir 108cdf0e10cSrcweir /** returns the user name from this database connection. 109cdf0e10cSrcweir */ 110cdf0e10cSrcweir string getUserName() raises (SQLException); 111cdf0e10cSrcweir //------------------------------------------------------------------------- 112cdf0e10cSrcweir 113cdf0e10cSrcweir /** checks if the database in read-only mode. 114cdf0e10cSrcweir @returns 115cdf0e10cSrcweir <TRUE/> if so 116cdf0e10cSrcweir @throws SQLException 117cdf0e10cSrcweir if a database access error occurs. 118cdf0e10cSrcweir */ 119cdf0e10cSrcweir boolean isReadOnly() raises (SQLException); 120cdf0e10cSrcweir //------------------------------------------------------------------------- 121cdf0e10cSrcweir 122cdf0e10cSrcweir /** Are NULL values sorted high? 123cdf0e10cSrcweir @returns 124cdf0e10cSrcweir <TRUE/> if so 125cdf0e10cSrcweir @throws SQLException 126cdf0e10cSrcweir if a database access error occurs. 127cdf0e10cSrcweir */ 128cdf0e10cSrcweir boolean nullsAreSortedHigh() raises (SQLException); 129cdf0e10cSrcweir //------------------------------------------------------------------------- 130cdf0e10cSrcweir 131cdf0e10cSrcweir /** Are NULL values sorted low? 132cdf0e10cSrcweir @returns 133cdf0e10cSrcweir <TRUE/> if so 134cdf0e10cSrcweir @throws SQLException 135cdf0e10cSrcweir if a database access error occurs. 136cdf0e10cSrcweir */ 137cdf0e10cSrcweir boolean nullsAreSortedLow() raises (SQLException); 138cdf0e10cSrcweir //------------------------------------------------------------------------- 139cdf0e10cSrcweir 140cdf0e10cSrcweir /** Are NULL values sorted at the start regardless of sort order? 141cdf0e10cSrcweir @returns 142cdf0e10cSrcweir <TRUE/> if so 143cdf0e10cSrcweir @throws SQLException 144cdf0e10cSrcweir if a database access error occurs. 145cdf0e10cSrcweir */ 146cdf0e10cSrcweir boolean nullsAreSortedAtStart() raises (SQLException); 147cdf0e10cSrcweir //------------------------------------------------------------------------- 148cdf0e10cSrcweir 149cdf0e10cSrcweir /** Are NULL values sorted at the end, regardless of sort order? 150cdf0e10cSrcweir @returns 151cdf0e10cSrcweir <TRUE/> if so 152cdf0e10cSrcweir @throws SQLException 153cdf0e10cSrcweir if a database access error occurs. 154cdf0e10cSrcweir */ 155cdf0e10cSrcweir boolean nullsAreSortedAtEnd() raises (SQLException); 156cdf0e10cSrcweir //------------------------------------------------------------------------- 157cdf0e10cSrcweir 158cdf0e10cSrcweir /** returns the name of the database product. 159cdf0e10cSrcweir */ 160cdf0e10cSrcweir string getDatabaseProductName() raises (SQLException); 161cdf0e10cSrcweir //------------------------------------------------------------------------- 162cdf0e10cSrcweir 163cdf0e10cSrcweir /** returns the version of the database product. 164cdf0e10cSrcweir */ 165cdf0e10cSrcweir string getDatabaseProductVersion() raises (SQLException); 166cdf0e10cSrcweir //------------------------------------------------------------------------- 167cdf0e10cSrcweir 168cdf0e10cSrcweir /** returns the name of the SDBC driver. 169cdf0e10cSrcweir */ 170cdf0e10cSrcweir string getDriverName() raises (SQLException); 171cdf0e10cSrcweir //------------------------------------------------------------------------- 172cdf0e10cSrcweir 173cdf0e10cSrcweir /** returns the version number of the SDBC driver. 174cdf0e10cSrcweir */ 175cdf0e10cSrcweir string getDriverVersion() raises (SQLException); 176cdf0e10cSrcweir //------------------------------------------------------------------------- 177cdf0e10cSrcweir 178cdf0e10cSrcweir /** returns the SDBC driver major version number. 179cdf0e10cSrcweir */ 180cdf0e10cSrcweir long getDriverMajorVersion(); 181cdf0e10cSrcweir //------------------------------------------------------------------------- 182cdf0e10cSrcweir 183cdf0e10cSrcweir /** returns the SDBC driver minor version number. 184cdf0e10cSrcweir */ 185cdf0e10cSrcweir long getDriverMinorVersion(); 186cdf0e10cSrcweir //------------------------------------------------------------------------- 187cdf0e10cSrcweir 188cdf0e10cSrcweir /** use the database local files to save the tables. 189cdf0e10cSrcweir @returns 190cdf0e10cSrcweir <TRUE/> if so 191cdf0e10cSrcweir @throws SQLException 192cdf0e10cSrcweir if a database access error occurs. 193cdf0e10cSrcweir */ 194cdf0e10cSrcweir boolean usesLocalFiles() raises (SQLException); 195cdf0e10cSrcweir //------------------------------------------------------------------------- 196cdf0e10cSrcweir 197cdf0e10cSrcweir /** use the database one local file to save for each table. 198cdf0e10cSrcweir @returns 199cdf0e10cSrcweir <TRUE/> if so 200cdf0e10cSrcweir @throws SQLException 201cdf0e10cSrcweir if a database access error occurs. 202cdf0e10cSrcweir */ 203cdf0e10cSrcweir boolean usesLocalFilePerTable() raises (SQLException); 204cdf0e10cSrcweir //------------------------------------------------------------------------- 205cdf0e10cSrcweir 206cdf0e10cSrcweir /** use the database 'mixed case unquoted SQL identifiers' case sensitive. 207cdf0e10cSrcweir @returns 208cdf0e10cSrcweir <TRUE/> if so 209cdf0e10cSrcweir @throws SQLException 210cdf0e10cSrcweir if a database access error occurs. 211cdf0e10cSrcweir */ 212cdf0e10cSrcweir boolean supportsMixedCaseIdentifiers() raises (SQLException); 213cdf0e10cSrcweir //------------------------------------------------------------------------- 214cdf0e10cSrcweir 215cdf0e10cSrcweir /** Does the database treat mixed case unquoted SQL identifiers as 216cdf0e10cSrcweir case insensitive and store them in upper case? 217cdf0e10cSrcweir @returns 218cdf0e10cSrcweir <TRUE/> if so 219cdf0e10cSrcweir @throws SQLException 220cdf0e10cSrcweir if a database access error occurs. 221cdf0e10cSrcweir */ 222cdf0e10cSrcweir boolean storesUpperCaseIdentifiers() raises (SQLException); 223cdf0e10cSrcweir //------------------------------------------------------------------------- 224cdf0e10cSrcweir 225cdf0e10cSrcweir /** Does the database treat mixed case unquoted SQL identifiers as 226cdf0e10cSrcweir case insensitive and store them in lower case? 227cdf0e10cSrcweir @returns 228cdf0e10cSrcweir <TRUE/> if so 229cdf0e10cSrcweir @throws SQLException 230cdf0e10cSrcweir if a database access error occurs. 231cdf0e10cSrcweir */ 232cdf0e10cSrcweir boolean storesLowerCaseIdentifiers() raises (SQLException); 233cdf0e10cSrcweir //------------------------------------------------------------------------- 234cdf0e10cSrcweir 235cdf0e10cSrcweir /** Does the database treat mixed case unquoted SQL identifiers as 236cdf0e10cSrcweir case insensitive and store them in mixed case? 237cdf0e10cSrcweir @returns 238cdf0e10cSrcweir <TRUE/> if so 239cdf0e10cSrcweir @throws SQLException 240cdf0e10cSrcweir if a database access error occurs. 241cdf0e10cSrcweir */ 242cdf0e10cSrcweir boolean storesMixedCaseIdentifiers() raises (SQLException); 243cdf0e10cSrcweir //------------------------------------------------------------------------- 244cdf0e10cSrcweir 245cdf0e10cSrcweir /** Does the database treat mixed case quoted SQL identifiers as 246cdf0e10cSrcweir case sensitive and as a result store them in mixed case? 247cdf0e10cSrcweir @returns 248cdf0e10cSrcweir <TRUE/> if so 249cdf0e10cSrcweir @throws SQLException 250cdf0e10cSrcweir if a database access error occurs. 251cdf0e10cSrcweir */ 252cdf0e10cSrcweir boolean supportsMixedCaseQuotedIdentifiers() raises (SQLException); 253cdf0e10cSrcweir //------------------------------------------------------------------------- 254cdf0e10cSrcweir 255cdf0e10cSrcweir /** Does the database treat mixed case quoted SQL identifiers as 256cdf0e10cSrcweir case insensitive and store them in upper case? 257cdf0e10cSrcweir @returns 258cdf0e10cSrcweir <TRUE/> if so 259cdf0e10cSrcweir @throws SQLException 260cdf0e10cSrcweir if a database access error occurs. 261cdf0e10cSrcweir */ 262cdf0e10cSrcweir boolean storesUpperCaseQuotedIdentifiers() raises (SQLException); 263cdf0e10cSrcweir //------------------------------------------------------------------------- 264cdf0e10cSrcweir 265cdf0e10cSrcweir /** Does the database treat mixed case quoted SQL identifiers as 266cdf0e10cSrcweir case insensitive and store them in lower case? 267cdf0e10cSrcweir @returns 268cdf0e10cSrcweir <TRUE/> if so 269cdf0e10cSrcweir @throws SQLException 270cdf0e10cSrcweir if a database access error occurs. 271cdf0e10cSrcweir */ 272cdf0e10cSrcweir boolean storesLowerCaseQuotedIdentifiers() raises (SQLException); 273cdf0e10cSrcweir //------------------------------------------------------------------------- 274cdf0e10cSrcweir 275cdf0e10cSrcweir /** Does the database treat mixed case quoted SQL identifiers as 276cdf0e10cSrcweir case insensitive and store them in mixed case? 277cdf0e10cSrcweir @returns 278cdf0e10cSrcweir <TRUE/> if so 279cdf0e10cSrcweir @throws SQLException 280cdf0e10cSrcweir if a database access error occurs. 281cdf0e10cSrcweir */ 282cdf0e10cSrcweir boolean storesMixedCaseQuotedIdentifiers() raises (SQLException); 283cdf0e10cSrcweir //------------------------------------------------------------------------- 284cdf0e10cSrcweir 285cdf0e10cSrcweir /** What's the string used to quote SQL identifiers? 286cdf0e10cSrcweir This returns a space " " if identifier quoting is not supported. 287cdf0e10cSrcweir @returns 288cdf0e10cSrcweir <TRUE/> if so 289cdf0e10cSrcweir @throws SQLException 290cdf0e10cSrcweir if a database access error occurs. 291cdf0e10cSrcweir */ 292cdf0e10cSrcweir string getIdentifierQuoteString() raises (SQLException); 293cdf0e10cSrcweir //------------------------------------------------------------------------- 294cdf0e10cSrcweir 295cdf0e10cSrcweir /** gets a comma-separated list of all a database's SQL keywords 296cdf0e10cSrcweir that are NOT also SQL92 keywords. 297cdf0e10cSrcweir @returns 298cdf0e10cSrcweir <TRUE/> if so 299cdf0e10cSrcweir @throws SQLException 300cdf0e10cSrcweir if a database access error occurs. 301cdf0e10cSrcweir */ 302cdf0e10cSrcweir string getSQLKeywords() raises (SQLException); 303cdf0e10cSrcweir //------------------------------------------------------------------------- 304cdf0e10cSrcweir 305cdf0e10cSrcweir /** gets a comma-separated list of math functions. These are the 306cdf0e10cSrcweir X/Open CLI math function names used in the SDBC function escape 307cdf0e10cSrcweir clause. 308cdf0e10cSrcweir @returns 309cdf0e10cSrcweir <TRUE/> if so 310cdf0e10cSrcweir @throws SQLException 311cdf0e10cSrcweir if a database access error occurs. 312cdf0e10cSrcweir */ 313cdf0e10cSrcweir string getNumericFunctions() raises (SQLException); 314cdf0e10cSrcweir //------------------------------------------------------------------------- 315cdf0e10cSrcweir 316cdf0e10cSrcweir /** gets a comma-separated list of string functions. These are the 317cdf0e10cSrcweir X/Open CLI string function names used in the SDBC function escape 318cdf0e10cSrcweir clause. 319cdf0e10cSrcweir @returns 320cdf0e10cSrcweir <TRUE/> if so 321cdf0e10cSrcweir @throws SQLException 322cdf0e10cSrcweir if a database access error occurs. 323cdf0e10cSrcweir */ 324cdf0e10cSrcweir string getStringFunctions() raises (SQLException); 325cdf0e10cSrcweir //------------------------------------------------------------------------- 326cdf0e10cSrcweir 327cdf0e10cSrcweir /** gets a comma-separated list of system functions. These are the 328cdf0e10cSrcweir X/Open CLI system function names used in the SDBC function escape 329cdf0e10cSrcweir clause. 330cdf0e10cSrcweir @returns 331cdf0e10cSrcweir <TRUE/> if so 332cdf0e10cSrcweir @throws SQLException 333cdf0e10cSrcweir if a database access error occurs. 334cdf0e10cSrcweir */ 335cdf0e10cSrcweir string getSystemFunctions() raises (SQLException); 336cdf0e10cSrcweir //------------------------------------------------------------------------- 337cdf0e10cSrcweir 338cdf0e10cSrcweir /** gets a comma-separated list of time and date functions. 339cdf0e10cSrcweir @returns 340cdf0e10cSrcweir <TRUE/> if so 341cdf0e10cSrcweir @throws SQLException 342cdf0e10cSrcweir if a database access error occurs. 343cdf0e10cSrcweir */ 344cdf0e10cSrcweir string getTimeDateFunctions() raises (SQLException); 345cdf0e10cSrcweir //------------------------------------------------------------------------- 346cdf0e10cSrcweir 347cdf0e10cSrcweir /** gets the string that can be used to escape wildcard characters. 348cdf0e10cSrcweir This is the string that can be used to escape '_' or '%' in 349cdf0e10cSrcweir the string pattern style catalog search parameters. 350cdf0e10cSrcweir 351cdf0e10cSrcweir 352cdf0e10cSrcweir <p> 353cdf0e10cSrcweir The '_' character represents any single character. 354cdf0e10cSrcweir </p> 355cdf0e10cSrcweir <p> 356cdf0e10cSrcweir The '%' character represents any sequence of zero or 357cdf0e10cSrcweir more characters. 358cdf0e10cSrcweir </p> 359cdf0e10cSrcweir @returns 360cdf0e10cSrcweir <TRUE/> if so 361cdf0e10cSrcweir @throws SQLException 362cdf0e10cSrcweir if a database access error occurs. 363cdf0e10cSrcweir */ 364cdf0e10cSrcweir string getSearchStringEscape() raises (SQLException); 365cdf0e10cSrcweir //------------------------------------------------------------------------- 366cdf0e10cSrcweir 367cdf0e10cSrcweir /** gets all the "extra" characters that can be used in unquoted 368cdf0e10cSrcweir identifier names (those beyond a-z, A-Z, 0-9 and _). 369cdf0e10cSrcweir @returns 370cdf0e10cSrcweir <TRUE/> if so 371cdf0e10cSrcweir @throws SQLException 372cdf0e10cSrcweir if a database access error occurs. 373cdf0e10cSrcweir */ 374cdf0e10cSrcweir string getExtraNameCharacters() raises (SQLException); 375cdf0e10cSrcweir //------------------------------------------------------------------------- 376cdf0e10cSrcweir 377cdf0e10cSrcweir /** support the Database "ALTER TABLE" with add column? 378cdf0e10cSrcweir @returns 379cdf0e10cSrcweir <TRUE/> if so 380cdf0e10cSrcweir @throws SQLException 381cdf0e10cSrcweir if a database access error occurs. 382cdf0e10cSrcweir */ 383cdf0e10cSrcweir boolean supportsAlterTableWithAddColumn() raises (SQLException); 384cdf0e10cSrcweir //------------------------------------------------------------------------- 385cdf0e10cSrcweir 386cdf0e10cSrcweir /** support the Database "ALTER TABLE" with drop column? 387cdf0e10cSrcweir @returns 388cdf0e10cSrcweir <TRUE/> if so 389cdf0e10cSrcweir @throws SQLException 390cdf0e10cSrcweir if a database access error occurs. 391cdf0e10cSrcweir */ 392cdf0e10cSrcweir boolean supportsAlterTableWithDropColumn() raises (SQLException); 393cdf0e10cSrcweir //------------------------------------------------------------------------- 394cdf0e10cSrcweir 395cdf0e10cSrcweir /** support the Database column aliasing? 396cdf0e10cSrcweir 397cdf0e10cSrcweir 398cdf0e10cSrcweir <p> 399cdf0e10cSrcweir The SQL AS clause can be used to provide names for 400cdf0e10cSrcweir computed columns or to provide alias names for columns as required. 401cdf0e10cSrcweir </p> 402cdf0e10cSrcweir @returns 403cdf0e10cSrcweir <TRUE/> if so 404cdf0e10cSrcweir @throws SQLException 405cdf0e10cSrcweir if a database access error occurs. 406cdf0e10cSrcweir */ 407cdf0e10cSrcweir boolean supportsColumnAliasing() raises (SQLException); 408cdf0e10cSrcweir //------------------------------------------------------------------------- 409cdf0e10cSrcweir 410cdf0e10cSrcweir /** are concatenations between NULL and non-NULL values NULL? 411cdf0e10cSrcweir @returns 412cdf0e10cSrcweir <TRUE/> if so 413cdf0e10cSrcweir @throws SQLException 414cdf0e10cSrcweir if a database access error occurs. 415cdf0e10cSrcweir */ 416cdf0e10cSrcweir boolean nullPlusNonNullIsNull() raises (SQLException); 417cdf0e10cSrcweir //------------------------------------------------------------------------- 418cdf0e10cSrcweir 419cdf0e10cSrcweir /** <TRUE/> 420cdf0e10cSrcweir , if the Database supports the CONVERT function between SQL types, 421cdf0e10cSrcweir otherwise 422cdf0e10cSrcweir <FALSE/> 423cdf0e10cSrcweir . 424cdf0e10cSrcweir @returns 425cdf0e10cSrcweir <TRUE/> if so 426cdf0e10cSrcweir @throws SQLException 427cdf0e10cSrcweir if a database access error occurs. 428cdf0e10cSrcweir */ 429cdf0e10cSrcweir boolean supportsTypeConversion() raises (SQLException); 430cdf0e10cSrcweir //------------------------------------------------------------------------- 431cdf0e10cSrcweir 432cdf0e10cSrcweir /** <TRUE/> 433cdf0e10cSrcweir , if the Database supports the CONVERT between the given SQL types 434cdf0e10cSrcweir otherwise 435cdf0e10cSrcweir <FALSE/> 436cdf0e10cSrcweir . 437cdf0e10cSrcweir @returns 438cdf0e10cSrcweir <TRUE/> if so 439cdf0e10cSrcweir @throws SQLException 440cdf0e10cSrcweir if a database access error occurs. 441cdf0e10cSrcweir */ 442cdf0e10cSrcweir boolean supportsConvert([in]long fromType, [in]long toType) 443cdf0e10cSrcweir raises (SQLException); 444cdf0e10cSrcweir //------------------------------------------------------------------------- 445cdf0e10cSrcweir 446cdf0e10cSrcweir /** Are table correlation names supported? 447cdf0e10cSrcweir @returns 448cdf0e10cSrcweir <TRUE/> if so 449cdf0e10cSrcweir @throws SQLException 450cdf0e10cSrcweir if a database access error occurs. 451cdf0e10cSrcweir */ 452cdf0e10cSrcweir boolean supportsTableCorrelationNames() raises (SQLException); 453cdf0e10cSrcweir //------------------------------------------------------------------------- 454cdf0e10cSrcweir 455cdf0e10cSrcweir /** If table correlation names are supported, are they restricted 456cdf0e10cSrcweir to be different from the names of the tables? 457cdf0e10cSrcweir @returns 458cdf0e10cSrcweir <TRUE/> if so 459cdf0e10cSrcweir @throws SQLException 460cdf0e10cSrcweir if a database access error occurs. 461cdf0e10cSrcweir */ 462cdf0e10cSrcweir boolean supportsDifferentTableCorrelationNames() 463cdf0e10cSrcweir raises (SQLException); 464cdf0e10cSrcweir //------------------------------------------------------------------------- 465cdf0e10cSrcweir 466cdf0e10cSrcweir /** Are expressions in "ORDER BY" lists supported? 467cdf0e10cSrcweir @returns 468cdf0e10cSrcweir <TRUE/> if so 469cdf0e10cSrcweir @throws SQLException 470cdf0e10cSrcweir if a database access error occurs. 471cdf0e10cSrcweir */ 472cdf0e10cSrcweir boolean supportsExpressionsInOrderBy() raises (SQLException); 473cdf0e10cSrcweir //------------------------------------------------------------------------- 474cdf0e10cSrcweir 475cdf0e10cSrcweir /** Can an "ORDER BY" clause use columns not in the SELECT statement? 476cdf0e10cSrcweir @returns 477cdf0e10cSrcweir <TRUE/> if so 478cdf0e10cSrcweir @throws SQLException 479cdf0e10cSrcweir if a database access error occurs. 480cdf0e10cSrcweir */ 481cdf0e10cSrcweir boolean supportsOrderByUnrelated() raises (SQLException); 482cdf0e10cSrcweir //------------------------------------------------------------------------- 483cdf0e10cSrcweir 484cdf0e10cSrcweir /** Is some form of "GROUP BY" clause supported? 485cdf0e10cSrcweir @returns 486cdf0e10cSrcweir <TRUE/> if so 487cdf0e10cSrcweir @throws SQLException 488cdf0e10cSrcweir if a database access error occurs. 489cdf0e10cSrcweir */ 490cdf0e10cSrcweir boolean supportsGroupBy() raises (SQLException); 491cdf0e10cSrcweir //------------------------------------------------------------------------- 492cdf0e10cSrcweir 493cdf0e10cSrcweir /** Can a "GROUP BY" clause use columns not in the SELECT? 494cdf0e10cSrcweir @returns 495cdf0e10cSrcweir <TRUE/> if so 496cdf0e10cSrcweir @throws SQLException 497cdf0e10cSrcweir if a database access error occurs. 498cdf0e10cSrcweir */ 499cdf0e10cSrcweir boolean supportsGroupByUnrelated() raises (SQLException); 500cdf0e10cSrcweir //------------------------------------------------------------------------- 501cdf0e10cSrcweir 502cdf0e10cSrcweir /** Can a "GROUP BY" clause add columns not in the SELECT 503cdf0e10cSrcweir provided it specifies all the columns in the SELECT? 504cdf0e10cSrcweir @returns 505cdf0e10cSrcweir <TRUE/> if so 506cdf0e10cSrcweir @throws SQLException 507cdf0e10cSrcweir if a database access error occurs. 508cdf0e10cSrcweir */ 509cdf0e10cSrcweir boolean supportsGroupByBeyondSelect() raises (SQLException); 510cdf0e10cSrcweir //------------------------------------------------------------------------- 511cdf0e10cSrcweir 512cdf0e10cSrcweir /** Is the escape character in "LIKE" clauses supported? 513cdf0e10cSrcweir @returns 514cdf0e10cSrcweir <TRUE/> if so 515cdf0e10cSrcweir @throws SQLException 516cdf0e10cSrcweir if a database access error occurs. 517cdf0e10cSrcweir */ 518cdf0e10cSrcweir boolean supportsLikeEscapeClause() raises (SQLException); 519cdf0e10cSrcweir //------------------------------------------------------------------------- 520cdf0e10cSrcweir 521cdf0e10cSrcweir /** Are multiple XResultSets from a single execute supported? 522cdf0e10cSrcweir @returns 523cdf0e10cSrcweir <TRUE/> if so 524cdf0e10cSrcweir @throws SQLException 525cdf0e10cSrcweir if a database access error occurs. 526cdf0e10cSrcweir */ 527cdf0e10cSrcweir boolean supportsMultipleResultSets() raises (SQLException); 528cdf0e10cSrcweir //------------------------------------------------------------------------- 529cdf0e10cSrcweir 530cdf0e10cSrcweir /** Can we have multiple transactions open at once (on different 531cdf0e10cSrcweir connections)? 532cdf0e10cSrcweir @returns 533cdf0e10cSrcweir <TRUE/> if so 534cdf0e10cSrcweir @throws SQLException 535cdf0e10cSrcweir if a database access error occurs. 536cdf0e10cSrcweir */ 537cdf0e10cSrcweir boolean supportsMultipleTransactions() raises (SQLException); 538cdf0e10cSrcweir //------------------------------------------------------------------------- 539cdf0e10cSrcweir 540cdf0e10cSrcweir /** Can columns be defined as non-nullable? 541cdf0e10cSrcweir @returns 542cdf0e10cSrcweir <TRUE/> if so 543cdf0e10cSrcweir @throws SQLException 544cdf0e10cSrcweir if a database access error occurs. 545cdf0e10cSrcweir */ 546cdf0e10cSrcweir boolean supportsNonNullableColumns() raises (SQLException); 547cdf0e10cSrcweir //------------------------------------------------------------------------- 548cdf0e10cSrcweir 549cdf0e10cSrcweir /** <TRUE/>, if the database supports ODBC Minimum SQL grammar, 550cdf0e10cSrcweir otherwise <FALSE/>. 551cdf0e10cSrcweir @returns 552cdf0e10cSrcweir <TRUE/> if so 553cdf0e10cSrcweir @throws SQLException 554cdf0e10cSrcweir if a database access error occurs. 555cdf0e10cSrcweir */ 556cdf0e10cSrcweir boolean supportsMinimumSQLGrammar() raises (SQLException); 557cdf0e10cSrcweir //------------------------------------------------------------------------- 558cdf0e10cSrcweir 559cdf0e10cSrcweir /** <TRUE/>, if the database supports ODBC Core SQL grammar, 560cdf0e10cSrcweir otherwise <FALSE/>. 561cdf0e10cSrcweir @returns 562cdf0e10cSrcweir <TRUE/> if so 563cdf0e10cSrcweir @throws SQLException 564cdf0e10cSrcweir if a database access error occurs. 565cdf0e10cSrcweir */ 566cdf0e10cSrcweir boolean supportsCoreSQLGrammar() raises (SQLException); 567cdf0e10cSrcweir //------------------------------------------------------------------------- 568cdf0e10cSrcweir 569cdf0e10cSrcweir /** 570cdf0e10cSrcweir <TRUE/>, if the database supports ODBC Extended SQL grammar, 571cdf0e10cSrcweir otherwise <FALSE/>. 572cdf0e10cSrcweir @returns 573cdf0e10cSrcweir <TRUE/> if so 574cdf0e10cSrcweir @throws SQLException 575cdf0e10cSrcweir if a database access error occurs. 576cdf0e10cSrcweir */ 577cdf0e10cSrcweir boolean supportsExtendedSQLGrammar() raises (SQLException); 578cdf0e10cSrcweir //------------------------------------------------------------------------- 579cdf0e10cSrcweir 580cdf0e10cSrcweir /** @returns 581cdf0e10cSrcweir <TRUE/>, if the database supports ANSI92 entry level SQL grammar, 582cdf0e10cSrcweir otherwise <FALSE/>. 583cdf0e10cSrcweir @throws SQLException 584cdf0e10cSrcweir if a database access error occurs. 585cdf0e10cSrcweir */ 586cdf0e10cSrcweir boolean supportsANSI92EntryLevelSQL() raises (SQLException); 587cdf0e10cSrcweir //------------------------------------------------------------------------- 588cdf0e10cSrcweir 589cdf0e10cSrcweir /** @returns 590cdf0e10cSrcweir <TRUE/>, if the database supports ANSI92 intermediate SQL grammar, 591cdf0e10cSrcweir otherwise <FALSE/>. 592cdf0e10cSrcweir @throws SQLException 593cdf0e10cSrcweir if a database access error occurs. 594cdf0e10cSrcweir */ 595cdf0e10cSrcweir boolean supportsANSI92IntermediateSQL() raises (SQLException); 596cdf0e10cSrcweir //------------------------------------------------------------------------- 597cdf0e10cSrcweir 598cdf0e10cSrcweir /** @returns 599cdf0e10cSrcweir <TRUE/>, if the database supports ANSI92 full SQL grammar, 600cdf0e10cSrcweir otherwise <FALSE/>. 601cdf0e10cSrcweir @throws SQLException 602cdf0e10cSrcweir if a database access error occurs. 603cdf0e10cSrcweir */ 604cdf0e10cSrcweir boolean supportsANSI92FullSQL() raises (SQLException); 605cdf0e10cSrcweir //------------------------------------------------------------------------- 606cdf0e10cSrcweir 607cdf0e10cSrcweir /** returns 608cdf0e10cSrcweir <TRUE/>, if the Database supports SQL Integrity Enhancement Facility, 609cdf0e10cSrcweir otherwise <FALSE/>. 610cdf0e10cSrcweir @throws SQLException 611cdf0e10cSrcweir if a database access error occurs. 612cdf0e10cSrcweir */ 613cdf0e10cSrcweir boolean supportsIntegrityEnhancementFacility() raises (SQLException); 614cdf0e10cSrcweir //------------------------------------------------------------------------- 615cdf0e10cSrcweir 616cdf0e10cSrcweir /** @returns 617cdf0e10cSrcweir <TRUE/>, if some form of outer join is supported, 618cdf0e10cSrcweir otherwise <FALSE/>. 619cdf0e10cSrcweir @throws SQLException 620cdf0e10cSrcweir if a database access error occurs. 621cdf0e10cSrcweir */ 622cdf0e10cSrcweir boolean supportsOuterJoins() raises (SQLException); 623cdf0e10cSrcweir //------------------------------------------------------------------------- 624cdf0e10cSrcweir 625cdf0e10cSrcweir /** @returns 626cdf0e10cSrcweir <TRUE/>, if full nested outer joins are supported, 627cdf0e10cSrcweir otherwise <FALSE/>. 628cdf0e10cSrcweir @throws SQLException 629cdf0e10cSrcweir if a database access error occurs. 630cdf0e10cSrcweir */ 631cdf0e10cSrcweir boolean supportsFullOuterJoins() raises (SQLException); 632cdf0e10cSrcweir //------------------------------------------------------------------------- 633cdf0e10cSrcweir 634cdf0e10cSrcweir /** @returns 635cdf0e10cSrcweir <TRUE/>, if there is limited support for outer joins. 636cdf0e10cSrcweir (This will be <TRUE/> if supportFullOuterJoins is <TRUE/>.) 637cdf0e10cSrcweir <FALSE/> is returned otherwise. 638cdf0e10cSrcweir @throws SQLException 639cdf0e10cSrcweir if a database access error occurs. 640cdf0e10cSrcweir */ 641cdf0e10cSrcweir boolean supportsLimitedOuterJoins() raises (SQLException); 642cdf0e10cSrcweir //------------------------------------------------------------------------- 643cdf0e10cSrcweir 644cdf0e10cSrcweir /** return the database vendor's preferred term for "schema" 645cdf0e10cSrcweir @returns 646cdf0e10cSrcweir <TRUE/> if so 647cdf0e10cSrcweir @throws SQLException 648cdf0e10cSrcweir if a database access error occurs. 649cdf0e10cSrcweir */ 650cdf0e10cSrcweir string getSchemaTerm() raises (SQLException); 651cdf0e10cSrcweir //------------------------------------------------------------------------- 652cdf0e10cSrcweir 653cdf0e10cSrcweir /** return the database vendor's preferred term for "procedure" 654cdf0e10cSrcweir @returns 655cdf0e10cSrcweir <TRUE/> if so 656cdf0e10cSrcweir @throws SQLException 657cdf0e10cSrcweir if a database access error occurs. 658cdf0e10cSrcweir */ 659cdf0e10cSrcweir string getProcedureTerm() raises (SQLException); 660cdf0e10cSrcweir //------------------------------------------------------------------------- 661cdf0e10cSrcweir 662cdf0e10cSrcweir /** return the database vendor's preferred term for "catalog" 663cdf0e10cSrcweir @returns 664cdf0e10cSrcweir <TRUE/> if so 665cdf0e10cSrcweir @throws SQLException 666cdf0e10cSrcweir if a database access error occurs. 667cdf0e10cSrcweir */ 668cdf0e10cSrcweir string getCatalogTerm() raises (SQLException); 669cdf0e10cSrcweir //------------------------------------------------------------------------- 670cdf0e10cSrcweir 671cdf0e10cSrcweir /** Does a catalog appear at the start of a qualified table name? 672cdf0e10cSrcweir (Otherwise it appears at the end) 673cdf0e10cSrcweir @returns 674cdf0e10cSrcweir <TRUE/> if so 675cdf0e10cSrcweir @throws SQLException 676cdf0e10cSrcweir if a database access error occurs. 677cdf0e10cSrcweir */ 678cdf0e10cSrcweir boolean isCatalogAtStart() raises (SQLException); 679cdf0e10cSrcweir //------------------------------------------------------------------------- 680cdf0e10cSrcweir 681cdf0e10cSrcweir /** return the separator between catalog and table name 682cdf0e10cSrcweir @returns 683cdf0e10cSrcweir <TRUE/> if so 684cdf0e10cSrcweir @throws SQLException 685cdf0e10cSrcweir if a database access error occurs. 686cdf0e10cSrcweir */ 687cdf0e10cSrcweir string getCatalogSeparator() raises (SQLException); 688cdf0e10cSrcweir //------------------------------------------------------------------------- 689cdf0e10cSrcweir 690cdf0e10cSrcweir /** Can a schema name be used in a data manipulation statement? 691cdf0e10cSrcweir @returns 692cdf0e10cSrcweir <TRUE/> if so 693cdf0e10cSrcweir @throws SQLException 694cdf0e10cSrcweir if a database access error occurs. 695cdf0e10cSrcweir */ 696cdf0e10cSrcweir boolean supportsSchemasInDataManipulation() raises (SQLException); 697cdf0e10cSrcweir //------------------------------------------------------------------------- 698cdf0e10cSrcweir 699cdf0e10cSrcweir /** Can a schema name be used in a procedure call statement? 700cdf0e10cSrcweir @returns 701cdf0e10cSrcweir <TRUE/> if so 702cdf0e10cSrcweir @throws SQLException 703cdf0e10cSrcweir if a database access error occurs. 704cdf0e10cSrcweir */ 705cdf0e10cSrcweir boolean supportsSchemasInProcedureCalls() raises (SQLException); 706cdf0e10cSrcweir //------------------------------------------------------------------------- 707cdf0e10cSrcweir 708cdf0e10cSrcweir /** Can a schema name be used in a table definition statement? 709cdf0e10cSrcweir @returns 710cdf0e10cSrcweir <TRUE/> if so 711cdf0e10cSrcweir @throws SQLException 712cdf0e10cSrcweir if a database access error occurs. 713cdf0e10cSrcweir */ 714cdf0e10cSrcweir boolean supportsSchemasInTableDefinitions() raises (SQLException); 715cdf0e10cSrcweir //------------------------------------------------------------------------- 716cdf0e10cSrcweir 717cdf0e10cSrcweir /** Can a schema name be used in an index definition statement? 718cdf0e10cSrcweir @returns 719cdf0e10cSrcweir <TRUE/> if so 720cdf0e10cSrcweir @throws SQLException 721cdf0e10cSrcweir if a database access error occurs. 722cdf0e10cSrcweir */ 723cdf0e10cSrcweir boolean supportsSchemasInIndexDefinitions() raises (SQLException); 724cdf0e10cSrcweir //------------------------------------------------------------------------- 725cdf0e10cSrcweir 726cdf0e10cSrcweir /** Can a schema name be used in a privilege definition statement? 727cdf0e10cSrcweir @returns 728cdf0e10cSrcweir <TRUE/> if so 729cdf0e10cSrcweir @throws SQLException 730cdf0e10cSrcweir if a database access error occurs. 731cdf0e10cSrcweir */ 732cdf0e10cSrcweir boolean supportsSchemasInPrivilegeDefinitions() 733cdf0e10cSrcweir raises (SQLException); 734cdf0e10cSrcweir //------------------------------------------------------------------------- 735cdf0e10cSrcweir 736cdf0e10cSrcweir /** Can a catalog name be used in a data manipulation statement? 737cdf0e10cSrcweir @returns 738cdf0e10cSrcweir <TRUE/> if so 739cdf0e10cSrcweir @throws SQLException 740cdf0e10cSrcweir if a database access error occurs. 741cdf0e10cSrcweir */ 742cdf0e10cSrcweir boolean supportsCatalogsInDataManipulation() raises (SQLException); 743cdf0e10cSrcweir //------------------------------------------------------------------------- 744cdf0e10cSrcweir 745cdf0e10cSrcweir /** Can a catalog name be used in a procedure call statement? 746cdf0e10cSrcweir @returns 747cdf0e10cSrcweir <TRUE/> if so 748cdf0e10cSrcweir @throws SQLException 749cdf0e10cSrcweir if a database access error occurs. 750cdf0e10cSrcweir */ 751cdf0e10cSrcweir boolean supportsCatalogsInProcedureCalls() raises (SQLException); 752cdf0e10cSrcweir //------------------------------------------------------------------------- 753cdf0e10cSrcweir 754cdf0e10cSrcweir /** Can a catalog name be used in a table definition statement? 755cdf0e10cSrcweir @returns 756cdf0e10cSrcweir <TRUE/> if so 757cdf0e10cSrcweir @throws SQLException 758cdf0e10cSrcweir if a database access error occurs. 759cdf0e10cSrcweir */ 760cdf0e10cSrcweir boolean supportsCatalogsInTableDefinitions() raises (SQLException); 761cdf0e10cSrcweir //------------------------------------------------------------------------- 762cdf0e10cSrcweir 763cdf0e10cSrcweir /** Can a catalog name be used in an index definition statement? 764cdf0e10cSrcweir @returns 765cdf0e10cSrcweir <TRUE/> if so 766cdf0e10cSrcweir @throws SQLException 767cdf0e10cSrcweir if a database access error occurs. 768cdf0e10cSrcweir */ 769cdf0e10cSrcweir boolean supportsCatalogsInIndexDefinitions() raises (SQLException); 770cdf0e10cSrcweir //------------------------------------------------------------------------- 771cdf0e10cSrcweir 772cdf0e10cSrcweir /** Can a catalog name be used in a privilege definition statement? 773cdf0e10cSrcweir @returns 774cdf0e10cSrcweir <TRUE/> if so 775cdf0e10cSrcweir @throws SQLException 776cdf0e10cSrcweir if a database access error occurs. 777cdf0e10cSrcweir */ 778cdf0e10cSrcweir boolean supportsCatalogsInPrivilegeDefinitions() 779cdf0e10cSrcweir raises (SQLException); 780cdf0e10cSrcweir //------------------------------------------------------------------------- 781cdf0e10cSrcweir 782cdf0e10cSrcweir /** Is positioned DELETE supported? 783cdf0e10cSrcweir @returns 784cdf0e10cSrcweir <TRUE/> if so 785cdf0e10cSrcweir @throws SQLException 786cdf0e10cSrcweir if a database access error occurs. 787cdf0e10cSrcweir */ 788cdf0e10cSrcweir boolean supportsPositionedDelete() raises (SQLException); 789cdf0e10cSrcweir //------------------------------------------------------------------------- 790cdf0e10cSrcweir 791cdf0e10cSrcweir /** Is positioned UPDATE supported? 792cdf0e10cSrcweir @returns 793cdf0e10cSrcweir <TRUE/> if so 794cdf0e10cSrcweir @throws SQLException 795cdf0e10cSrcweir if a database access error occurs. 796cdf0e10cSrcweir */ 797cdf0e10cSrcweir boolean supportsPositionedUpdate() raises (SQLException); 798cdf0e10cSrcweir //------------------------------------------------------------------------- 799cdf0e10cSrcweir 800cdf0e10cSrcweir /** Is SELECT for UPDATE supported? 801cdf0e10cSrcweir @returns 802cdf0e10cSrcweir <TRUE/> if so 803cdf0e10cSrcweir @throws SQLException 804cdf0e10cSrcweir if a database access error occurs. 805cdf0e10cSrcweir */ 806cdf0e10cSrcweir boolean supportsSelectForUpdate() raises (SQLException); 807cdf0e10cSrcweir //------------------------------------------------------------------------- 808cdf0e10cSrcweir 809cdf0e10cSrcweir /** Are stored procedure calls using the stored procedure escape 810cdf0e10cSrcweir syntax supported? 811cdf0e10cSrcweir @returns 812cdf0e10cSrcweir <TRUE/> if so 813cdf0e10cSrcweir @throws SQLException 814cdf0e10cSrcweir if a database access error occurs. 815cdf0e10cSrcweir */ 816cdf0e10cSrcweir boolean supportsStoredProcedures() raises (SQLException); 817cdf0e10cSrcweir //------------------------------------------------------------------------- 818cdf0e10cSrcweir 819cdf0e10cSrcweir /** Are subqueries in comparison expressions supported? 820cdf0e10cSrcweir @returns 821cdf0e10cSrcweir <TRUE/> if so 822cdf0e10cSrcweir @throws SQLException 823cdf0e10cSrcweir if a database access error occurs. 824cdf0e10cSrcweir */ 825cdf0e10cSrcweir boolean supportsSubqueriesInComparisons() raises (SQLException); 826cdf0e10cSrcweir //------------------------------------------------------------------------- 827cdf0e10cSrcweir 828cdf0e10cSrcweir /** Are subqueries in 'exists' expressions supported? 829cdf0e10cSrcweir @returns 830cdf0e10cSrcweir <TRUE/> if so 831cdf0e10cSrcweir @throws SQLException 832cdf0e10cSrcweir if a database access error occurs. 833cdf0e10cSrcweir */ 834cdf0e10cSrcweir boolean supportsSubqueriesInExists() raises (SQLException); 835cdf0e10cSrcweir //------------------------------------------------------------------------- 836cdf0e10cSrcweir 837cdf0e10cSrcweir /** Are subqueries in 'in' statements supported? 838cdf0e10cSrcweir @returns 839cdf0e10cSrcweir <TRUE/> if so 840cdf0e10cSrcweir @throws SQLException 841cdf0e10cSrcweir if a database access error occurs. 842cdf0e10cSrcweir */ 843cdf0e10cSrcweir boolean supportsSubqueriesInIns() raises (SQLException); 844cdf0e10cSrcweir //------------------------------------------------------------------------- 845cdf0e10cSrcweir 846cdf0e10cSrcweir /** Are subqueries in quantified expressions supported? 847cdf0e10cSrcweir @returns 848cdf0e10cSrcweir <TRUE/> if so 849cdf0e10cSrcweir @throws SQLException 850cdf0e10cSrcweir if a database access error occurs. 851cdf0e10cSrcweir */ 852cdf0e10cSrcweir boolean supportsSubqueriesInQuantifieds() raises (SQLException); 853cdf0e10cSrcweir //------------------------------------------------------------------------- 854cdf0e10cSrcweir 855cdf0e10cSrcweir /** Are correlated subqueries supported? 856cdf0e10cSrcweir @returns 857cdf0e10cSrcweir <TRUE/> if so 858cdf0e10cSrcweir @throws SQLException 859cdf0e10cSrcweir if a database access error occurs. 860cdf0e10cSrcweir */ 861cdf0e10cSrcweir boolean supportsCorrelatedSubqueries() raises (SQLException); 862cdf0e10cSrcweir //------------------------------------------------------------------------- 863cdf0e10cSrcweir 864cdf0e10cSrcweir /** Is SQL UNION supported? 865cdf0e10cSrcweir @returns 866cdf0e10cSrcweir <TRUE/> if so 867cdf0e10cSrcweir @throws SQLException 868cdf0e10cSrcweir if a database access error occurs. 869cdf0e10cSrcweir */ 870cdf0e10cSrcweir boolean supportsUnion() raises (SQLException); 871cdf0e10cSrcweir //------------------------------------------------------------------------- 872cdf0e10cSrcweir 873cdf0e10cSrcweir /** Is SQL UNION ALL supported? 874cdf0e10cSrcweir @returns 875cdf0e10cSrcweir <TRUE/> if so 876cdf0e10cSrcweir @throws SQLException 877cdf0e10cSrcweir if a database access error occurs. 878cdf0e10cSrcweir */ 879cdf0e10cSrcweir boolean supportsUnionAll() raises (SQLException); 880cdf0e10cSrcweir //------------------------------------------------------------------------- 881cdf0e10cSrcweir 882cdf0e10cSrcweir /** Can cursors remain open across commits? 883cdf0e10cSrcweir @returns 884cdf0e10cSrcweir <TRUE/> if so 885cdf0e10cSrcweir @throws SQLException 886cdf0e10cSrcweir if a database access error occurs. 887cdf0e10cSrcweir */ 888cdf0e10cSrcweir boolean supportsOpenCursorsAcrossCommit() raises (SQLException); 889cdf0e10cSrcweir //------------------------------------------------------------------------- 890cdf0e10cSrcweir 891cdf0e10cSrcweir /** Can cursors remain open across rollbacks? 892cdf0e10cSrcweir @returns 893cdf0e10cSrcweir <TRUE/> if so 894cdf0e10cSrcweir @throws SQLException 895cdf0e10cSrcweir if a database access error occurs. 896cdf0e10cSrcweir */ 897cdf0e10cSrcweir boolean supportsOpenCursorsAcrossRollback() raises (SQLException); 898cdf0e10cSrcweir //------------------------------------------------------------------------- 899cdf0e10cSrcweir 900cdf0e10cSrcweir /** Can statements remain open across commits? 901cdf0e10cSrcweir @returns 902cdf0e10cSrcweir <TRUE/> if so 903cdf0e10cSrcweir @throws SQLException 904cdf0e10cSrcweir if a database access error occurs. 905cdf0e10cSrcweir */ 906cdf0e10cSrcweir boolean supportsOpenStatementsAcrossCommit() raises (SQLException); 907cdf0e10cSrcweir //------------------------------------------------------------------------- 908cdf0e10cSrcweir 909cdf0e10cSrcweir /** Can statements remain open across rollbacks? 910cdf0e10cSrcweir @returns 911cdf0e10cSrcweir <TRUE/> if so 912cdf0e10cSrcweir @throws SQLException 913cdf0e10cSrcweir if a database access error occurs. 914cdf0e10cSrcweir */ 915cdf0e10cSrcweir boolean supportsOpenStatementsAcrossRollback() 916cdf0e10cSrcweir raises (SQLException); 917cdf0e10cSrcweir //------------------------------------------------------------------------- 918cdf0e10cSrcweir 919cdf0e10cSrcweir /** return the maximal number of hex characters in an inline binary literal 920cdf0e10cSrcweir @returns 921cdf0e10cSrcweir <TRUE/> if so 922cdf0e10cSrcweir @throws SQLException 923cdf0e10cSrcweir if a database access error occurs. 924cdf0e10cSrcweir */ 925cdf0e10cSrcweir long getMaxBinaryLiteralLength() raises (SQLException); 926cdf0e10cSrcweir //------------------------------------------------------------------------- 927cdf0e10cSrcweir 928cdf0e10cSrcweir /** return the max length for a character literal 929cdf0e10cSrcweir @returns 930cdf0e10cSrcweir <TRUE/> if so 931cdf0e10cSrcweir @throws SQLException 932cdf0e10cSrcweir if a database access error occurs. 933cdf0e10cSrcweir */ 934cdf0e10cSrcweir long getMaxCharLiteralLength() raises (SQLException); 935cdf0e10cSrcweir //------------------------------------------------------------------------- 936cdf0e10cSrcweir 937cdf0e10cSrcweir /** return the limit on column name length 938cdf0e10cSrcweir @returns 939cdf0e10cSrcweir <TRUE/> if so 940cdf0e10cSrcweir @throws SQLException 941cdf0e10cSrcweir if a database access error occurs. 942cdf0e10cSrcweir */ 943cdf0e10cSrcweir long getMaxColumnNameLength() raises (SQLException); 944cdf0e10cSrcweir //------------------------------------------------------------------------- 945cdf0e10cSrcweir 946cdf0e10cSrcweir /** return the maximum number of columns in a "GROUP BY" clause 947cdf0e10cSrcweir @returns 948cdf0e10cSrcweir <TRUE/> if so 949cdf0e10cSrcweir @throws SQLException 950cdf0e10cSrcweir if a database access error occurs. 951cdf0e10cSrcweir */ 952cdf0e10cSrcweir long getMaxColumnsInGroupBy() raises (SQLException); 953cdf0e10cSrcweir //------------------------------------------------------------------------- 954cdf0e10cSrcweir 955cdf0e10cSrcweir /** return the maximum number of columns allowed in an index 956cdf0e10cSrcweir @returns 957cdf0e10cSrcweir <TRUE/> if so 958cdf0e10cSrcweir @throws SQLException 959cdf0e10cSrcweir if a database access error occurs. 960cdf0e10cSrcweir */ 961cdf0e10cSrcweir long getMaxColumnsInIndex() raises (SQLException); 962cdf0e10cSrcweir //------------------------------------------------------------------------- 963cdf0e10cSrcweir 964cdf0e10cSrcweir /** return the maximum number of columns in an "ORDER BY" clause 965cdf0e10cSrcweir @returns 966cdf0e10cSrcweir <TRUE/> if so 967cdf0e10cSrcweir @throws SQLException 968cdf0e10cSrcweir if a database access error occurs. 969cdf0e10cSrcweir */ 970cdf0e10cSrcweir long getMaxColumnsInOrderBy() raises (SQLException); 971cdf0e10cSrcweir //------------------------------------------------------------------------- 972cdf0e10cSrcweir 973cdf0e10cSrcweir /** return the maximum number of columns in a "SELECT" list 974cdf0e10cSrcweir @returns 975cdf0e10cSrcweir <TRUE/> if so 976cdf0e10cSrcweir @throws SQLException 977cdf0e10cSrcweir if a database access error occurs. 978cdf0e10cSrcweir */ 979cdf0e10cSrcweir long getMaxColumnsInSelect() raises (SQLException); 980cdf0e10cSrcweir //------------------------------------------------------------------------- 981cdf0e10cSrcweir 982cdf0e10cSrcweir /** return the maximum number of columns in a table 983cdf0e10cSrcweir @returns 984cdf0e10cSrcweir <TRUE/> if so 985cdf0e10cSrcweir @throws SQLException 986cdf0e10cSrcweir if a database access error occurs. 987cdf0e10cSrcweir */ 988cdf0e10cSrcweir long getMaxColumnsInTable() raises (SQLException); 989cdf0e10cSrcweir //------------------------------------------------------------------------- 990cdf0e10cSrcweir 991cdf0e10cSrcweir /** return the number of active connections at a time to this database. 992cdf0e10cSrcweir @returns 993cdf0e10cSrcweir <TRUE/> if so 994cdf0e10cSrcweir @throws SQLException 995cdf0e10cSrcweir if a database access error occurs. 996cdf0e10cSrcweir */ 997cdf0e10cSrcweir long getMaxConnections() raises (SQLException); 998cdf0e10cSrcweir //------------------------------------------------------------------------- 999cdf0e10cSrcweir 1000cdf0e10cSrcweir /** return the maximum cursor name length 1001cdf0e10cSrcweir @returns 1002cdf0e10cSrcweir <TRUE/> if so 1003cdf0e10cSrcweir @throws SQLException 1004cdf0e10cSrcweir if a database access error occurs. 1005cdf0e10cSrcweir */ 1006cdf0e10cSrcweir long getMaxCursorNameLength() raises (SQLException); 1007cdf0e10cSrcweir //------------------------------------------------------------------------- 1008cdf0e10cSrcweir 1009cdf0e10cSrcweir /** return the maximum length of an index (in bytes) 1010cdf0e10cSrcweir @returns 1011cdf0e10cSrcweir <TRUE/> if so 1012cdf0e10cSrcweir @throws SQLException 1013cdf0e10cSrcweir if a database access error occurs. 1014cdf0e10cSrcweir */ 1015cdf0e10cSrcweir long getMaxIndexLength() raises (SQLException); 1016cdf0e10cSrcweir //------------------------------------------------------------------------- 1017cdf0e10cSrcweir 1018cdf0e10cSrcweir /** return the maximum length allowed for a schema name 1019cdf0e10cSrcweir @returns 1020cdf0e10cSrcweir <TRUE/> if so 1021cdf0e10cSrcweir @throws SQLException 1022cdf0e10cSrcweir if a database access error occurs. 1023cdf0e10cSrcweir */ 1024cdf0e10cSrcweir long getMaxSchemaNameLength() raises (SQLException); 1025cdf0e10cSrcweir //------------------------------------------------------------------------- 1026cdf0e10cSrcweir 1027cdf0e10cSrcweir /** return the maximum length of a procedure name 1028cdf0e10cSrcweir @returns 1029cdf0e10cSrcweir <TRUE/> if so 1030cdf0e10cSrcweir @throws SQLException 1031cdf0e10cSrcweir if a database access error occurs. 1032cdf0e10cSrcweir */ 1033cdf0e10cSrcweir long getMaxProcedureNameLength() raises (SQLException); 1034cdf0e10cSrcweir //------------------------------------------------------------------------- 1035cdf0e10cSrcweir 1036cdf0e10cSrcweir /** return the maximum length of a catalog name 1037cdf0e10cSrcweir @returns 1038cdf0e10cSrcweir <TRUE/> if so 1039cdf0e10cSrcweir @throws SQLException 1040cdf0e10cSrcweir if a database access error occurs. 1041cdf0e10cSrcweir */ 1042cdf0e10cSrcweir long getMaxCatalogNameLength() raises (SQLException); 1043cdf0e10cSrcweir //------------------------------------------------------------------------- 1044cdf0e10cSrcweir 1045cdf0e10cSrcweir /** return the maximum length of a single row. 1046cdf0e10cSrcweir @returns 1047cdf0e10cSrcweir <TRUE/> if so 1048cdf0e10cSrcweir @throws SQLException 1049cdf0e10cSrcweir if a database access error occurs. 1050cdf0e10cSrcweir */ 1051cdf0e10cSrcweir long getMaxRowSize() raises (SQLException); 1052cdf0e10cSrcweir //------------------------------------------------------------------------- 1053cdf0e10cSrcweir 1054cdf0e10cSrcweir /** Did getMaxRowSize() include LONGVARCHAR and LONGVARBINARY 1055cdf0e10cSrcweir blobs? 1056cdf0e10cSrcweir @returns 1057cdf0e10cSrcweir <TRUE/> if so 1058cdf0e10cSrcweir @throws SQLException 1059cdf0e10cSrcweir if a database access error occurs. 1060cdf0e10cSrcweir */ 1061cdf0e10cSrcweir boolean doesMaxRowSizeIncludeBlobs() raises (SQLException); 1062cdf0e10cSrcweir //------------------------------------------------------------------------- 1063cdf0e10cSrcweir 1064cdf0e10cSrcweir /** return the maximum length of a SQL statement 1065cdf0e10cSrcweir @returns 1066cdf0e10cSrcweir <TRUE/> if so 1067cdf0e10cSrcweir @throws SQLException 1068cdf0e10cSrcweir if a database access error occurs. 1069cdf0e10cSrcweir */ 1070cdf0e10cSrcweir long getMaxStatementLength() raises (SQLException); 1071cdf0e10cSrcweir //------------------------------------------------------------------------- 1072cdf0e10cSrcweir 1073cdf0e10cSrcweir /** return the maximal number of open active statements at one time to this database 1074cdf0e10cSrcweir @returns 1075cdf0e10cSrcweir <TRUE/> if so 1076cdf0e10cSrcweir @throws SQLException 1077cdf0e10cSrcweir if a database access error occurs. 1078cdf0e10cSrcweir */ 1079cdf0e10cSrcweir long getMaxStatements() raises (SQLException); 1080cdf0e10cSrcweir //------------------------------------------------------------------------- 1081cdf0e10cSrcweir 1082cdf0e10cSrcweir /** return the maximum length of a table name 1083cdf0e10cSrcweir @returns 1084cdf0e10cSrcweir <TRUE/> if so 1085cdf0e10cSrcweir @throws SQLException 1086cdf0e10cSrcweir if a database access error occurs. 1087cdf0e10cSrcweir */ 1088cdf0e10cSrcweir long getMaxTableNameLength() raises (SQLException); 1089cdf0e10cSrcweir //------------------------------------------------------------------------- 1090cdf0e10cSrcweir 1091cdf0e10cSrcweir /** return the maximum number of tables in a SELECT statement 1092cdf0e10cSrcweir @returns 1093cdf0e10cSrcweir <TRUE/> if so 1094cdf0e10cSrcweir @throws SQLException 1095cdf0e10cSrcweir if a database access error occurs. 1096cdf0e10cSrcweir */ 1097cdf0e10cSrcweir long getMaxTablesInSelect() raises (SQLException); 1098cdf0e10cSrcweir //------------------------------------------------------------------------- 1099cdf0e10cSrcweir 1100cdf0e10cSrcweir /** return the maximum length of a user name 1101cdf0e10cSrcweir @returns 1102cdf0e10cSrcweir <TRUE/> if so 1103cdf0e10cSrcweir @throws SQLException 1104cdf0e10cSrcweir if a database access error occurs. 1105cdf0e10cSrcweir */ 1106cdf0e10cSrcweir long getMaxUserNameLength() raises (SQLException); 1107cdf0e10cSrcweir //------------------------------------------------------------------------- 1108cdf0e10cSrcweir 1109cdf0e10cSrcweir /** return the database default transaction isolation level. 1110cdf0e10cSrcweir The values are defined in 1111cdf0e10cSrcweir <type scope="com::sun::star::sdbc">TransactionIsolation</type>. 1112cdf0e10cSrcweir @returns 1113cdf0e10cSrcweir <TRUE/> if so 1114cdf0e10cSrcweir @throws SQLException 1115cdf0e10cSrcweir if a database access error occurs. 1116cdf0e10cSrcweir @see com::sun::star::sdbc::XConnection 1117cdf0e10cSrcweir */ 1118cdf0e10cSrcweir long getDefaultTransactionIsolation() raises (SQLException); 1119cdf0e10cSrcweir //------------------------------------------------------------------------- 1120cdf0e10cSrcweir 1121cdf0e10cSrcweir /** support the Database transactions? 1122cdf0e10cSrcweir If not, invoking the method 1123cdf0e10cSrcweir <member scope="com::sun::star::sdbc">XConnection::commit()</member> 1124cdf0e10cSrcweir is a noop and the 1125cdf0e10cSrcweir isolation level is TransactionIsolation_NONE. 1126cdf0e10cSrcweir @returns 1127cdf0e10cSrcweir <TRUE/> if so 1128cdf0e10cSrcweir @throws SQLException 1129cdf0e10cSrcweir if a database access error occurs. 1130cdf0e10cSrcweir */ 1131cdf0e10cSrcweir boolean supportsTransactions() raises (SQLException); 1132cdf0e10cSrcweir //------------------------------------------------------------------------- 1133cdf0e10cSrcweir 1134cdf0e10cSrcweir /** Does this database support the given transaction isolation level? 1135cdf0e10cSrcweir @returns 1136cdf0e10cSrcweir <TRUE/> if so 1137cdf0e10cSrcweir @throws SQLException 1138cdf0e10cSrcweir if a database access error occurs. 1139cdf0e10cSrcweir @see com::sun::star::sdbc::Connection 1140cdf0e10cSrcweir */ 1141cdf0e10cSrcweir boolean supportsTransactionIsolationLevel([in]long level) 1142cdf0e10cSrcweir raises (SQLException); 1143cdf0e10cSrcweir //------------------------------------------------------------------------- 1144cdf0e10cSrcweir 1145cdf0e10cSrcweir /** support the Database both data definition and data manipulation statements 1146cdf0e10cSrcweir within a transaction? 1147cdf0e10cSrcweir @returns 1148cdf0e10cSrcweir <TRUE/> if so 1149cdf0e10cSrcweir @throws SQLException 1150cdf0e10cSrcweir if a database access error occurs. 1151cdf0e10cSrcweir<!-- JRH: Unclear on the intent of these many support questions. 1152cdf0e10cSrcweir If asking, it should state, "Does the Database support both ....? 1153cdf0e10cSrcweir If declaring, it should state something like the following: 1154cdf0e10cSrcweir 1155cdf0e10cSrcweir metadata: supportsDataDefinitionAndDataManipulationTransactions 1156cdf0e10cSrcweir 1157cdf0e10cSrcweir "provides support for both data definition and data manipulation statements within a transaction." 1158cdf0e10cSrcweir --> */ 1159cdf0e10cSrcweir boolean supportsDataDefinitionAndDataManipulationTransactions() 1160cdf0e10cSrcweir raises (SQLException); 1161cdf0e10cSrcweir //------------------------------------------------------------------------- 1162cdf0e10cSrcweir 1163cdf0e10cSrcweir /** are only data manipulation statements within a transaction 1164cdf0e10cSrcweir supported? 1165cdf0e10cSrcweir @returns 1166cdf0e10cSrcweir <TRUE/> if so 1167cdf0e10cSrcweir @throws SQLException 1168cdf0e10cSrcweir if a database access error occurs. 1169cdf0e10cSrcweir */ 1170cdf0e10cSrcweir boolean supportsDataManipulationTransactionsOnly() 1171cdf0e10cSrcweir raises (SQLException); 1172cdf0e10cSrcweir //------------------------------------------------------------------------- 1173cdf0e10cSrcweir 1174cdf0e10cSrcweir /** does a data definition statement within a transaction force the 1175cdf0e10cSrcweir transaction to commit? 1176cdf0e10cSrcweir @returns 1177cdf0e10cSrcweir <TRUE/> if so 1178cdf0e10cSrcweir @throws SQLException 1179cdf0e10cSrcweir if a database access error occurs. 1180cdf0e10cSrcweir */ 1181cdf0e10cSrcweir boolean dataDefinitionCausesTransactionCommit() 1182cdf0e10cSrcweir raises (SQLException); 1183cdf0e10cSrcweir //------------------------------------------------------------------------- 1184cdf0e10cSrcweir 1185cdf0e10cSrcweir /** is a data definition statement within a transaction ignored? 1186cdf0e10cSrcweir @returns 1187cdf0e10cSrcweir <TRUE/> if so 1188cdf0e10cSrcweir @throws SQLException 1189cdf0e10cSrcweir if a database access error occurs. 1190cdf0e10cSrcweir */ 1191cdf0e10cSrcweir boolean dataDefinitionIgnoredInTransactions() 1192cdf0e10cSrcweir raises (SQLException); 1193cdf0e10cSrcweir //------------------------------------------------------------------------- 1194cdf0e10cSrcweir 1195cdf0e10cSrcweir /** Gets a description of the stored procedures available in a 1196cdf0e10cSrcweir catalog. 1197cdf0e10cSrcweir 1198cdf0e10cSrcweir 1199cdf0e10cSrcweir <p> 1200cdf0e10cSrcweir Only procedure descriptions matching the schema and 1201cdf0e10cSrcweir procedure name criteria are returned. They are ordered by 1202cdf0e10cSrcweir PROCEDURE_SCHEM, and PROCEDURE_NAME. 1203cdf0e10cSrcweir </p> 1204cdf0e10cSrcweir <p> 1205cdf0e10cSrcweir Each procedure description has the following columns: 1206cdf0e10cSrcweir </p> 1207cdf0e10cSrcweir <ol> 1208cdf0e10cSrcweir <li> 1209cdf0e10cSrcweir <b>PROCEDURE_CAT</b> string => procedure catalog (may be <NULL/>) 1210cdf0e10cSrcweir </li> 1211cdf0e10cSrcweir <li> 1212cdf0e10cSrcweir <b>PROCEDURE_SCHEM</b> string => procedure schema (may be <NULL/>) 1213cdf0e10cSrcweir </li> 1214cdf0e10cSrcweir <li> 1215cdf0e10cSrcweir <b>PROCEDURE_NAME</b> string => procedure name 1216cdf0e10cSrcweir </li> 1217cdf0e10cSrcweir <li> reserved for future use 1218cdf0e10cSrcweir </li> 1219cdf0e10cSrcweir <li> reserved for future use 1220cdf0e10cSrcweir </li> 1221cdf0e10cSrcweir <li> reserved for future use 1222cdf0e10cSrcweir </li> 1223cdf0e10cSrcweir <li> 1224cdf0e10cSrcweir <b>REMARKS</b> string => explanatory comment on the procedure 1225cdf0e10cSrcweir </li> 1226cdf0e10cSrcweir <li> 1227cdf0e10cSrcweir <b>PROCEDURE_TYPE</b> short => kind of procedure: 1228cdf0e10cSrcweir <ul> 1229cdf0e10cSrcweir <li> UNKNOWN - May return a result 1230cdf0e10cSrcweir </li> 1231cdf0e10cSrcweir <li> NO - Does not return a result 1232cdf0e10cSrcweir </li> 1233cdf0e10cSrcweir <li> RETURN - Returns a result 1234cdf0e10cSrcweir </li> 1235cdf0e10cSrcweir </ul> 1236cdf0e10cSrcweir </li> 1237cdf0e10cSrcweir </ol> 1238cdf0e10cSrcweir @param catalog 1239cdf0e10cSrcweir a catalog name; "" retrieves those without a catalog; <VOID/> means drop catalog name from the selection criteria 1240cdf0e10cSrcweir @param schemaPattern 1241cdf0e10cSrcweir a schema name pattern; "" retrieves those without a schema 1242cdf0e10cSrcweir @param procedureNamePattern 1243cdf0e10cSrcweir a procedure name pattern 1244cdf0e10cSrcweir @returns 1245cdf0e10cSrcweir each row is a procedure description 1246cdf0e10cSrcweir @throws SQLException 1247cdf0e10cSrcweir if a database access error occurs. 1248cdf0e10cSrcweir */ 1249cdf0e10cSrcweir XResultSet getProcedures([in]any catalog, [in]string schemaPattern, 1250cdf0e10cSrcweir [in]string procedureNamePattern) raises (SQLException); 1251cdf0e10cSrcweir //------------------------------------------------------------------------- 1252cdf0e10cSrcweir 1253cdf0e10cSrcweir /** gets a description of a catalog's stored procedure parameters 1254cdf0e10cSrcweir and result columns. 1255cdf0e10cSrcweir 1256cdf0e10cSrcweir 1257cdf0e10cSrcweir <p> 1258cdf0e10cSrcweir Only descriptions matching the schema, procedure and 1259cdf0e10cSrcweir parameter name criteria are returned. They are ordered by 1260cdf0e10cSrcweir PROCEDURE_SCHEM and PROCEDURE_NAME. Within this, the return value, 1261cdf0e10cSrcweir if any, is first. Next are the parameter descriptions in call 1262cdf0e10cSrcweir order. The column descriptions follow in column number order. 1263cdf0e10cSrcweir </p> 1264cdf0e10cSrcweir <p>Each row in the XResultSet is a parameter description or 1265cdf0e10cSrcweir column description with the following fields: 1266cdf0e10cSrcweir </p> 1267cdf0e10cSrcweir <ol> 1268cdf0e10cSrcweir <li> 1269cdf0e10cSrcweir <b>PROCEDURE_CAT</b> string => procedure catalog (may be <NULL/>) 1270cdf0e10cSrcweir </li> 1271cdf0e10cSrcweir <li> 1272cdf0e10cSrcweir <b>PROCEDURE_SCHEM</b> string => procedure schema (may be <NULL/>) 1273cdf0e10cSrcweir </li> 1274cdf0e10cSrcweir <li> 1275cdf0e10cSrcweir <b>PROCEDURE_NAME</b> string => procedure name 1276cdf0e10cSrcweir </li> 1277cdf0e10cSrcweir <li> 1278cdf0e10cSrcweir <b>COLUMN_NAME</b> string => column/parameter name 1279cdf0e10cSrcweir </li> 1280cdf0e10cSrcweir <li> 1281cdf0e10cSrcweir <b>COLUMN_TYPE</b> Short => kind of column/parameter: 1282cdf0e10cSrcweir <ul> 1283cdf0e10cSrcweir <li> UNKNOWN - nobody knows 1284cdf0e10cSrcweir </li> 1285cdf0e10cSrcweir <li> IN - IN parameter 1286cdf0e10cSrcweir </li> 1287cdf0e10cSrcweir <li> INOUT - INOUT parameter 1288cdf0e10cSrcweir </li> 1289cdf0e10cSrcweir <li> OUT - OUT parameter 1290cdf0e10cSrcweir </li> 1291cdf0e10cSrcweir <li> RETURN - procedure return value 1292cdf0e10cSrcweir </li> 1293cdf0e10cSrcweir <li> RESULT - result column in XResultSet 1294cdf0e10cSrcweir </li> 1295cdf0e10cSrcweir </ul> 1296cdf0e10cSrcweir </li> 1297cdf0e10cSrcweir <li> 1298cdf0e10cSrcweir <b>DATA_TYPE</b> short => SQL type from java.sql.Types 1299cdf0e10cSrcweir </li> 1300cdf0e10cSrcweir <li> 1301cdf0e10cSrcweir <b>TYPE_NAME</b> string => SQL type name, for a UDT type the 1302cdf0e10cSrcweir type name is fully qualified 1303cdf0e10cSrcweir </li> 1304cdf0e10cSrcweir <li> 1305cdf0e10cSrcweir <b>PRECISION</b> long => precision 1306cdf0e10cSrcweir </li> 1307cdf0e10cSrcweir <li> 1308cdf0e10cSrcweir <b>LENGTH</b> long => length in bytes of data 1309cdf0e10cSrcweir </li> 1310cdf0e10cSrcweir <li> 1311cdf0e10cSrcweir <b>SCALE</b> short => scale 1312cdf0e10cSrcweir </li> 1313cdf0e10cSrcweir <li> 1314cdf0e10cSrcweir <b>RADIX</b> short => radix 1315cdf0e10cSrcweir </li> 1316cdf0e10cSrcweir <li> 1317cdf0e10cSrcweir <b>NULLABLE</b> short => can it contain NULL? 1318cdf0e10cSrcweir <ul> 1319cdf0e10cSrcweir <li> NO_NULLS - does not allow NULL values 1320cdf0e10cSrcweir </li> 1321cdf0e10cSrcweir <li> NULLABLE - allows NULL values 1322cdf0e10cSrcweir </li> 1323cdf0e10cSrcweir <li> NULLABLE_UNKNOWN - nullability unknown 1324cdf0e10cSrcweir </li> 1325cdf0e10cSrcweir </ul> 1326cdf0e10cSrcweir </li> 1327cdf0e10cSrcweir <li> 1328cdf0e10cSrcweir <b>REMARKS</b> string => comment describing parameter/column 1329cdf0e10cSrcweir </li> 1330cdf0e10cSrcweir </ol> 1331cdf0e10cSrcweir <p> 1332cdf0e10cSrcweir <b>Note:</b> Some databases may not return the column 1333cdf0e10cSrcweir descriptions for a procedure. Additional columns beyond 1334cdf0e10cSrcweir REMARKS can be defined by the database. 1335cdf0e10cSrcweir </p> 1336cdf0e10cSrcweir @param catalog 1337cdf0e10cSrcweir a catalog name; "" retrieves those without a catalog; <VOID/> means drop catalog name from the selection criteria 1338cdf0e10cSrcweir @param schemaPattern 1339cdf0e10cSrcweir a schema name pattern; "" retrieves those without a schema 1340cdf0e10cSrcweir @param procedureNamePattern 1341cdf0e10cSrcweir a procedure name pattern 1342cdf0e10cSrcweir @param columnNamePattern 1343cdf0e10cSrcweir a column name pattern 1344cdf0e10cSrcweir @returns 1345cdf0e10cSrcweir each row describes a stored procedure parameter or column 1346cdf0e10cSrcweir @throws SQLException 1347cdf0e10cSrcweir if a database access error occurs. 1348cdf0e10cSrcweir */ 1349cdf0e10cSrcweir XResultSet getProcedureColumns([in]any catalog, [in]string schemaPattern, 1350cdf0e10cSrcweir [in]string procedureNamePattern, 1351cdf0e10cSrcweir [in]string columnNamePattern) 1352cdf0e10cSrcweir raises (SQLException); 1353cdf0e10cSrcweir //------------------------------------------------------------------------- 1354cdf0e10cSrcweir 1355cdf0e10cSrcweir /** gets a description of tables available in a catalog. 1356cdf0e10cSrcweir 1357cdf0e10cSrcweir 1358cdf0e10cSrcweir <p>Only table descriptions matching the catalog, schema, table 1359cdf0e10cSrcweir name, and type criteria are returned. They are ordered by 1360cdf0e10cSrcweir TABLE_TYPE, TABLE_SCHEM, and TABLE_NAME. 1361cdf0e10cSrcweir </p> 1362cdf0e10cSrcweir <p>Each table description has the following columns: 1363cdf0e10cSrcweir </p> 1364cdf0e10cSrcweir <ol> 1365cdf0e10cSrcweir <li> 1366cdf0e10cSrcweir <b>TABLE_CAT</b> string => table catalog (may be <NULL/>) 1367cdf0e10cSrcweir </li> 1368cdf0e10cSrcweir <li> 1369cdf0e10cSrcweir <b>TABLE_SCHEM</b> string => table schema (may be <NULL/>) 1370cdf0e10cSrcweir </li> 1371cdf0e10cSrcweir <li> 1372cdf0e10cSrcweir <b>TABLE_NAME</b> string => table name 1373cdf0e10cSrcweir </li> 1374cdf0e10cSrcweir <li> 1375cdf0e10cSrcweir <b>TABLE_TYPE</b> string => table type. Typical types are "TABLE", 1376cdf0e10cSrcweir "VIEW", "SYSTEM TABLE", "GLOBAL TEMPORARY", 1377cdf0e10cSrcweir "LOCAL TEMPORARY", "ALIAS", "SYNONYM". 1378cdf0e10cSrcweir </li> 1379cdf0e10cSrcweir <li> 1380cdf0e10cSrcweir <b>REMARKS</b> string => explanatory comment on the table 1381cdf0e10cSrcweir </li> 1382cdf0e10cSrcweir </ol> 1383cdf0e10cSrcweir <p> 1384cdf0e10cSrcweir <b>Note:</b> Some databases may not return information for 1385cdf0e10cSrcweir all tables. 1386cdf0e10cSrcweir </p> 1387cdf0e10cSrcweir @param catalog 1388cdf0e10cSrcweir a catalog name; "" retrieves those without a catalog; <VOID/> means drop catalog name from the selection criteria 1389cdf0e10cSrcweir @param schemaPattern 1390cdf0e10cSrcweir a schema name pattern; "" retrieves those without a schema 1391cdf0e10cSrcweir @param tableNamePattern 1392cdf0e10cSrcweir a table name pattern 1393cdf0e10cSrcweir @param types 1394cdf0e10cSrcweir a list of table types to include 1395cdf0e10cSrcweir @returns 1396cdf0e10cSrcweir each row is a table description 1397cdf0e10cSrcweir @throws SQLException 1398cdf0e10cSrcweir if a database access error occurs. 1399cdf0e10cSrcweir */ 1400cdf0e10cSrcweir XResultSet getTables([in]any catalog, [in]string schemaPattern, 1401cdf0e10cSrcweir [in]string tableNamePattern, [in]sequence<string> types) 1402cdf0e10cSrcweir raises (SQLException); 1403cdf0e10cSrcweir //------------------------------------------------------------------------- 1404cdf0e10cSrcweir 1405cdf0e10cSrcweir /** Gets the schema names available in this database. The results 1406cdf0e10cSrcweir are ordered by schema name. 1407cdf0e10cSrcweir 1408cdf0e10cSrcweir 1409cdf0e10cSrcweir <p>The schema column is: 1410cdf0e10cSrcweir </p> 1411cdf0e10cSrcweir <ol> 1412cdf0e10cSrcweir <li> 1413cdf0e10cSrcweir <b>TABLE_SCHEM</b> string => schema name 1414cdf0e10cSrcweir </li> 1415cdf0e10cSrcweir </ol> 1416cdf0e10cSrcweir @returns 1417cdf0e10cSrcweir each row has a single String column that is a schema name 1418cdf0e10cSrcweir @throws SQLException 1419cdf0e10cSrcweir if a database access error occurs. 1420cdf0e10cSrcweir */ 1421cdf0e10cSrcweir XResultSet getSchemas() raises (SQLException); 1422cdf0e10cSrcweir //------------------------------------------------------------------------- 1423cdf0e10cSrcweir 1424cdf0e10cSrcweir /** gets the catalog names available in this database. The results 1425cdf0e10cSrcweir are ordered by catalog name. 1426cdf0e10cSrcweir 1427cdf0e10cSrcweir 1428cdf0e10cSrcweir <p>The catalog column is: 1429cdf0e10cSrcweir </p> 1430cdf0e10cSrcweir <ol> 1431cdf0e10cSrcweir <li> 1432cdf0e10cSrcweir <b>TABLE_CAT</b> string => catalog name 1433cdf0e10cSrcweir </li> 1434cdf0e10cSrcweir </ol> 1435cdf0e10cSrcweir @returns 1436cdf0e10cSrcweir each row has a single String column that is a catalog name 1437cdf0e10cSrcweir @throws SQLException 1438cdf0e10cSrcweir if a database access error occurs. 1439cdf0e10cSrcweir */ 1440cdf0e10cSrcweir XResultSet getCatalogs() raises (SQLException); 1441cdf0e10cSrcweir //------------------------------------------------------------------------- 1442cdf0e10cSrcweir 1443cdf0e10cSrcweir /** gets the table types available in this database. The results 1444cdf0e10cSrcweir are ordered by table type. 1445cdf0e10cSrcweir 1446cdf0e10cSrcweir 1447cdf0e10cSrcweir <p>The table type is: 1448cdf0e10cSrcweir </p> 1449cdf0e10cSrcweir <ol> 1450cdf0e10cSrcweir <li> 1451cdf0e10cSrcweir <b>TABLE_TYPE</b> string => table type. Typical types are "TABLE", 1452cdf0e10cSrcweir "VIEW", "SYSTEM TABLE", "GLOBAL TEMPORARY", 1453cdf0e10cSrcweir "LOCAL TEMPORARY", "ALIAS", "SYNONYM". 1454cdf0e10cSrcweir </li> 1455cdf0e10cSrcweir </ol> 1456cdf0e10cSrcweir @returns 1457cdf0e10cSrcweir each row has a single String column that is a table type 1458cdf0e10cSrcweir @throws SQLException 1459cdf0e10cSrcweir if a database access error occurs. 1460cdf0e10cSrcweir */ 1461cdf0e10cSrcweir XResultSet getTableTypes() raises (SQLException); 1462cdf0e10cSrcweir //------------------------------------------------------------------------- 1463cdf0e10cSrcweir 1464cdf0e10cSrcweir /** gets a description of table columns available in 1465cdf0e10cSrcweir the specified catalog. 1466cdf0e10cSrcweir 1467cdf0e10cSrcweir 1468cdf0e10cSrcweir <p>Only column descriptions matching the catalog, schema, table 1469cdf0e10cSrcweir and column name criteria are returned. They are ordered by 1470cdf0e10cSrcweir TABLE_SCHEM, TABLE_NAME, and ORDINAL_POSITION. 1471cdf0e10cSrcweir </p> 1472cdf0e10cSrcweir <p>Each column description has the following columns: 1473cdf0e10cSrcweir </p> 1474cdf0e10cSrcweir <ol> 1475cdf0e10cSrcweir <li> 1476cdf0e10cSrcweir <b>TABLE_CAT</b> string => table catalog (may be <NULL/>) 1477cdf0e10cSrcweir </li> 1478cdf0e10cSrcweir <li> 1479cdf0e10cSrcweir <b>TABLE_SCHEM</b> string => table schema (may be <NULL/>) 1480cdf0e10cSrcweir </li> 1481cdf0e10cSrcweir <li> 1482cdf0e10cSrcweir <b>TABLE_NAME</b> string => table name 1483cdf0e10cSrcweir </li> 1484cdf0e10cSrcweir <li> 1485cdf0e10cSrcweir <b>COLUMN_NAME</b> string => column name 1486cdf0e10cSrcweir </li> 1487cdf0e10cSrcweir <li> 1488cdf0e10cSrcweir <b>DATA_TYPE</b> short => SQL type from java.sql.Types 1489cdf0e10cSrcweir </li> 1490cdf0e10cSrcweir <li> 1491cdf0e10cSrcweir <b>TYPE_NAME</b> string => Data source dependent type name, 1492cdf0e10cSrcweir for a UDT the type name is fully qualified 1493cdf0e10cSrcweir </li> 1494cdf0e10cSrcweir <li> 1495cdf0e10cSrcweir <b>COLUMN_SIZE</b> long => column size. For char or date 1496cdf0e10cSrcweir types this is the maximum number of characters, for numeric or 1497cdf0e10cSrcweir decimal types this is precision. 1498cdf0e10cSrcweir </li> 1499cdf0e10cSrcweir <li> 1500cdf0e10cSrcweir <b>BUFFER_LENGTH</b> is not used. 1501cdf0e10cSrcweir </li> 1502cdf0e10cSrcweir <li> 1503cdf0e10cSrcweir <b>DECIMAL_DIGITS</b> long => the number of fractional digits 1504cdf0e10cSrcweir </li> 1505cdf0e10cSrcweir <li> 1506cdf0e10cSrcweir <b>NUM_PREC_RADIX</b> long => Radix (typically either 10 or 2) 1507cdf0e10cSrcweir </li> 1508cdf0e10cSrcweir <li> 1509cdf0e10cSrcweir <b>NULLABLE</b> long => is NULL allowed? 1510cdf0e10cSrcweir <ul> 1511cdf0e10cSrcweir <li> NO_NULLS - might not allow NULL values 1512cdf0e10cSrcweir </li> 1513cdf0e10cSrcweir <li> NULABLE - definitely allows NULL values 1514cdf0e10cSrcweir </li> 1515cdf0e10cSrcweir <li> NULLABLE_UNKNOWN - nullability unknown 1516cdf0e10cSrcweir </li> 1517cdf0e10cSrcweir </ul> 1518cdf0e10cSrcweir </li> 1519cdf0e10cSrcweir <li> 1520cdf0e10cSrcweir <b>REMARKS</b> string => comment describing column (may be <NULL/>) 1521cdf0e10cSrcweir </li> 1522cdf0e10cSrcweir <li> 1523cdf0e10cSrcweir <b>COLUMN_DEF</b> string => default value (may be <NULL/>) 1524cdf0e10cSrcweir </li> 1525cdf0e10cSrcweir <li> 1526cdf0e10cSrcweir <b>SQL_DATA_TYPE</b> long => unused 1527cdf0e10cSrcweir </li> 1528cdf0e10cSrcweir <li> 1529cdf0e10cSrcweir <b>SQL_DATETIME_SUB</b> long => unused 1530cdf0e10cSrcweir </li> 1531cdf0e10cSrcweir <li> 1532cdf0e10cSrcweir <b>CHAR_OCTET_LENGTH</b> long => for char types the 1533cdf0e10cSrcweir maximum number of bytes in the column 1534cdf0e10cSrcweir </li> 1535cdf0e10cSrcweir <li> 1536cdf0e10cSrcweir <b>ORDINAL_POSITION</b> int => index of column in table 1537cdf0e10cSrcweir (starting at 1) 1538cdf0e10cSrcweir </li> 1539cdf0e10cSrcweir <li> 1540cdf0e10cSrcweir <b>IS_NULLABLE</b> string => "NO" means column definitely 1541cdf0e10cSrcweir does not allow NULL values; "YES" means the column might 1542cdf0e10cSrcweir allow NULL values. An empty string means nobody knows. 1543cdf0e10cSrcweir </li> 1544cdf0e10cSrcweir </ol> 1545cdf0e10cSrcweir @param catalog 1546cdf0e10cSrcweir a catalog name; "" retrieves those without a catalog; <VOID/> means drop catalog name from the selection criteria 1547cdf0e10cSrcweir @param schemaPattern 1548cdf0e10cSrcweir a schema name pattern; "" retrieves those without a schema 1549cdf0e10cSrcweir @param tableNamePattern 1550cdf0e10cSrcweir a table name pattern 1551cdf0e10cSrcweir @param columnNamePattern 1552cdf0e10cSrcweir a column name pattern 1553cdf0e10cSrcweir @returns 1554cdf0e10cSrcweir each row is a column description 1555cdf0e10cSrcweir @throws SQLException 1556cdf0e10cSrcweir if a database access error occurs. 1557cdf0e10cSrcweir */ 1558cdf0e10cSrcweir XResultSet getColumns([in]any catalog, [in]string schemaPattern, 1559cdf0e10cSrcweir [in]string tableNamePattern, [in]string columnNamePattern) 1560cdf0e10cSrcweir raises (SQLException); 1561cdf0e10cSrcweir //------------------------------------------------------------------------- 1562cdf0e10cSrcweir 1563cdf0e10cSrcweir /** gets a description of the access rights for a table's columns. 1564cdf0e10cSrcweir 1565cdf0e10cSrcweir 1566cdf0e10cSrcweir <p> 1567cdf0e10cSrcweir Only privileges matching the column name criteria are 1568cdf0e10cSrcweir returned. They are ordered by COLUMN_NAME and PRIVILEGE. 1569cdf0e10cSrcweir </p> 1570cdf0e10cSrcweir <p>Each privilige description has the following columns: 1571cdf0e10cSrcweir </p> 1572cdf0e10cSrcweir <ol> 1573cdf0e10cSrcweir <li> 1574cdf0e10cSrcweir <b>TABLE_CAT</b> string => table catalog (may be <NULL/>) 1575cdf0e10cSrcweir </li> 1576cdf0e10cSrcweir <li> 1577cdf0e10cSrcweir <b>TABLE_SCHEM</b> string => table schema (may be <NULL/>) 1578cdf0e10cSrcweir </li> 1579cdf0e10cSrcweir <li> 1580cdf0e10cSrcweir <b>TABLE_NAME</b> string => table name 1581cdf0e10cSrcweir </li> 1582cdf0e10cSrcweir <li> 1583cdf0e10cSrcweir <b>COLUMN_NAME</b> string => column name 1584cdf0e10cSrcweir </li> 1585cdf0e10cSrcweir <li> 1586cdf0e10cSrcweir <b>GRANTOR</b> => grantor of access (may be <NULL/>) 1587cdf0e10cSrcweir </li> 1588cdf0e10cSrcweir <li> 1589cdf0e10cSrcweir <b>GRANTEE</b> string => grantee of access 1590cdf0e10cSrcweir </li> 1591cdf0e10cSrcweir <li> 1592cdf0e10cSrcweir <b>PRIVILEGE</b> string => name of access (SELECT, 1593cdf0e10cSrcweir INSERT, UPDATE, REFERENCES, ...) 1594cdf0e10cSrcweir </li> 1595cdf0e10cSrcweir <li> 1596cdf0e10cSrcweir <b>IS_GRANTABLE</b> string => "YES" if grantee is permitted 1597cdf0e10cSrcweir to grant to others; "NO" if not; <NULL/> if unknown 1598cdf0e10cSrcweir </li> 1599cdf0e10cSrcweir </ol> 1600cdf0e10cSrcweir @param catalog 1601cdf0e10cSrcweir a catalog name; "" retrieves those without a catalog; <VOID/> means drop catalog name from the selection criteria 1602cdf0e10cSrcweir @param schema 1603cdf0e10cSrcweir a schema name ; "" retrieves those without a schema 1604cdf0e10cSrcweir @param table 1605cdf0e10cSrcweir a table name 1606cdf0e10cSrcweir @param columnNamePattern 1607cdf0e10cSrcweir a column name pattern 1608cdf0e10cSrcweir @returns 1609cdf0e10cSrcweir each row is a column privilege description 1610cdf0e10cSrcweir @throws SQLException 1611cdf0e10cSrcweir if a database access error occurs. 1612cdf0e10cSrcweir */ 1613cdf0e10cSrcweir XResultSet getColumnPrivileges([in]any catalog, [in]string schema, 1614cdf0e10cSrcweir [in]string table, [in]string columnNamePattern) raises (SQLException); 1615cdf0e10cSrcweir //------------------------------------------------------------------------- 1616cdf0e10cSrcweir 1617cdf0e10cSrcweir /** gets a description of the access rights for each table available 1618cdf0e10cSrcweir in a catalog. Note that a table privilege applies to one or 1619cdf0e10cSrcweir more columns in the table. It would be wrong to assume that 1620cdf0e10cSrcweir this priviledge applies to all columns (this may be <TRUE/> for 1621cdf0e10cSrcweir some systems but is not <TRUE/> for all.) 1622cdf0e10cSrcweir 1623cdf0e10cSrcweir 1624cdf0e10cSrcweir <p>Only privileges matching the schema and table name 1625cdf0e10cSrcweir criteria are returned. They are ordered by TABLE_SCHEM, 1626cdf0e10cSrcweir TABLE_NAME, and PRIVILEGE. 1627cdf0e10cSrcweir </p> 1628cdf0e10cSrcweir <p>Each privilige description has the following columns: 1629cdf0e10cSrcweir </p> 1630cdf0e10cSrcweir <ol> 1631cdf0e10cSrcweir <li> 1632cdf0e10cSrcweir <b>TABLE_CAT</b> string => table catalog (may be <NULL/>) 1633cdf0e10cSrcweir </li> 1634cdf0e10cSrcweir <li> 1635cdf0e10cSrcweir <b>TABLE_SCHEM</b> string => table schema (may be <NULL/>) 1636cdf0e10cSrcweir </li> 1637cdf0e10cSrcweir <li> 1638cdf0e10cSrcweir <b>TABLE_NAME</b> string => table name 1639cdf0e10cSrcweir </li> 1640cdf0e10cSrcweir <li> 1641cdf0e10cSrcweir <b>GRANTOR</b> => grantor of access (may be <NULL/>) 1642cdf0e10cSrcweir </li> 1643cdf0e10cSrcweir <li> 1644cdf0e10cSrcweir <b>GRANTEE</b> string => grantee of access 1645cdf0e10cSrcweir </li> 1646cdf0e10cSrcweir <li> 1647cdf0e10cSrcweir <b>PRIVILEGE</b> string => name of access (SELECT, 1648cdf0e10cSrcweir INSERT, UPDATE, REFERENCES, ...) 1649cdf0e10cSrcweir </li> 1650cdf0e10cSrcweir <li> 1651cdf0e10cSrcweir <b>IS_GRANTABLE</b> string => "YES" if grantee is permitted 1652cdf0e10cSrcweir to grant to others; "NO" if not; <NULL/> if unknown 1653cdf0e10cSrcweir </li> 1654cdf0e10cSrcweir </ol> 1655cdf0e10cSrcweir @param catalog 1656cdf0e10cSrcweir a catalog name; "" retrieves those without a catalog; <VOID/> means drop catalog name from the selection criteria 1657cdf0e10cSrcweir @param schemaPattern 1658cdf0e10cSrcweir a schema name pattern; "" retrieves those without a schema 1659cdf0e10cSrcweir @param tableNamePattern 1660cdf0e10cSrcweir a table name pattern 1661cdf0e10cSrcweir @returns 1662cdf0e10cSrcweir each row is a table privilege description 1663cdf0e10cSrcweir @throws SQLException 1664cdf0e10cSrcweir if a database access error occurs. 1665cdf0e10cSrcweir */ 1666cdf0e10cSrcweir XResultSet getTablePrivileges([in]any catalog, [in]string schemaPattern, 1667cdf0e10cSrcweir [in]string tableNamePattern) raises (SQLException); 1668cdf0e10cSrcweir //------------------------------------------------------------------------- 1669cdf0e10cSrcweir 1670cdf0e10cSrcweir /** gets a description of a table's optimal set of columns that 1671cdf0e10cSrcweir uniquely identifies a row. They are ordered by SCOPE. 1672cdf0e10cSrcweir 1673cdf0e10cSrcweir 1674cdf0e10cSrcweir <p>Each column description has the following columns: 1675cdf0e10cSrcweir </p> 1676cdf0e10cSrcweir <ol> 1677cdf0e10cSrcweir <li> 1678cdf0e10cSrcweir <b>SCOPE</b> short => actual scope of result 1679cdf0e10cSrcweir <ul> 1680cdf0e10cSrcweir <li> TEMPORARY - very temporary, while using row 1681cdf0e10cSrcweir </li> 1682cdf0e10cSrcweir <li> TRANSACTION - valid for remainder of current transaction 1683cdf0e10cSrcweir </li> 1684cdf0e10cSrcweir <li> SESSION - valid for remainder of current session 1685cdf0e10cSrcweir </li> 1686cdf0e10cSrcweir </ul> 1687cdf0e10cSrcweir </li> 1688cdf0e10cSrcweir <li> 1689cdf0e10cSrcweir <b>COLUMN_NAME</b> string => column name 1690cdf0e10cSrcweir </li> 1691cdf0e10cSrcweir <li> 1692cdf0e10cSrcweir <b>DATA_TYPE</b> short => SQL data type from java.sql.Types 1693cdf0e10cSrcweir </li> 1694cdf0e10cSrcweir <li> 1695cdf0e10cSrcweir <b>TYPE_NAME</b> string => Data source dependent type name, 1696cdf0e10cSrcweir for a UDT the type name is fully qualified 1697cdf0e10cSrcweir </li> 1698cdf0e10cSrcweir <li> 1699cdf0e10cSrcweir <b>COLUMN_SIZE</b> long => precision 1700cdf0e10cSrcweir </li> 1701cdf0e10cSrcweir <li> 1702cdf0e10cSrcweir <b>BUFFER_LENGTH</b> long => not used 1703cdf0e10cSrcweir </li> 1704cdf0e10cSrcweir <li> 1705cdf0e10cSrcweir <b>DECIMAL_DIGITS</b> short => scale 1706cdf0e10cSrcweir </li> 1707cdf0e10cSrcweir <li> 1708cdf0e10cSrcweir <b>PSEUDO_COLUMN</b> short => is this a pseudo column 1709cdf0e10cSrcweir like an Oracle ROWID 1710cdf0e10cSrcweir <ul> 1711cdf0e10cSrcweir <li> UNKNOWN - may or may not be pseudo column 1712cdf0e10cSrcweir </li> 1713cdf0e10cSrcweir <li> NOT_PSEUDO - is NOT a pseudo column 1714cdf0e10cSrcweir </li> 1715cdf0e10cSrcweir <li> PSEUDO - is a pseudo column 1716cdf0e10cSrcweir </li> 1717cdf0e10cSrcweir </ul> 1718cdf0e10cSrcweir </li> 1719cdf0e10cSrcweir </ol> 1720cdf0e10cSrcweir @param catalog 1721cdf0e10cSrcweir a catalog name; "" retrieves those without a catalog; <VOID/> means drop catalog name from the selection criteria 1722cdf0e10cSrcweir @param schema 1723cdf0e10cSrcweir a schema name; "" retrieves those without a schema 1724cdf0e10cSrcweir @param table 1725cdf0e10cSrcweir a table name 1726cdf0e10cSrcweir @param scope 1727cdf0e10cSrcweir the scope of interest; use same values as SCOPE 1728cdf0e10cSrcweir @param nullable 1729cdf0e10cSrcweir include columns that are nullable? 1730cdf0e10cSrcweir @returns 1731cdf0e10cSrcweir each row is a column description 1732cdf0e10cSrcweir @throws SQLException 1733cdf0e10cSrcweir if a database access error occurs. 1734cdf0e10cSrcweir */ 1735cdf0e10cSrcweir XResultSet getBestRowIdentifier([in]any catalog, [in]string schema, 1736cdf0e10cSrcweir [in]string table, [in]long scope, [in] boolean nullable) 1737cdf0e10cSrcweir raises (SQLException); 1738cdf0e10cSrcweir //------------------------------------------------------------------------- 1739cdf0e10cSrcweir 1740cdf0e10cSrcweir /** gets a description of a table's columns that are automatically 1741cdf0e10cSrcweir updated when any value in a row is updated. They are 1742cdf0e10cSrcweir unordered. 1743cdf0e10cSrcweir 1744cdf0e10cSrcweir 1745cdf0e10cSrcweir <p>Each column description has the following columns: 1746cdf0e10cSrcweir </p> 1747cdf0e10cSrcweir <ol> 1748cdf0e10cSrcweir <li> 1749cdf0e10cSrcweir <b>SCOPE</b> short => is not used 1750cdf0e10cSrcweir </li> 1751cdf0e10cSrcweir <li> 1752cdf0e10cSrcweir <b>COLUMN_NAME</b> string => column name 1753cdf0e10cSrcweir </li> 1754cdf0e10cSrcweir <li> 1755cdf0e10cSrcweir <b>DATA_TYPE</b> short => SQL data type from java.sql.Types 1756cdf0e10cSrcweir </li> 1757cdf0e10cSrcweir <li> 1758cdf0e10cSrcweir <b>TYPE_NAME</b> string => Data source dependent type name 1759cdf0e10cSrcweir </li> 1760cdf0e10cSrcweir <li> 1761cdf0e10cSrcweir <b>COLUMN_SIZE</b> long => precision 1762cdf0e10cSrcweir </li> 1763cdf0e10cSrcweir <li> 1764cdf0e10cSrcweir <b>BUFFER_LENGTH</b> long => length of column value in bytes 1765cdf0e10cSrcweir </li> 1766cdf0e10cSrcweir <li> 1767cdf0e10cSrcweir <b>DECIMAL_DIGITS</b> short => scale 1768cdf0e10cSrcweir </li> 1769cdf0e10cSrcweir <li> 1770cdf0e10cSrcweir <b>PSEUDO_COLUMN</b> short => is this a pseudo column 1771cdf0e10cSrcweir like an Oracle ROWID 1772cdf0e10cSrcweir <ul> 1773cdf0e10cSrcweir <li> UNKNOWN - may or may not be pseudo column 1774cdf0e10cSrcweir </li> 1775cdf0e10cSrcweir <li> NOT_PSEUDO - is NOT a pseudo column 1776cdf0e10cSrcweir </li> 1777cdf0e10cSrcweir <li> PSEUDO - is a pseudo column 1778cdf0e10cSrcweir </li> 1779cdf0e10cSrcweir </ul> 1780cdf0e10cSrcweir </li> 1781cdf0e10cSrcweir </ol> 1782cdf0e10cSrcweir @param catalog 1783cdf0e10cSrcweir a catalog name; "" retrieves those without a catalog; <VOID/> means drop catalog name from the selection criteria 1784cdf0e10cSrcweir @param schema 1785cdf0e10cSrcweir a schema name; "" retrieves those without a schema 1786cdf0e10cSrcweir @param table 1787cdf0e10cSrcweir a table name 1788cdf0e10cSrcweir @returns 1789cdf0e10cSrcweir each row is a column description 1790cdf0e10cSrcweir @throws SQLException 1791cdf0e10cSrcweir if a database access error occurs. 1792cdf0e10cSrcweir */ 1793cdf0e10cSrcweir XResultSet getVersionColumns([in]any catalog, [in]string schema, 1794cdf0e10cSrcweir [in]string table) raises (SQLException); 1795cdf0e10cSrcweir //------------------------------------------------------------------------- 1796cdf0e10cSrcweir 1797cdf0e10cSrcweir /** gets a description of a table's primary key columns. They 1798cdf0e10cSrcweir are ordered by COLUMN_NAME. 1799cdf0e10cSrcweir 1800cdf0e10cSrcweir 1801cdf0e10cSrcweir <p>Each primary key column description has the following columns: 1802cdf0e10cSrcweir </p> 1803cdf0e10cSrcweir <ol> 1804cdf0e10cSrcweir <li> 1805cdf0e10cSrcweir <b>TABLE_CAT</b> string => table catalog (may be <NULL/>) 1806cdf0e10cSrcweir </li> 1807cdf0e10cSrcweir <li> 1808cdf0e10cSrcweir <b>TABLE_SCHEM</b> string => table schema (may be <NULL/>) 1809cdf0e10cSrcweir </li> 1810cdf0e10cSrcweir <li> 1811cdf0e10cSrcweir <b>TABLE_NAME</b> string => table name 1812cdf0e10cSrcweir </li> 1813cdf0e10cSrcweir <li> 1814cdf0e10cSrcweir <b>COLUMN_NAME</b> string => column name 1815cdf0e10cSrcweir </li> 1816cdf0e10cSrcweir <li> 1817cdf0e10cSrcweir <b>KEY_SEQ</b> short => sequence number within primary key 1818cdf0e10cSrcweir </li> 1819cdf0e10cSrcweir <li> 1820cdf0e10cSrcweir <b>PK_NAME</b> string => primary key name (may be <NULL/>) 1821cdf0e10cSrcweir </li> 1822cdf0e10cSrcweir </ol> 1823cdf0e10cSrcweir @param catalog 1824cdf0e10cSrcweir a catalog name; "" retrieves those without a catalog; <VOID/> means drop catalog name from the selection criteria 1825cdf0e10cSrcweir @param schema 1826cdf0e10cSrcweir a schema name; "" retrieves those without a schema 1827cdf0e10cSrcweir @param table 1828cdf0e10cSrcweir a table name 1829cdf0e10cSrcweir @returns 1830cdf0e10cSrcweir each row is a primary key column description 1831cdf0e10cSrcweir @throws SQLException 1832cdf0e10cSrcweir if a database access error occurs. 1833cdf0e10cSrcweir */ 1834cdf0e10cSrcweir XResultSet getPrimaryKeys([in]any catalog, [in]string schema, 1835cdf0e10cSrcweir [in]string table) raises (SQLException); 1836cdf0e10cSrcweir //------------------------------------------------------------------------- 1837cdf0e10cSrcweir 1838cdf0e10cSrcweir /** gets a description of the primary key columns that are 1839cdf0e10cSrcweir referenced by a table's foreign key columns (the primary keys 1840cdf0e10cSrcweir imported by a table). They are ordered by PKTABLE_CAT, 1841cdf0e10cSrcweir PKTABLE_SCHEM, PKTABLE_NAME, and KEY_SEQ. 1842cdf0e10cSrcweir 1843cdf0e10cSrcweir 1844cdf0e10cSrcweir <p>Each primary key column description has the following columns: 1845cdf0e10cSrcweir </p> 1846cdf0e10cSrcweir <ol> 1847cdf0e10cSrcweir <li> 1848cdf0e10cSrcweir <b>PKTABLE_CAT</b> string => primary key table catalog 1849cdf0e10cSrcweir being imported (may be <NULL/>) 1850cdf0e10cSrcweir </li> 1851cdf0e10cSrcweir <li> 1852cdf0e10cSrcweir <b>PKTABLE_SCHEM</b> string => primary key table schema 1853cdf0e10cSrcweir being imported (may be <NULL/>) 1854cdf0e10cSrcweir </li> 1855cdf0e10cSrcweir <li> 1856cdf0e10cSrcweir <b>PKTABLE_NAME</b> string => primary key table name 1857cdf0e10cSrcweir being imported 1858cdf0e10cSrcweir </li> 1859cdf0e10cSrcweir <li> 1860cdf0e10cSrcweir <b>PKCOLUMN_NAME</b> string => primary key column name 1861cdf0e10cSrcweir being imported 1862cdf0e10cSrcweir </li> 1863cdf0e10cSrcweir <li> 1864cdf0e10cSrcweir <b>FKTABLE_CAT</b> string => foreign key table catalog (may be <NULL/>) 1865cdf0e10cSrcweir </li> 1866cdf0e10cSrcweir <li> 1867cdf0e10cSrcweir <b>FKTABLE_SCHEM</b> string => foreign key table schema (may be <NULL/>) 1868cdf0e10cSrcweir </li> 1869cdf0e10cSrcweir <li> 1870cdf0e10cSrcweir <b>FKTABLE_NAME</b> string => foreign key table name 1871cdf0e10cSrcweir </li> 1872cdf0e10cSrcweir <li> 1873cdf0e10cSrcweir <b>FKCOLUMN_NAME</b> string => foreign key column name 1874cdf0e10cSrcweir </li> 1875cdf0e10cSrcweir <li> 1876cdf0e10cSrcweir <b>KEY_SEQ</b> short => sequence number within foreign key 1877cdf0e10cSrcweir </li> 1878cdf0e10cSrcweir <li> 1879cdf0e10cSrcweir <b>UPDATE_RULE</b> short => What happens to 1880cdf0e10cSrcweir foreign key when primary is updated: 1881cdf0e10cSrcweir <ul> 1882cdf0e10cSrcweir <li> importedNoAction - do not allow update of primary 1883cdf0e10cSrcweir key if it has been imported 1884cdf0e10cSrcweir </li> 1885cdf0e10cSrcweir <li> importedKeyCascade - change imported key to agree 1886cdf0e10cSrcweir with primary key update 1887cdf0e10cSrcweir </li> 1888cdf0e10cSrcweir <li> importedKeySetNull - change imported key to NULL if 1889cdf0e10cSrcweir its primary key has been updated 1890cdf0e10cSrcweir </li> 1891cdf0e10cSrcweir <li> importedKeySetDefault - change imported key to default values 1892cdf0e10cSrcweir if its primary key has been updated 1893cdf0e10cSrcweir </li> 1894cdf0e10cSrcweir <li> importedKeyRestrict - same as importedKeyNoAction 1895cdf0e10cSrcweir (for ODBC 2.x compatibility) 1896cdf0e10cSrcweir </li> 1897cdf0e10cSrcweir </ul> 1898cdf0e10cSrcweir </li> 1899cdf0e10cSrcweir <li> 1900cdf0e10cSrcweir <b>DELETE_RULE</b> short => What happens to 1901cdf0e10cSrcweir the foreign key when primary is deleted. 1902cdf0e10cSrcweir <ul> 1903cdf0e10cSrcweir <li> importedKeyNoAction - do not allow delete of primary 1904cdf0e10cSrcweir key if it has been imported 1905cdf0e10cSrcweir </li> 1906cdf0e10cSrcweir <li> importedKeyCascade - delete rows that import a deleted key 1907cdf0e10cSrcweir </li> 1908cdf0e10cSrcweir <li> importedKeySetNull - change imported key to NULL if 1909cdf0e10cSrcweir its primary key has been deleted 1910cdf0e10cSrcweir </li> 1911cdf0e10cSrcweir <li> importedKeyRestrict - same as importedKeyNoAction 1912cdf0e10cSrcweir (for ODBC 2.x compatibility) 1913cdf0e10cSrcweir </li> 1914cdf0e10cSrcweir <li> importedKeySetDefault - change imported key to default if 1915cdf0e10cSrcweir its primary key has been deleted 1916cdf0e10cSrcweir </li> 1917cdf0e10cSrcweir </ul> 1918cdf0e10cSrcweir </li> 1919cdf0e10cSrcweir <li> 1920cdf0e10cSrcweir <b>FK_NAME</b> string => foreign key name (may be <NULL/>) 1921cdf0e10cSrcweir </li> 1922cdf0e10cSrcweir <li> 1923cdf0e10cSrcweir <b>PK_NAME</b> string => primary key name (may be <NULL/>) 1924cdf0e10cSrcweir </li> 1925cdf0e10cSrcweir <li> 1926cdf0e10cSrcweir <b>DEFERRABILITY</b> short => can the evaluation of foreign key 1927cdf0e10cSrcweir constraints be deferred until commit 1928cdf0e10cSrcweir <ul> 1929cdf0e10cSrcweir <li> importedKeyInitiallyDeferred - see SQL92 for definition 1930cdf0e10cSrcweir </li> 1931cdf0e10cSrcweir <li> importedKeyInitiallyImmediate - see SQL92 for definition 1932cdf0e10cSrcweir </li> 1933cdf0e10cSrcweir <li> importedKeyNotDeferrable - see SQL92 for definition 1934cdf0e10cSrcweir </li> 1935cdf0e10cSrcweir </ul> 1936cdf0e10cSrcweir </li> 1937cdf0e10cSrcweir </ol> 1938cdf0e10cSrcweir @param catalog 1939cdf0e10cSrcweir a catalog name; "" retrieves those without a catalog; <VOID/> means drop catalog name from the selection criteria 1940cdf0e10cSrcweir @param schema 1941cdf0e10cSrcweir a schema name; "" retrieves those without a schema 1942cdf0e10cSrcweir @param table 1943cdf0e10cSrcweir a table name 1944cdf0e10cSrcweir @returns 1945cdf0e10cSrcweir each row is a primary key column description 1946cdf0e10cSrcweir @throws SQLException 1947cdf0e10cSrcweir if a database access error occurs. 1948cdf0e10cSrcweir */ 1949cdf0e10cSrcweir XResultSet getImportedKeys([in]any catalog, [in]string schema, 1950cdf0e10cSrcweir [in]string table) raises (SQLException); 1951cdf0e10cSrcweir //------------------------------------------------------------------------- 1952cdf0e10cSrcweir 1953cdf0e10cSrcweir /** gets a description of the foreign key columns that reference a 1954cdf0e10cSrcweir table's primary key columns (the foreign keys exported by a 1955cdf0e10cSrcweir table). They are ordered by FKTABLE_CAT, FKTABLE_SCHEM, 1956cdf0e10cSrcweir FKTABLE_NAME, and KEY_SEQ. 1957cdf0e10cSrcweir 1958cdf0e10cSrcweir 1959cdf0e10cSrcweir <p>Each foreign key column description has the following columns: 1960cdf0e10cSrcweir </p> 1961cdf0e10cSrcweir <ol> 1962cdf0e10cSrcweir <li> 1963cdf0e10cSrcweir <b>PKTABLE_CAT</b> string => primary key table catalog (may be <NULL/>) 1964cdf0e10cSrcweir </li> 1965cdf0e10cSrcweir <li> 1966cdf0e10cSrcweir <b>PKTABLE_SCHEM</b> string => primary key table schema (may be <NULL/>) 1967cdf0e10cSrcweir </li> 1968cdf0e10cSrcweir <li> 1969cdf0e10cSrcweir <b>PKTABLE_NAME</b> string => primary key table name 1970cdf0e10cSrcweir </li> 1971cdf0e10cSrcweir <li> 1972cdf0e10cSrcweir <b>PKCOLUMN_NAME</b> string => primary key column name 1973cdf0e10cSrcweir </li> 1974cdf0e10cSrcweir <li> 1975cdf0e10cSrcweir <b>FKTABLE_CAT</b> string => foreign key table catalog (may be <NULL/>) 1976cdf0e10cSrcweir being exported (may be <NULL/>) 1977cdf0e10cSrcweir </li> 1978cdf0e10cSrcweir <li> 1979cdf0e10cSrcweir <b>FKTABLE_SCHEM</b> string => foreign key table schema (may be <NULL/>) 1980cdf0e10cSrcweir being exported (may be <NULL/>) 1981cdf0e10cSrcweir </li> 1982cdf0e10cSrcweir <li> 1983cdf0e10cSrcweir <b>FKTABLE_NAME</b> string => foreign key table name 1984cdf0e10cSrcweir being exported 1985cdf0e10cSrcweir </li> 1986cdf0e10cSrcweir <li> 1987cdf0e10cSrcweir <b>FKCOLUMN_NAME</b> string => foreign key column name 1988cdf0e10cSrcweir being exported 1989cdf0e10cSrcweir </li> 1990cdf0e10cSrcweir <li> 1991cdf0e10cSrcweir <b>KEY_SEQ</b> short => sequence number within foreign key 1992cdf0e10cSrcweir </li> 1993cdf0e10cSrcweir <li> 1994cdf0e10cSrcweir <b>UPDATE_RULE</b> short => What happens to 1995cdf0e10cSrcweir foreign key when primary is updated: 1996cdf0e10cSrcweir <ul> 1997cdf0e10cSrcweir <li> NO_ACTION - do not allow update of primary 1998cdf0e10cSrcweir key if it has been imported 1999cdf0e10cSrcweir </li> 2000cdf0e10cSrcweir <li> CASCADE - change imported key to agree 2001cdf0e10cSrcweir with primary key update 2002cdf0e10cSrcweir </li> 2003cdf0e10cSrcweir <li> SET_NULL - change imported key to NULL if 2004cdf0e10cSrcweir its primary key has been updated 2005cdf0e10cSrcweir </li> 2006cdf0e10cSrcweir <li> SET_DEFAULT - change imported key to default values 2007cdf0e10cSrcweir if its primary key has been updated 2008cdf0e10cSrcweir </li> 2009cdf0e10cSrcweir <li> RESTRICT - same as importedKeyNoAction 2010cdf0e10cSrcweir (for ODBC 2.x compatibility) 2011cdf0e10cSrcweir </li> 2012cdf0e10cSrcweir </ul> 2013cdf0e10cSrcweir </li> 2014cdf0e10cSrcweir <li> 2015cdf0e10cSrcweir <b>DELETE_RULE</b> short => What happens to 2016cdf0e10cSrcweir the foreign key when primary is deleted. 2017cdf0e10cSrcweir <ul> 2018cdf0e10cSrcweir <li> NO_ACTION - do not allow delete of primary 2019cdf0e10cSrcweir key if it has been imported 2020cdf0e10cSrcweir </li> 2021cdf0e10cSrcweir <li> CASCADE - delete rows that import a deleted key 2022cdf0e10cSrcweir </li> 2023cdf0e10cSrcweir <li> SET_NULL - change imported key to NULL if 2024cdf0e10cSrcweir its primary key has been deleted 2025cdf0e10cSrcweir </li> 2026cdf0e10cSrcweir <li> RESTRICT - same as importedKeyNoAction 2027cdf0e10cSrcweir (for ODBC 2.x compatibility) 2028cdf0e10cSrcweir </li> 2029cdf0e10cSrcweir <li> SET_DEFAULT - change imported key to default if 2030cdf0e10cSrcweir its primary key has been deleted 2031cdf0e10cSrcweir </li> 2032cdf0e10cSrcweir </ul> 2033cdf0e10cSrcweir </li> 2034cdf0e10cSrcweir <li> 2035cdf0e10cSrcweir <b>FK_NAME</b> string => foreign key name (may be <NULL/>) 2036cdf0e10cSrcweir </li> 2037cdf0e10cSrcweir <li> 2038cdf0e10cSrcweir <b>PK_NAME</b> string => primary key name (may be <NULL/>) 2039cdf0e10cSrcweir </li> 2040cdf0e10cSrcweir <li> 2041cdf0e10cSrcweir <b>DEFERRABILITY</b> short => can the evaluation of foreign key 2042cdf0e10cSrcweir constraints be deferred until commit 2043cdf0e10cSrcweir <ul> 2044cdf0e10cSrcweir <li> INITIALLY_DEFERRED - see SQL92 for definition 2045cdf0e10cSrcweir </li> 2046cdf0e10cSrcweir <li> INITIALLY_IMMEDIATE - see SQL92 for definition 2047cdf0e10cSrcweir </li> 2048cdf0e10cSrcweir <li> NONE - see SQL92 for definition 2049cdf0e10cSrcweir </li> 2050cdf0e10cSrcweir </ul> 2051cdf0e10cSrcweir </li> 2052cdf0e10cSrcweir </ol> 2053cdf0e10cSrcweir @param catalog 2054cdf0e10cSrcweir a catalog name; "" retrieves those without a catalog; <VOID/> means drop catalog name from the selection criteria 2055cdf0e10cSrcweir @param schema 2056cdf0e10cSrcweir a schema name; "" retrieves those without a schema 2057cdf0e10cSrcweir @param table 2058cdf0e10cSrcweir a table name 2059cdf0e10cSrcweir @returns 2060cdf0e10cSrcweir each row is a foreign key column description 2061cdf0e10cSrcweir @throws SQLException 2062cdf0e10cSrcweir if a database access error occurs. 2063cdf0e10cSrcweir */ 2064cdf0e10cSrcweir XResultSet getExportedKeys([in]any catalog, [in]string schema, 2065cdf0e10cSrcweir [in]string table) raises (SQLException); 2066cdf0e10cSrcweir //------------------------------------------------------------------------- 2067cdf0e10cSrcweir 2068cdf0e10cSrcweir /** gets a description of the foreign key columns in the foreign key 2069cdf0e10cSrcweir table that reference the primary key columns of the primary key 2070cdf0e10cSrcweir table (describe how one table imports another's key.) This 2071cdf0e10cSrcweir should normally return a single foreign key/primary key pair 2072cdf0e10cSrcweir (most tables only import a foreign key from a table once.). They 2073cdf0e10cSrcweir are ordered by FKTABLE_CAT, FKTABLE_SCHEM, FKTABLE_NAME, and 2074cdf0e10cSrcweir KEY_SEQ. 2075cdf0e10cSrcweir 2076cdf0e10cSrcweir 2077cdf0e10cSrcweir <p>Each foreign key column description has the following columns: 2078cdf0e10cSrcweir </p> 2079cdf0e10cSrcweir <ol> 2080cdf0e10cSrcweir <li> 2081cdf0e10cSrcweir <b>PKTABLE_CAT</b> string => primary key table catalog (may be <NULL/>) 2082cdf0e10cSrcweir </li> 2083cdf0e10cSrcweir <li> 2084cdf0e10cSrcweir <b>PKTABLE_SCHEM</b> string => primary key table schema (may be <NULL/>) 2085cdf0e10cSrcweir </li> 2086cdf0e10cSrcweir <li> 2087cdf0e10cSrcweir <b>PKTABLE_NAME</b> string => primary key table name 2088cdf0e10cSrcweir </li> 2089cdf0e10cSrcweir <li> 2090cdf0e10cSrcweir <b>PKCOLUMN_NAME</b> string => primary key column name 2091cdf0e10cSrcweir </li> 2092cdf0e10cSrcweir <li> 2093cdf0e10cSrcweir <b>FKTABLE_CAT</b> string => foreign key table catalog (may be <NULL/>) 2094cdf0e10cSrcweir being exported (may be <NULL/>) 2095cdf0e10cSrcweir </li> 2096cdf0e10cSrcweir <li> 2097cdf0e10cSrcweir <b>FKTABLE_SCHEM</b> string => foreign key table schema (may be <NULL/>) 2098cdf0e10cSrcweir being exported (may be <NULL/>) 2099cdf0e10cSrcweir </li> 2100cdf0e10cSrcweir <li> 2101cdf0e10cSrcweir <b>FKTABLE_NAME</b> string => foreign key table name 2102cdf0e10cSrcweir being exported 2103cdf0e10cSrcweir </li> 2104cdf0e10cSrcweir <li> 2105cdf0e10cSrcweir <b>FKCOLUMN_NAME</b> string => foreign key column name 2106cdf0e10cSrcweir being exported 2107cdf0e10cSrcweir </li> 2108cdf0e10cSrcweir <li> 2109cdf0e10cSrcweir <b>KEY_SEQ</b> short => sequence number within foreign key 2110cdf0e10cSrcweir </li> 2111cdf0e10cSrcweir <li> 2112cdf0e10cSrcweir <b>UPDATE_RULE</b> short => What happens to 2113cdf0e10cSrcweir foreign key when primary is updated: 2114cdf0e10cSrcweir <ul> 2115cdf0e10cSrcweir <li> NO_ACTION - do not allow update of primary 2116cdf0e10cSrcweir key if it has been imported 2117cdf0e10cSrcweir </li> 2118cdf0e10cSrcweir <li> CASCADE - change imported key to agree 2119cdf0e10cSrcweir with primary key update 2120cdf0e10cSrcweir </li> 2121cdf0e10cSrcweir <li> SET_NULL - change imported key to NULL if 2122cdf0e10cSrcweir its primary key has been updated 2123cdf0e10cSrcweir </li> 2124cdf0e10cSrcweir <li> SET_DEFAULT - change imported key to default values 2125cdf0e10cSrcweir if its primary key has been updated 2126cdf0e10cSrcweir </li> 2127cdf0e10cSrcweir <li> RESTRICT - same as importedKeyNoAction 2128cdf0e10cSrcweir (for ODBC 2.x compatibility) 2129cdf0e10cSrcweir </li> 2130cdf0e10cSrcweir </ul> 2131cdf0e10cSrcweir </li> 2132cdf0e10cSrcweir <li> 2133cdf0e10cSrcweir <b>DELETE_RULE</b> short => What happens to 2134cdf0e10cSrcweir the foreign key when primary is deleted. 2135cdf0e10cSrcweir <ul> 2136cdf0e10cSrcweir <li> NO_ACTION - do not allow delete of primary 2137cdf0e10cSrcweir key if it has been imported 2138cdf0e10cSrcweir </li> 2139cdf0e10cSrcweir <li> CASCADE - delete rows that import a deleted key 2140cdf0e10cSrcweir </li> 2141cdf0e10cSrcweir <li> SET_NULL - change imported key to NULL if 2142cdf0e10cSrcweir its primary key has been deleted 2143cdf0e10cSrcweir </li> 2144cdf0e10cSrcweir <li> RESTRICT - same as importedKeyNoAction 2145cdf0e10cSrcweir (for ODBC 2.x compatibility) 2146cdf0e10cSrcweir </li> 2147cdf0e10cSrcweir <li> SET_DEFAULT - change imported key to default if 2148cdf0e10cSrcweir its primary key has been deleted 2149cdf0e10cSrcweir </li> 2150cdf0e10cSrcweir </ul> 2151cdf0e10cSrcweir </li> 2152cdf0e10cSrcweir <li> 2153cdf0e10cSrcweir <b>FK_NAME</b> string => foreign key name (may be <NULL/>) 2154cdf0e10cSrcweir </li> 2155cdf0e10cSrcweir <li> 2156cdf0e10cSrcweir <b>PK_NAME</b> string => primary key name (may be <NULL/>) 2157cdf0e10cSrcweir </li> 2158cdf0e10cSrcweir <li> 2159cdf0e10cSrcweir <b>DEFERRABILITY</b> short => can the evaluation of foreign key 2160cdf0e10cSrcweir constraints be deferred until commit 2161cdf0e10cSrcweir <ul> 2162cdf0e10cSrcweir <li> INITIALLY_DEFERRED - see SQL92 for definition 2163cdf0e10cSrcweir </li> 2164cdf0e10cSrcweir <li> INITIALLY_IMMEDIATE - see SQL92 for definition 2165cdf0e10cSrcweir </li> 2166cdf0e10cSrcweir <li> NONE - see SQL92 for definition 2167cdf0e10cSrcweir </li> 2168cdf0e10cSrcweir </ul> 2169cdf0e10cSrcweir </li> 2170cdf0e10cSrcweir </ol> 2171cdf0e10cSrcweir @param primaryCatalog 2172cdf0e10cSrcweir a catalog name; "" retrieves those without a catalog; <VOID/> means drop catalog name from the selection criteria 2173cdf0e10cSrcweir @param primarySchema 2174cdf0e10cSrcweir a schema name; "" retrieves those without a schema 2175cdf0e10cSrcweir @param primaryTable 2176cdf0e10cSrcweir the table name that exports the key 2177cdf0e10cSrcweir @param foreignCatalog 2178cdf0e10cSrcweir a catalog name; "" retrieves those without a catalog; <VOID/> means drop catalog name from the selection criteria 2179cdf0e10cSrcweir @param foreignSchema 2180cdf0e10cSrcweir a schema name; "" retrieves those without a schema 2181cdf0e10cSrcweir @param foreignTable 2182cdf0e10cSrcweir the table name that imports the key 2183cdf0e10cSrcweir @returns 2184cdf0e10cSrcweir each row is a foreign key column description 2185cdf0e10cSrcweir @throws SQLException 2186cdf0e10cSrcweir if a database access error occurs. 2187cdf0e10cSrcweir */ 2188cdf0e10cSrcweir XResultSet getCrossReference( 2189cdf0e10cSrcweir [in]any primaryCatalog, [in]string primarySchema, 2190cdf0e10cSrcweir [in]string primaryTable, 2191cdf0e10cSrcweir [in]any foreignCatalog, [in]string foreignSchema, 2192cdf0e10cSrcweir [in]string foreignTable) raises (SQLException); 2193cdf0e10cSrcweir //------------------------------------------------------------------------- 2194cdf0e10cSrcweir 2195cdf0e10cSrcweir /** gets a description of all the standard SQL types supported by 2196cdf0e10cSrcweir this database. They are ordered by DATA_TYPE and then by how 2197cdf0e10cSrcweir closely the data type maps to the corresponding SDBC SQL type. 2198cdf0e10cSrcweir 2199cdf0e10cSrcweir 2200cdf0e10cSrcweir 2201cdf0e10cSrcweir <p>Each type description has the following columns: 2202cdf0e10cSrcweir </p> 2203cdf0e10cSrcweir <ol> 2204cdf0e10cSrcweir <li> 2205cdf0e10cSrcweir <b>TYPE_NAME</b> string => Type name 2206cdf0e10cSrcweir </li> 2207cdf0e10cSrcweir <li> 2208cdf0e10cSrcweir <b>DATA_TYPE</b> short => SQL data type from java.sql.Types 2209cdf0e10cSrcweir </li> 2210cdf0e10cSrcweir <li> 2211cdf0e10cSrcweir <b>PRECISION</b> long => maximum precision 2212cdf0e10cSrcweir </li> 2213cdf0e10cSrcweir <li> 2214cdf0e10cSrcweir <b>LITERAL_PREFIX</b> string => prefix used to quote a literal 2215cdf0e10cSrcweir (may be <NULL/>) 2216cdf0e10cSrcweir </li> 2217cdf0e10cSrcweir <li> 2218cdf0e10cSrcweir <b>LITERAL_SUFFIX</b> string => suffix used to quote a literal 2219cdf0e10cSrcweir (may be <NULL/>) 2220cdf0e10cSrcweir </li> 2221cdf0e10cSrcweir <li> 2222cdf0e10cSrcweir <b>CREATE_PARAMS</b> string => parameters used in creating 2223cdf0e10cSrcweir the type (may be <NULL/>) 2224cdf0e10cSrcweir </li> 2225cdf0e10cSrcweir <li> 2226cdf0e10cSrcweir <b>NULLABLE</b> short => can you use NULL for this type? 2227cdf0e10cSrcweir <ul> 2228cdf0e10cSrcweir <li> NO_NULLS - does not allow NULL values 2229cdf0e10cSrcweir </li> 2230cdf0e10cSrcweir <li> NULLABLE - allows NULL values 2231cdf0e10cSrcweir </li> 2232cdf0e10cSrcweir <li> NULLABLE_UNKNOWN - nullability unknown 2233cdf0e10cSrcweir </li> 2234cdf0e10cSrcweir </ul> 2235cdf0e10cSrcweir </li> 2236cdf0e10cSrcweir <li> 2237cdf0e10cSrcweir <b>CASE_SENSITIVE</b> boolean=> is it case sensitive? 2238cdf0e10cSrcweir </li> 2239cdf0e10cSrcweir <li> 2240cdf0e10cSrcweir <b>SEARCHABLE</b> short => can you use "WHERE" based on this type: 2241cdf0e10cSrcweir <ul> 2242cdf0e10cSrcweir <li> NONE - No support 2243cdf0e10cSrcweir </li> 2244cdf0e10cSrcweir <li> CHAR - Only supported with WHERE .. LIKE 2245cdf0e10cSrcweir </li> 2246cdf0e10cSrcweir <li> BASIC - Supported except for WHERE .. LIKE 2247cdf0e10cSrcweir </li> 2248cdf0e10cSrcweir <li> FULL - Supported for all WHERE .. 2249cdf0e10cSrcweir </li> 2250cdf0e10cSrcweir </ul> 2251cdf0e10cSrcweir </li> 2252cdf0e10cSrcweir <li> 2253cdf0e10cSrcweir <b>UNSIGNED_ATTRIBUTE</b> boolean => is it unsigned? 2254cdf0e10cSrcweir </li> 2255cdf0e10cSrcweir <li> 2256cdf0e10cSrcweir <b>FIXED_PREC_SCALE</b> boolean => can it be a money value? 2257cdf0e10cSrcweir </li> 2258cdf0e10cSrcweir <li> 2259cdf0e10cSrcweir <b>AUTO_INCREMENT</b> boolean => can it be used for an 2260cdf0e10cSrcweir auto-increment value? 2261cdf0e10cSrcweir </li> 2262cdf0e10cSrcweir <li> 2263cdf0e10cSrcweir <b>LOCAL_TYPE_NAME</b> string => localized version of type name 2264cdf0e10cSrcweir (may be <NULL/>) 2265cdf0e10cSrcweir </li> 2266cdf0e10cSrcweir <li> 2267cdf0e10cSrcweir <b>MINIMUM_SCALE</b> short => minimum scale supported 2268cdf0e10cSrcweir </li> 2269cdf0e10cSrcweir <li> 2270cdf0e10cSrcweir <b>MAXIMUM_SCALE</b> short => maximum scale supported 2271cdf0e10cSrcweir </li> 2272cdf0e10cSrcweir <li> 2273cdf0e10cSrcweir <b>SQL_DATA_TYPE</b> long => unused 2274cdf0e10cSrcweir </li> 2275cdf0e10cSrcweir <li> 2276cdf0e10cSrcweir <b>SQL_DATETIME_SUB</b> long => unused 2277cdf0e10cSrcweir </li> 2278cdf0e10cSrcweir <li> 2279cdf0e10cSrcweir <b>NUM_PREC_RADIX</b> long => usually 2 or 10 2280cdf0e10cSrcweir </li> 2281cdf0e10cSrcweir </ol> 2282cdf0e10cSrcweir @returns 2283cdf0e10cSrcweir each row is a SQL type description 2284cdf0e10cSrcweir @throws SQLException 2285cdf0e10cSrcweir if a database access error occurs. 2286cdf0e10cSrcweir */ 2287cdf0e10cSrcweir XResultSet getTypeInfo() raises (SQLException); 2288cdf0e10cSrcweir //------------------------------------------------------------------------- 2289cdf0e10cSrcweir 2290cdf0e10cSrcweir /** gets a description of a table's indices and statistics. They are 2291cdf0e10cSrcweir ordered by NON_UNIQUE, TYPE, INDEX_NAME, and ORDINAL_POSITION. 2292cdf0e10cSrcweir 2293cdf0e10cSrcweir 2294cdf0e10cSrcweir <p>Each index column description has the following columns: 2295cdf0e10cSrcweir </p> 2296cdf0e10cSrcweir <ol> 2297cdf0e10cSrcweir <li> 2298cdf0e10cSrcweir <b>TABLE_CAT</b> string => table catalog (may be <NULL/>) 2299cdf0e10cSrcweir </li> 2300cdf0e10cSrcweir <li> 2301cdf0e10cSrcweir <b>TABLE_SCHEM</b> string => table schema (may be <NULL/>) 2302cdf0e10cSrcweir </li> 2303cdf0e10cSrcweir <li> 2304cdf0e10cSrcweir <b>TABLE_NAME</b> string => table name 2305cdf0e10cSrcweir </li> 2306cdf0e10cSrcweir <li> 2307cdf0e10cSrcweir <b>NON_UNIQUE</b> boolean => Can index values be non-unique? 2308cdf0e10cSrcweir <FALSE/> when TYPE is tableIndexStatistic 2309cdf0e10cSrcweir </li> 2310cdf0e10cSrcweir <li> 2311cdf0e10cSrcweir <b>INDEX_QUALIFIER</b> string => index catalog (may be <NULL/>); 2312cdf0e10cSrcweir <NULL/> when TYPE is tableIndexStatistic 2313cdf0e10cSrcweir </li> 2314cdf0e10cSrcweir <li> 2315cdf0e10cSrcweir <b>INDEX_NAME</b> string => index name; <NULL/> when TYPE is 2316cdf0e10cSrcweir tableIndexStatistic 2317cdf0e10cSrcweir </li> 2318cdf0e10cSrcweir <li> 2319cdf0e10cSrcweir <b>TYPE</b> short => index type: 2320cdf0e10cSrcweir <ul> 2321cdf0e10cSrcweir <li> 0 - this identifies table statistics that are 2322cdf0e10cSrcweir returned in conjuction with a table's index descriptions 2323cdf0e10cSrcweir </li> 2324cdf0e10cSrcweir <li> CLUSTERED - this is a clustered index 2325cdf0e10cSrcweir </li> 2326cdf0e10cSrcweir <li> HASHED - this is a hashed index 2327cdf0e10cSrcweir </li> 2328cdf0e10cSrcweir <li> OTHER - this is some other style of index 2329cdf0e10cSrcweir </li> 2330cdf0e10cSrcweir </ul> 2331cdf0e10cSrcweir </li> 2332cdf0e10cSrcweir <li> 2333cdf0e10cSrcweir <b>ORDINAL_POSITION</b> short => column sequence number 2334cdf0e10cSrcweir within index; zero when TYPE is tableIndexStatistic 2335cdf0e10cSrcweir </li> 2336cdf0e10cSrcweir <li> 2337cdf0e10cSrcweir <b>COLUMN_NAME</b> string => column name; <NULL/> when TYPE is 2338cdf0e10cSrcweir tableIndexStatistic 2339cdf0e10cSrcweir </li> 2340cdf0e10cSrcweir <li> 2341cdf0e10cSrcweir <b>ASC_OR_DESC</b> string => column sort sequence, "A" => ascending, 2342cdf0e10cSrcweir "D" => descending, may be <NULL/> if sort sequence is not supported; 2343cdf0e10cSrcweir <NULL/> when TYPE is tableIndexStatistic 2344cdf0e10cSrcweir </li> 2345cdf0e10cSrcweir <li> 2346cdf0e10cSrcweir <b>CARDINALITY</b> long => When TYPE is tableIndexStatistic, then 2347cdf0e10cSrcweir this is the number of rows in the table; otherwise, it is the 2348cdf0e10cSrcweir number of unique values in the index. 2349cdf0e10cSrcweir </li> 2350cdf0e10cSrcweir <li> 2351cdf0e10cSrcweir <b>PAGES</b> long => When TYPE is tableIndexStatisic then 2352cdf0e10cSrcweir this is the number of pages used for the table, otherwise it 2353cdf0e10cSrcweir is the number of pages used for the current index. 2354cdf0e10cSrcweir </li> 2355cdf0e10cSrcweir <li> 2356cdf0e10cSrcweir <b>FILTER_CONDITION</b> string => Filter condition, if any. 2357cdf0e10cSrcweir (may be <NULL/>) 2358cdf0e10cSrcweir </li> 2359cdf0e10cSrcweir </ol> 2360cdf0e10cSrcweir @param catalog 2361cdf0e10cSrcweir a catalog name; "" retrieves those without a catalog; <VOID/> means drop catalog name from the selection criteria 2362cdf0e10cSrcweir @param schema 2363cdf0e10cSrcweir a schema name; "" retrieves those without a schema 2364cdf0e10cSrcweir @param table 2365cdf0e10cSrcweir the table name that exports the key 2366cdf0e10cSrcweir @param unique 2367cdf0e10cSrcweir when <TRUE/>, return only indices for unique values; when <FALSE/>, return indices regardless of whether unique or not 2368cdf0e10cSrcweir @param approximate 2369cdf0e10cSrcweir when <TRUE/>, result is allowed to reflect approximate or out of data values; when <FALSE/>, results are requested to be accurate 2370cdf0e10cSrcweir @returns 2371cdf0e10cSrcweir each row is an index column description 2372cdf0e10cSrcweir @throws SQLException 2373cdf0e10cSrcweir if a database access error occurs. 2374cdf0e10cSrcweir */ 2375cdf0e10cSrcweir XResultSet getIndexInfo([in]any catalog, [in]string schema, [in]string table, 2376cdf0e10cSrcweir [in]boolean unique, [in]boolean approximate) 2377cdf0e10cSrcweir raises (SQLException); 2378cdf0e10cSrcweir //------------------------------------------------------------------------- 2379cdf0e10cSrcweir 2380cdf0e10cSrcweir /** Does the database support the given result set type? 2381cdf0e10cSrcweir @param setType 2382cdf0e10cSrcweir defined in 2383cdf0e10cSrcweir <type scop="com::sun::star::sdbc">ResultSetType</type> 2384cdf0e10cSrcweir @returns 2385cdf0e10cSrcweir <TRUE/> if so 2386cdf0e10cSrcweir @throws SQLException 2387cdf0e10cSrcweir if a database access error occurs. 2388cdf0e10cSrcweir */ 2389cdf0e10cSrcweir boolean supportsResultSetType([in]long setType) raises (SQLException); 2390cdf0e10cSrcweir //------------------------------------------------------------------------- 2391cdf0e10cSrcweir 2392cdf0e10cSrcweir /** Does the database support the concurrency type in combination 2393cdf0e10cSrcweir with the given result set type? 2394cdf0e10cSrcweir @param setType 2395cdf0e10cSrcweir defined in 2396cdf0e10cSrcweir <type scop="com::sun::star::sdbc">ResultSetType</type> 2397cdf0e10cSrcweir @param concurrency 2398cdf0e10cSrcweir defined in 2399cdf0e10cSrcweir <type scop="com::sun::star::sdbc">ResultSetConcurrency</type> 2400cdf0e10cSrcweir @returns 2401cdf0e10cSrcweir <TRUE/> if so 2402cdf0e10cSrcweir @throws SQLException 2403cdf0e10cSrcweir if a database access error occurs. 2404cdf0e10cSrcweir */ 2405cdf0e10cSrcweir boolean supportsResultSetConcurrency([in]long setType, 2406cdf0e10cSrcweir [in]long concurrency) 2407cdf0e10cSrcweir raises (SQLException); 2408cdf0e10cSrcweir //------------------------------------------------------------------------- 2409cdf0e10cSrcweir 2410cdf0e10cSrcweir /** indicates whether a result set's own updates are visible. 2411cdf0e10cSrcweir @param setType 2412cdf0e10cSrcweir defined in 2413cdf0e10cSrcweir <type scop="com::sun::star::sdbc">ResultSetType</type> 2414cdf0e10cSrcweir @returns 2415cdf0e10cSrcweir <TRUE/> if so 2416cdf0e10cSrcweir @throws SQLException 2417cdf0e10cSrcweir if a database access error occurs. 2418cdf0e10cSrcweir */ 2419cdf0e10cSrcweir boolean ownUpdatesAreVisible([in]long setType) raises (SQLException); 2420cdf0e10cSrcweir //------------------------------------------------------------------------- 2421cdf0e10cSrcweir 2422cdf0e10cSrcweir /** indicates whether a result set's own deletes are visible. 2423cdf0e10cSrcweir @param setType 2424cdf0e10cSrcweir defined in 2425cdf0e10cSrcweir <type scop="com::sun::star::sdbc">ResultSetType</type> 2426cdf0e10cSrcweir @returns 2427cdf0e10cSrcweir <TRUE/> if so 2428cdf0e10cSrcweir @throws SQLException 2429cdf0e10cSrcweir if a database access error occurs. 2430cdf0e10cSrcweir */ 2431cdf0e10cSrcweir boolean ownDeletesAreVisible([in]long setType) raises (SQLException); 2432cdf0e10cSrcweir //------------------------------------------------------------------------- 2433cdf0e10cSrcweir 2434cdf0e10cSrcweir /** indicates whether a result set's own inserts are visible. 2435cdf0e10cSrcweir @param setType 2436cdf0e10cSrcweir defined in 2437cdf0e10cSrcweir <type scop="com::sun::star::sdbc">ResultSetType</type> 2438cdf0e10cSrcweir @returns 2439cdf0e10cSrcweir <TRUE/> if so 2440cdf0e10cSrcweir @throws SQLException 2441cdf0e10cSrcweir if a database access error occurs. 2442cdf0e10cSrcweir */ 2443cdf0e10cSrcweir boolean ownInsertsAreVisible([in]long setType) raises (SQLException); 2444cdf0e10cSrcweir //------------------------------------------------------------------------- 2445cdf0e10cSrcweir 2446cdf0e10cSrcweir /** indicates whether updates made by others are visible. 2447cdf0e10cSrcweir @param setType 2448cdf0e10cSrcweir defined in 2449cdf0e10cSrcweir <type scop="com::sun::star::sdbc">ResultSetType</type> 2450cdf0e10cSrcweir @returns 2451cdf0e10cSrcweir <TRUE/> if so 2452cdf0e10cSrcweir @throws SQLException 2453cdf0e10cSrcweir if a database access error occurs. 2454cdf0e10cSrcweir */ 2455cdf0e10cSrcweir boolean othersUpdatesAreVisible([in]long setType) raises (SQLException); 2456cdf0e10cSrcweir //------------------------------------------------------------------------- 2457cdf0e10cSrcweir 2458cdf0e10cSrcweir /** indicates whether deletes made by others are visible. 2459cdf0e10cSrcweir @param setType 2460cdf0e10cSrcweir defined in 2461cdf0e10cSrcweir <type scop="com::sun::star::sdbc">ResultSetType</type> 2462cdf0e10cSrcweir @returns 2463cdf0e10cSrcweir <TRUE/> if so 2464cdf0e10cSrcweir @throws SQLException 2465cdf0e10cSrcweir if a database access error occurs. 2466cdf0e10cSrcweir */ 2467cdf0e10cSrcweir boolean othersDeletesAreVisible([in]long setType) raises (SQLException); 2468cdf0e10cSrcweir //------------------------------------------------------------------------- 2469cdf0e10cSrcweir 2470cdf0e10cSrcweir /** indicates whether inserts made by others are visible. 2471cdf0e10cSrcweir @param setType 2472cdf0e10cSrcweir defined in 2473cdf0e10cSrcweir <type scop="com::sun::star::sdbc">ResultSetType</type> 2474cdf0e10cSrcweir @returns 2475cdf0e10cSrcweir <TRUE/> if so 2476cdf0e10cSrcweir @throws SQLException 2477cdf0e10cSrcweir if a database access error occurs. 2478cdf0e10cSrcweir */ 2479cdf0e10cSrcweir boolean othersInsertsAreVisible([in]long setType) raises (SQLException); 2480cdf0e10cSrcweir //------------------------------------------------------------------------- 2481cdf0e10cSrcweir 2482cdf0e10cSrcweir /** indicates whether or not a visible row update can be detected by 2483cdf0e10cSrcweir calling the method 2484cdf0e10cSrcweir <code>XResultSet.rowUpdated</code>. 2485cdf0e10cSrcweir @param setType 2486cdf0e10cSrcweir defined in 2487cdf0e10cSrcweir <type scop="com::sun::star::sdbc">ResultSetType</type> 2488cdf0e10cSrcweir @returns 2489cdf0e10cSrcweir <TRUE/> if so 2490cdf0e10cSrcweir @throws SQLException 2491cdf0e10cSrcweir if a database access error occurs. 2492cdf0e10cSrcweir */ 2493cdf0e10cSrcweir boolean updatesAreDetected([in]long setType) raises (SQLException); 2494cdf0e10cSrcweir //------------------------------------------------------------------------- 2495cdf0e10cSrcweir 2496cdf0e10cSrcweir /** indicates whether or not a visible row delete can be detected by 2497cdf0e10cSrcweir calling 2498cdf0e10cSrcweir <member scope="com::sun::star::sdbc">XResultSet::rowDeleted()</member> 2499cdf0e10cSrcweir . If deletesAreDetected() 2500cdf0e10cSrcweir returns <FALSE/>, then deleted rows are removed from the result set. 2501cdf0e10cSrcweir @param setType 2502cdf0e10cSrcweir defined in 2503cdf0e10cSrcweir <type scop="com::sun::star::sdbc">ResultSetType</type> 2504cdf0e10cSrcweir @returns 2505cdf0e10cSrcweir <TRUE/> if so 2506cdf0e10cSrcweir @throws SQLException 2507cdf0e10cSrcweir if a database access error occurs. 2508cdf0e10cSrcweir */ 2509cdf0e10cSrcweir boolean deletesAreDetected([in]long setType) raises (SQLException); 2510cdf0e10cSrcweir //------------------------------------------------------------------------- 2511cdf0e10cSrcweir 2512cdf0e10cSrcweir /** indicates whether or not a visible row insert can be detected 2513cdf0e10cSrcweir by calling 2514cdf0e10cSrcweir <member scope="com::sun::star::sdbc">XResultSet::rowInserted().</member> 2515cdf0e10cSrcweir @param setType 2516cdf0e10cSrcweir defined in 2517cdf0e10cSrcweir <type scop="com::sun::star::sdbc">ResultSetType</type> 2518cdf0e10cSrcweir @returns 2519cdf0e10cSrcweir <TRUE/> if so 2520cdf0e10cSrcweir @throws SQLException 2521cdf0e10cSrcweir if a database access error occurs. 2522cdf0e10cSrcweir */ 2523cdf0e10cSrcweir boolean insertsAreDetected([in]long setType) raises (SQLException); 2524cdf0e10cSrcweir //------------------------------------------------------------------------- 2525cdf0e10cSrcweir 2526cdf0e10cSrcweir /** indicates whether the driver supports batch updates. 2527cdf0e10cSrcweir @returns 2528cdf0e10cSrcweir <TRUE/> if so 2529cdf0e10cSrcweir @throws SQLException 2530cdf0e10cSrcweir if a database access error occurs. 2531cdf0e10cSrcweir */ 2532cdf0e10cSrcweir boolean supportsBatchUpdates() raises (SQLException); 2533cdf0e10cSrcweir //------------------------------------------------------------------------- 2534cdf0e10cSrcweir 2535cdf0e10cSrcweir /** Gets a description of the user-defined types defined in a particular 2536cdf0e10cSrcweir schema. Schema-specific UDTs may have type OBJECT, STRUCT, 2537cdf0e10cSrcweir or DISTINCT. 2538cdf0e10cSrcweir 2539cdf0e10cSrcweir 2540cdf0e10cSrcweir <p>Only types matching the catalog, schema, type name, and type 2541cdf0e10cSrcweir criteria are returned. They are ordered by DATA_TYPE, TYPE_SCHEM, 2542cdf0e10cSrcweir and TYPE_NAME. The type name parameter may be a fully-qualified 2543cdf0e10cSrcweir name. In this case, the catalog and schemaPattern parameters are 2544cdf0e10cSrcweir ignored. 2545cdf0e10cSrcweir </p> 2546cdf0e10cSrcweir <p>Each type description has the following columns: 2547cdf0e10cSrcweir </p> 2548cdf0e10cSrcweir <ol> 2549cdf0e10cSrcweir <li> 2550cdf0e10cSrcweir <b>TYPE_CAT</b> string => the type's catalog (may be <NULL/>) 2551cdf0e10cSrcweir </li> 2552cdf0e10cSrcweir <li> 2553cdf0e10cSrcweir <b>TYPE_SCHEM</b> string => type's schema (may be <NULL/>) 2554cdf0e10cSrcweir </li> 2555cdf0e10cSrcweir <li> 2556cdf0e10cSrcweir <b>TYPE_NAME</b> string => type name 2557cdf0e10cSrcweir </li> 2558cdf0e10cSrcweir <li> 2559cdf0e10cSrcweir <b>CLASS_NAME</b> string => Java class name or service name 2560cdf0e10cSrcweir </li> 2561cdf0e10cSrcweir <li> 2562cdf0e10cSrcweir <b>DATA_TYPE</b> string => type value. 2563cdf0e10cSrcweir One of OBJECT, STRUCT, or DISTINCT 2564cdf0e10cSrcweir </li> 2565cdf0e10cSrcweir <li> 2566cdf0e10cSrcweir <b>REMARKS</b> string => explanatory comment on the type 2567cdf0e10cSrcweir </li> 2568cdf0e10cSrcweir </ol> 2569cdf0e10cSrcweir <p> 2570cdf0e10cSrcweir <b>Note:</b> If the driver does not support UDTs, an empty 2571cdf0e10cSrcweir result set is returned. 2572cdf0e10cSrcweir </p> 2573cdf0e10cSrcweir @param catalog 2574cdf0e10cSrcweir a catalog name; "" retrieves those without a catalog; <VOID/> means drop catalog name from the selection criteria 2575cdf0e10cSrcweir @param schemaPattern 2576cdf0e10cSrcweir a schema name pattern; "" retrieves those without a schema 2577cdf0e10cSrcweir @param typeNamePattern 2578cdf0e10cSrcweir a type name pattern; may be a fully-qualified name 2579cdf0e10cSrcweir @param types 2580cdf0e10cSrcweir a list of user-named types to include (OBJECT, STRUCT, or DISTINCT) 2581cdf0e10cSrcweir @returns 2582cdf0e10cSrcweir each row is a type description 2583cdf0e10cSrcweir @throws SQLException 2584cdf0e10cSrcweir if a database access error occurs. 2585cdf0e10cSrcweir */ 2586cdf0e10cSrcweir XResultSet getUDTs([in]any catalog, [in]string schemaPattern, 2587cdf0e10cSrcweir [in]string typeNamePattern, [in]sequence<long> types) 2588cdf0e10cSrcweir raises (SQLException); 2589cdf0e10cSrcweir //------------------------------------------------------------------------- 2590cdf0e10cSrcweir 2591cdf0e10cSrcweir /** retrieves the connection that produced this metadata object. 2592cdf0e10cSrcweir @returns 2593cdf0e10cSrcweir the Connection object 2594cdf0e10cSrcweir @throws SQLException 2595cdf0e10cSrcweir if a database access error occurs. 2596cdf0e10cSrcweir */ 2597cdf0e10cSrcweir XConnection getConnection() raises (SQLException); 2598cdf0e10cSrcweir}; 2599cdf0e10cSrcweir 2600cdf0e10cSrcweir//============================================================================= 2601cdf0e10cSrcweir 2602cdf0e10cSrcweir}; }; }; }; 2603cdf0e10cSrcweir 2604cdf0e10cSrcweir/*=========================================================================== 2605cdf0e10cSrcweir===========================================================================*/ 2606cdf0e10cSrcweir#endif 2607