1*b1cdbd2cSJim Jagielski /************************************************************** 2*b1cdbd2cSJim Jagielski * 3*b1cdbd2cSJim Jagielski * Licensed to the Apache Software Foundation (ASF) under one 4*b1cdbd2cSJim Jagielski * or more contributor license agreements. See the NOTICE file 5*b1cdbd2cSJim Jagielski * distributed with this work for additional information 6*b1cdbd2cSJim Jagielski * regarding copyright ownership. The ASF licenses this file 7*b1cdbd2cSJim Jagielski * to you under the Apache License, Version 2.0 (the 8*b1cdbd2cSJim Jagielski * "License"); you may not use this file except in compliance 9*b1cdbd2cSJim Jagielski * with the License. You may obtain a copy of the License at 10*b1cdbd2cSJim Jagielski * 11*b1cdbd2cSJim Jagielski * http://www.apache.org/licenses/LICENSE-2.0 12*b1cdbd2cSJim Jagielski * 13*b1cdbd2cSJim Jagielski * Unless required by applicable law or agreed to in writing, 14*b1cdbd2cSJim Jagielski * software distributed under the License is distributed on an 15*b1cdbd2cSJim Jagielski * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*b1cdbd2cSJim Jagielski * KIND, either express or implied. See the License for the 17*b1cdbd2cSJim Jagielski * specific language governing permissions and limitations 18*b1cdbd2cSJim Jagielski * under the License. 19*b1cdbd2cSJim Jagielski * 20*b1cdbd2cSJim Jagielski *************************************************************/ 21*b1cdbd2cSJim Jagielski 22*b1cdbd2cSJim Jagielski #ifndef CONNECTIVITY_SDATABASEMETADATA_HXX 23*b1cdbd2cSJim Jagielski #define CONNECTIVITY_SDATABASEMETADATA_HXX 24*b1cdbd2cSJim Jagielski 25*b1cdbd2cSJim Jagielski #include "mysqlc_connection.hxx" 26*b1cdbd2cSJim Jagielski 27*b1cdbd2cSJim Jagielski #ifndef _COM_SUN_STAR_SDBC_XDATABASEMETADATA_HPP_ 28*b1cdbd2cSJim Jagielski #include <com/sun/star/sdbc/XDatabaseMetaData.hpp> 29*b1cdbd2cSJim Jagielski #endif 30*b1cdbd2cSJim Jagielski #ifndef _CPPUHELPER_IMPLBASE1_HXX_ 31*b1cdbd2cSJim Jagielski #include <cppuhelper/implbase1.hxx> 32*b1cdbd2cSJim Jagielski #endif 33*b1cdbd2cSJim Jagielski 34*b1cdbd2cSJim Jagielski #include <preextstl.h> 35*b1cdbd2cSJim Jagielski #include <cppconn/metadata.h> 36*b1cdbd2cSJim Jagielski #include <postextstl.h> 37*b1cdbd2cSJim Jagielski 38*b1cdbd2cSJim Jagielski namespace connectivity 39*b1cdbd2cSJim Jagielski { 40*b1cdbd2cSJim Jagielski namespace mysqlc 41*b1cdbd2cSJim Jagielski { 42*b1cdbd2cSJim Jagielski typedef ::com::sun::star::sdbc::SQLException my_SQLException; 43*b1cdbd2cSJim Jagielski typedef ::com::sun::star::uno::RuntimeException my_RuntimeException; 44*b1cdbd2cSJim Jagielski typedef ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XResultSet > my_XResultSetRef; 45*b1cdbd2cSJim Jagielski using ::com::sun::star::uno::Any; 46*b1cdbd2cSJim Jagielski using ::rtl::OUString; 47*b1cdbd2cSJim Jagielski 48*b1cdbd2cSJim Jagielski //************************************************************** 49*b1cdbd2cSJim Jagielski //************ Class: ODatabaseMetaData 50*b1cdbd2cSJim Jagielski //************************************************************** 51*b1cdbd2cSJim Jagielski 52*b1cdbd2cSJim Jagielski typedef ::cppu::WeakImplHelper1< ::com::sun::star::sdbc::XDatabaseMetaData> ODatabaseMetaData_BASE; 53*b1cdbd2cSJim Jagielski 54*b1cdbd2cSJim Jagielski class ODatabaseMetaData : public ODatabaseMetaData_BASE 55*b1cdbd2cSJim Jagielski { 56*b1cdbd2cSJim Jagielski OConnection& m_rConnection; 57*b1cdbd2cSJim Jagielski sal_Bool m_bUseCatalog; 58*b1cdbd2cSJim Jagielski protected: 59*b1cdbd2cSJim Jagielski sql::DatabaseMetaData * meta; 60*b1cdbd2cSJim Jagielski OUString identifier_quote_string; 61*b1cdbd2cSJim Jagielski bool identifier_quote_string_set; 62*b1cdbd2cSJim Jagielski 63*b1cdbd2cSJim Jagielski private: 64*b1cdbd2cSJim Jagielski OUString impl_getStringMetaData( const sal_Char* _methodName, const ext_std::string& (sql::DatabaseMetaData::*_Method)() ); 65*b1cdbd2cSJim Jagielski OUString impl_getStringMetaData( const sal_Char* _methodName, ext_std::string (sql::DatabaseMetaData::*_Method)() ); 66*b1cdbd2cSJim Jagielski OUString impl_getStringMetaData( const sal_Char* _methodName, const sql::SQLString& (sql::DatabaseMetaData::*_Method)() ); 67*b1cdbd2cSJim Jagielski OUString impl_getStringMetaData( const sal_Char* _methodName, sql::SQLString (sql::DatabaseMetaData::*_Method)() ); 68*b1cdbd2cSJim Jagielski sal_Int32 impl_getInt32MetaData( const sal_Char* _methodName, unsigned int (sql::DatabaseMetaData::*_Method)() ); 69*b1cdbd2cSJim Jagielski sal_Bool impl_getBoolMetaData( const sal_Char* _methodName, bool (sql::DatabaseMetaData::*_Method)() ); 70*b1cdbd2cSJim Jagielski sal_Bool impl_getBoolMetaData( const sal_Char* _methodName, bool (sql::DatabaseMetaData::*_Method)(int), sal_Int32 _arg ); 71*b1cdbd2cSJim Jagielski sal_Bool impl_getRSTypeMetaData( const sal_Char* _methodName, bool (sql::DatabaseMetaData::*_Method)(int), sal_Int32 _resultSetType ); 72*b1cdbd2cSJim Jagielski 73*b1cdbd2cSJim Jagielski public: getOwnConnection() const74*b1cdbd2cSJim Jagielski inline const OConnection& getOwnConnection() const { return m_rConnection; } 75*b1cdbd2cSJim Jagielski 76*b1cdbd2cSJim Jagielski ODatabaseMetaData(OConnection& _rCon); 77*b1cdbd2cSJim Jagielski virtual ~ODatabaseMetaData(); 78*b1cdbd2cSJim Jagielski 79*b1cdbd2cSJim Jagielski // as I mentioned before this interface is really BIG 80*b1cdbd2cSJim Jagielski // XDatabaseMetaData 81*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL allProceduresAreCallable() throw(my_SQLException, my_RuntimeException); 82*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL allTablesAreSelectable() throw(my_SQLException, my_RuntimeException); 83*b1cdbd2cSJim Jagielski OUString SAL_CALL getURL() throw(my_SQLException, my_RuntimeException); 84*b1cdbd2cSJim Jagielski OUString SAL_CALL getUserName() throw(my_SQLException, my_RuntimeException); 85*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL isReadOnly() throw(my_SQLException, my_RuntimeException); 86*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL nullsAreSortedHigh() throw(my_SQLException, my_RuntimeException); 87*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL nullsAreSortedLow() throw(my_SQLException, my_RuntimeException); 88*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL nullsAreSortedAtStart() throw(my_SQLException, my_RuntimeException); 89*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL nullsAreSortedAtEnd() throw(my_SQLException, my_RuntimeException); 90*b1cdbd2cSJim Jagielski OUString SAL_CALL getDatabaseProductName() throw(my_SQLException, my_RuntimeException); 91*b1cdbd2cSJim Jagielski OUString SAL_CALL getDatabaseProductVersion() throw(my_SQLException, my_RuntimeException); 92*b1cdbd2cSJim Jagielski OUString SAL_CALL getDriverName() throw(my_SQLException, my_RuntimeException); 93*b1cdbd2cSJim Jagielski OUString SAL_CALL getDriverVersion() throw(my_SQLException, my_RuntimeException); 94*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getDriverMajorVersion() throw(my_RuntimeException); 95*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getDriverMinorVersion() throw(my_RuntimeException); 96*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL usesLocalFiles() throw(my_SQLException, my_RuntimeException); 97*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL usesLocalFilePerTable() throw(my_SQLException, my_RuntimeException); 98*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsMixedCaseIdentifiers() throw(my_SQLException, my_RuntimeException); 99*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL storesUpperCaseIdentifiers() throw(my_SQLException, my_RuntimeException); 100*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL storesLowerCaseIdentifiers() throw(my_SQLException, my_RuntimeException); 101*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL storesMixedCaseIdentifiers() throw(my_SQLException, my_RuntimeException); 102*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsMixedCaseQuotedIdentifiers() throw(my_SQLException, my_RuntimeException); 103*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL storesUpperCaseQuotedIdentifiers() throw(my_SQLException, my_RuntimeException); 104*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL storesLowerCaseQuotedIdentifiers() throw(my_SQLException, my_RuntimeException); 105*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL storesMixedCaseQuotedIdentifiers() throw(my_SQLException, my_RuntimeException); 106*b1cdbd2cSJim Jagielski OUString SAL_CALL getIdentifierQuoteString() throw(my_SQLException, my_RuntimeException); 107*b1cdbd2cSJim Jagielski OUString SAL_CALL getSQLKeywords() throw(my_SQLException, my_RuntimeException); 108*b1cdbd2cSJim Jagielski OUString SAL_CALL getNumericFunctions() throw(my_SQLException, my_RuntimeException); 109*b1cdbd2cSJim Jagielski OUString SAL_CALL getStringFunctions() throw(my_SQLException, my_RuntimeException); 110*b1cdbd2cSJim Jagielski OUString SAL_CALL getSystemFunctions() throw(my_SQLException, my_RuntimeException); 111*b1cdbd2cSJim Jagielski OUString SAL_CALL getTimeDateFunctions() throw(my_SQLException, my_RuntimeException); 112*b1cdbd2cSJim Jagielski OUString SAL_CALL getSearchStringEscape() throw(my_SQLException, my_RuntimeException); 113*b1cdbd2cSJim Jagielski OUString SAL_CALL getExtraNameCharacters() throw(my_SQLException, my_RuntimeException); 114*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsAlterTableWithAddColumn() throw(my_SQLException, my_RuntimeException); 115*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsAlterTableWithDropColumn() throw(my_SQLException, my_RuntimeException); 116*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsColumnAliasing() throw(my_SQLException, my_RuntimeException); 117*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL nullPlusNonNullIsNull() throw(my_SQLException, my_RuntimeException); 118*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsTypeConversion() throw(my_SQLException, my_RuntimeException); 119*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsConvert(sal_Int32 fromType, sal_Int32 toType) 120*b1cdbd2cSJim Jagielski throw(my_SQLException, my_RuntimeException); 121*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsTableCorrelationNames() throw(my_SQLException, my_RuntimeException); 122*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsDifferentTableCorrelationNames() throw(my_SQLException, my_RuntimeException); 123*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsExpressionsInOrderBy() throw(my_SQLException, my_RuntimeException); 124*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsOrderByUnrelated() throw(my_SQLException, my_RuntimeException); 125*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsGroupBy() throw(my_SQLException, my_RuntimeException); 126*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsGroupByUnrelated() throw(my_SQLException, my_RuntimeException); 127*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsGroupByBeyondSelect() throw(my_SQLException, my_RuntimeException); 128*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsLikeEscapeClause() throw(my_SQLException, my_RuntimeException); 129*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsMultipleResultSets() throw(my_SQLException, my_RuntimeException); 130*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsMultipleTransactions() throw(my_SQLException, my_RuntimeException); 131*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsNonNullableColumns() throw(my_SQLException, my_RuntimeException); 132*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsMinimumSQLGrammar() throw(my_SQLException, my_RuntimeException); 133*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsCoreSQLGrammar() throw(my_SQLException, my_RuntimeException); 134*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsExtendedSQLGrammar() throw(my_SQLException, my_RuntimeException); 135*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsANSI92EntryLevelSQL() throw(my_SQLException, my_RuntimeException); 136*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsANSI92IntermediateSQL() throw(my_SQLException, my_RuntimeException); 137*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsANSI92FullSQL() throw(my_SQLException, my_RuntimeException); 138*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsIntegrityEnhancementFacility()throw(my_SQLException, my_RuntimeException); 139*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsOuterJoins() throw(my_SQLException, my_RuntimeException); 140*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsFullOuterJoins() throw(my_SQLException, my_RuntimeException); 141*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsLimitedOuterJoins() throw(my_SQLException, my_RuntimeException); 142*b1cdbd2cSJim Jagielski OUString SAL_CALL getSchemaTerm() throw(my_SQLException, my_RuntimeException); 143*b1cdbd2cSJim Jagielski OUString SAL_CALL getProcedureTerm() throw(my_SQLException, my_RuntimeException); 144*b1cdbd2cSJim Jagielski OUString SAL_CALL getCatalogTerm() throw(my_SQLException, my_RuntimeException); 145*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL isCatalogAtStart() throw(my_SQLException, my_RuntimeException); 146*b1cdbd2cSJim Jagielski OUString SAL_CALL getCatalogSeparator() throw(my_SQLException, my_RuntimeException); 147*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsSchemasInDataManipulation() throw(my_SQLException, my_RuntimeException); 148*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsSchemasInProcedureCalls() throw(my_SQLException, my_RuntimeException); 149*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsSchemasInTableDefinitions() throw(my_SQLException, my_RuntimeException); 150*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsSchemasInIndexDefinitions() throw(my_SQLException, my_RuntimeException); 151*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsSchemasInPrivilegeDefinitions() throw(my_SQLException, my_RuntimeException); 152*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsCatalogsInDataManipulation() throw(my_SQLException, my_RuntimeException); 153*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsCatalogsInProcedureCalls() throw(my_SQLException, my_RuntimeException); 154*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsCatalogsInTableDefinitions() throw(my_SQLException, my_RuntimeException); 155*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsCatalogsInIndexDefinitions() throw(my_SQLException, my_RuntimeException); 156*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsCatalogsInPrivilegeDefinitions() throw(my_SQLException, my_RuntimeException); 157*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsPositionedDelete() throw(my_SQLException, my_RuntimeException); 158*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsPositionedUpdate() throw(my_SQLException, my_RuntimeException); 159*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsSelectForUpdate() throw(my_SQLException, my_RuntimeException); 160*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsStoredProcedures() throw(my_SQLException, my_RuntimeException); 161*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsSubqueriesInComparisons() throw(my_SQLException, my_RuntimeException); 162*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsSubqueriesInExists() throw(my_SQLException, my_RuntimeException); 163*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsSubqueriesInIns() throw(my_SQLException, my_RuntimeException); 164*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsSubqueriesInQuantifieds() throw(my_SQLException, my_RuntimeException); 165*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsCorrelatedSubqueries() throw(my_SQLException, my_RuntimeException); 166*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsUnion() throw(my_SQLException, my_RuntimeException); 167*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsUnionAll() throw(my_SQLException, my_RuntimeException); 168*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsOpenCursorsAcrossCommit() throw(my_SQLException, my_RuntimeException); 169*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsOpenCursorsAcrossRollback() throw(my_SQLException, my_RuntimeException); 170*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsOpenStatementsAcrossCommit() throw(my_SQLException, my_RuntimeException); 171*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsOpenStatementsAcrossRollback() throw(my_SQLException, my_RuntimeException); 172*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getMaxBinaryLiteralLength() throw(my_SQLException, my_RuntimeException); 173*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getMaxCharLiteralLength() throw(my_SQLException, my_RuntimeException); 174*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getMaxColumnNameLength() throw(my_SQLException, my_RuntimeException); 175*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getMaxColumnsInGroupBy() throw(my_SQLException, my_RuntimeException); 176*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getMaxColumnsInIndex() throw(my_SQLException, my_RuntimeException); 177*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getMaxColumnsInOrderBy() throw(my_SQLException, my_RuntimeException); 178*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getMaxColumnsInSelect() throw(my_SQLException, my_RuntimeException); 179*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getMaxColumnsInTable() throw(my_SQLException, my_RuntimeException); 180*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getMaxConnections() throw(my_SQLException, my_RuntimeException); 181*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getMaxCursorNameLength() throw(my_SQLException, my_RuntimeException); 182*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getMaxIndexLength() throw(my_SQLException, my_RuntimeException); 183*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getMaxSchemaNameLength() throw(my_SQLException, my_RuntimeException); 184*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getMaxProcedureNameLength() throw(my_SQLException, my_RuntimeException); 185*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getMaxCatalogNameLength() throw(my_SQLException, my_RuntimeException); 186*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getMaxRowSize() throw(my_SQLException, my_RuntimeException); 187*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL doesMaxRowSizeIncludeBlobs() throw(my_SQLException, my_RuntimeException); 188*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getMaxStatementLength() throw(my_SQLException, my_RuntimeException); 189*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getMaxStatements() throw(my_SQLException, my_RuntimeException); 190*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getMaxTableNameLength() throw(my_SQLException, my_RuntimeException); 191*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getMaxTablesInSelect() throw(my_SQLException, my_RuntimeException); 192*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getMaxUserNameLength() throw(my_SQLException, my_RuntimeException); 193*b1cdbd2cSJim Jagielski sal_Int32 SAL_CALL getDefaultTransactionIsolation() throw(my_SQLException, my_RuntimeException); 194*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsTransactions() throw(my_SQLException, my_RuntimeException); 195*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsTransactionIsolationLevel(sal_Int32 level) 196*b1cdbd2cSJim Jagielski throw(my_SQLException, my_RuntimeException); 197*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsDataDefinitionAndDataManipulationTransactions() 198*b1cdbd2cSJim Jagielski throw(my_SQLException, my_RuntimeException); 199*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsDataManipulationTransactionsOnly()throw(my_SQLException, my_RuntimeException); 200*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL dataDefinitionCausesTransactionCommit() throw(my_SQLException, my_RuntimeException); 201*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL dataDefinitionIgnoredInTransactions() throw(my_SQLException, my_RuntimeException); 202*b1cdbd2cSJim Jagielski my_XResultSetRef SAL_CALL getProcedures(const Any& catalog, const OUString& schemaPattern, const OUString& procedureNamePattern) throw(my_SQLException, my_RuntimeException); 203*b1cdbd2cSJim Jagielski my_XResultSetRef SAL_CALL getProcedureColumns(const Any& catalog, const OUString& schemaPattern, const OUString& procedureNamePattern, const OUString& columnNamePattern) throw(my_SQLException, my_RuntimeException); 204*b1cdbd2cSJim Jagielski my_XResultSetRef SAL_CALL getTables(const Any& catalog, const OUString& schemaPattern, const OUString& tableNamePattern, const ::com::sun::star::uno::Sequence< OUString >& types) throw(my_SQLException, my_RuntimeException); 205*b1cdbd2cSJim Jagielski my_XResultSetRef SAL_CALL getSchemas() throw(my_SQLException, my_RuntimeException); 206*b1cdbd2cSJim Jagielski my_XResultSetRef SAL_CALL getCatalogs() throw(my_SQLException, my_RuntimeException); 207*b1cdbd2cSJim Jagielski my_XResultSetRef SAL_CALL getTableTypes() throw(my_SQLException, my_RuntimeException); 208*b1cdbd2cSJim Jagielski my_XResultSetRef SAL_CALL getColumns(const Any& catalog, const OUString& schemaPattern, const OUString& tableNamePattern, const OUString& columnNamePattern) throw(my_SQLException, my_RuntimeException); 209*b1cdbd2cSJim Jagielski my_XResultSetRef SAL_CALL getColumnPrivileges(const Any& catalog, const OUString& schema, const OUString& table, const OUString& columnNamePattern) throw(my_SQLException, my_RuntimeException); 210*b1cdbd2cSJim Jagielski my_XResultSetRef SAL_CALL getTablePrivileges(const Any& catalog, const OUString& schemaPattern, const OUString& tableNamePattern) throw(my_SQLException, my_RuntimeException); 211*b1cdbd2cSJim Jagielski my_XResultSetRef SAL_CALL getBestRowIdentifier(const Any& catalog, const OUString& schema, const OUString& table, sal_Int32 scope, sal_Bool nullable) throw(my_SQLException, my_RuntimeException); 212*b1cdbd2cSJim Jagielski my_XResultSetRef SAL_CALL getVersionColumns(const Any& catalog, const OUString& schema, const OUString& table) throw(my_SQLException, my_RuntimeException); 213*b1cdbd2cSJim Jagielski my_XResultSetRef SAL_CALL getPrimaryKeys(const Any& catalog, const OUString& schema, const OUString& table) throw(my_SQLException, my_RuntimeException); 214*b1cdbd2cSJim Jagielski my_XResultSetRef SAL_CALL getImportedKeys(const Any& catalog, const OUString& schema, const OUString& table) throw(my_SQLException, my_RuntimeException); 215*b1cdbd2cSJim Jagielski my_XResultSetRef SAL_CALL getExportedKeys(const Any& catalog, const OUString& schema, const OUString& table) throw(my_SQLException, my_RuntimeException); 216*b1cdbd2cSJim Jagielski my_XResultSetRef SAL_CALL getCrossReference(const Any& primaryCatalog, const OUString& primarySchema, const OUString& primaryTable, const Any& foreignCatalog, const OUString& foreignSchema, const OUString& foreignTable) throw(my_SQLException, my_RuntimeException); 217*b1cdbd2cSJim Jagielski my_XResultSetRef SAL_CALL getTypeInfo() throw(my_SQLException, my_RuntimeException); 218*b1cdbd2cSJim Jagielski my_XResultSetRef SAL_CALL getIndexInfo(const Any& catalog, const OUString& schema, const OUString& table, sal_Bool unique, sal_Bool approximate) throw(my_SQLException, my_RuntimeException); 219*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsResultSetType(sal_Int32 setType) throw(my_SQLException, my_RuntimeException); 220*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsResultSetConcurrency(sal_Int32 setType, sal_Int32 concurrency) throw(my_SQLException, my_RuntimeException); 221*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL ownUpdatesAreVisible(sal_Int32 setType) throw(my_SQLException, my_RuntimeException); 222*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL ownDeletesAreVisible(sal_Int32 setType) throw(my_SQLException, my_RuntimeException); 223*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL ownInsertsAreVisible(sal_Int32 setType) throw(my_SQLException, my_RuntimeException); 224*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL othersUpdatesAreVisible(sal_Int32 setType)throw(my_SQLException, my_RuntimeException); 225*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL othersDeletesAreVisible(sal_Int32 setType)throw(my_SQLException, my_RuntimeException); 226*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL othersInsertsAreVisible(sal_Int32 setType)throw(my_SQLException, my_RuntimeException); 227*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL updatesAreDetected(sal_Int32 setType) throw(my_SQLException, my_RuntimeException); 228*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL deletesAreDetected(sal_Int32 setType) throw(my_SQLException, my_RuntimeException); 229*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL insertsAreDetected(sal_Int32 setType) throw(my_SQLException, my_RuntimeException); 230*b1cdbd2cSJim Jagielski sal_Bool SAL_CALL supportsBatchUpdates() throw(my_SQLException, my_RuntimeException); 231*b1cdbd2cSJim Jagielski my_XResultSetRef SAL_CALL getUDTs(const Any& catalog, const OUString& schemaPattern, const OUString& typeNamePattern, const ::com::sun::star::uno::Sequence< sal_Int32 >& types) throw(my_SQLException, my_RuntimeException); 232*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection > SAL_CALL getConnection() throw(my_SQLException, my_RuntimeException); 233*b1cdbd2cSJim Jagielski }; 234*b1cdbd2cSJim Jagielski } 235*b1cdbd2cSJim Jagielski } 236*b1cdbd2cSJim Jagielski 237*b1cdbd2cSJim Jagielski #endif // CONNECTIVITY_SDATABASEMETADATA_HXX 238