20#ifndef INCLUDED_CONNECTIVITY_TTABLEHELPER_HXX
21#define INCLUDED_CONNECTIVITY_TTABLEHELPER_HXX
78 typedef std::map<OUString, std::shared_ptr<sdbcx::KeyProperties>>
TKeyMap;
84 ::std::unique_ptr<OTableHelperImpl>
m_pImpl;
86 void refreshPrimaryKeys(::std::vector< OUString>& _rKeys);
87 void refreshForeignKeys(::std::vector< OUString>& _rKeys);
110 virtual void SAL_CALL disposing()
override;
116 virtual OUString getRenameStart()
const;
121 virtual void refreshColumns()
override;
122 virtual void refreshKeys()
override;
123 virtual void refreshIndexes()
override;
125 const ColumnDesc* getColumnDescription(
const OUString& _sName)
const;
129 const css::uno::Reference< css::sdbc::XConnection >& _xConnection,
132 const css::uno::Reference< css::sdbc::XConnection >& _xConnection,
134 const OUString& Name,
135 const OUString&
Type,
136 const OUString& Description = OUString(),
137 const OUString& SchemaName = OUString(),
138 const OUString& CatalogName = OUString()
141 virtual css::uno::Reference< css::sdbc::XDatabaseMetaData> getMetaData()
const override;
142 css::uno::Reference< css::sdbc::XConnection>
const &
getConnection()
const;
145 virtual void SAL_CALL rename(
const OUString& newName )
override;
148 virtual void SAL_CALL alterColumnByIndex( sal_Int32 index,
const css::uno::Reference< css::beans::XPropertySet >& descriptor )
override;
150 virtual OUString SAL_CALL getName()
override;
153 const OUString & getTableName();
156 std::shared_ptr<sdbcx::KeyProperties> getKeyProperties(
const OUString& _sName)
const;
157 void addKey(
const OUString& _sName,
const std::shared_ptr<sdbcx::KeyProperties>& _aKeyProperties);
159 virtual OUString getTypeCreatePattern()
const;
161 css::uno::Reference< css::sdb::tools::XTableRename>
const & getRenameService()
const;
162 css::uno::Reference< css::sdb::tools::XTableAlteration>
const & getAlterService()
const;
163 css::uno::Reference< css::sdb::tools::XKeyAlteration>
const & getKeyService()
const;
164 css::uno::Reference< css::sdb::tools::XIndexAlteration>
const & getIndexService()
const;
::std::unique_ptr< OTableHelperImpl > m_pImpl
OTableHelper(sdbcx::OCollection *_pTables, const css::uno::Reference< css::sdbc::XConnection > &_xConnection, bool _bCase, const OUString &Name, const OUString &Type, const OUString &Description=OUString(), const OUString &SchemaName=OUString(), const OUString &CatalogName=OUString())
virtual sdbcx::OCollection * createIndexes(const ::std::vector< OUString > &_rNames)=0
creates the index collection for the table
virtual sdbcx::OCollection * createKeys(const ::std::vector< OUString > &_rNames)=0
creates the key collection for the table
OTableHelper(sdbcx::OCollection *_pTables, const css::uno::Reference< css::sdbc::XConnection > &_xConnection, bool _bCase)
virtual sdbcx::OCollection * createColumns(const ::std::vector< OUString > &_rNames)=0
creates the column collection for the table
sal_Int32 OrdinalPosition
std::map< OUString, std::shared_ptr< sdbcx::KeyProperties > > TKeyMap
connectivity::sdbcx::OTable OTable_TYPEDEF
ColumnDesc(OUString _sName, sal_Int32 _nField5, OUString _aField6, sal_Int32 _nField7, sal_Int32 _nField9, sal_Int32 _nField11, OUString _sField12, OUString _sField13, OrdinalPosition _nPosition)
OrdinalPosition nOrdinalPosition