Difference between revisions of "Database/Drivers/MySQL Native/SDBC(X)2MySQL"

From Apache OpenOffice Wiki
Jump to: navigation, search
(Mapping from SDBC(X) to the MySQL library interface)
 
(30 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
== Mapping from SDBC(X) to the MySQL library interface ==
 
== Mapping from SDBC(X) to the MySQL library interface ==
  
Note: There will be an additional wrapper (Connector/OOo) to provide functionality not provided by the MySQL library interface.
+
Connector/OOo is a wrapper above of an underlying MySQL library. The underlying library needs to provide all required methods to C/OOo which C/OO cannot "emulate". The table shows if any methods are missing in the underlying library. It says nothing about the completeness of C/OOo as such. Its only purpose is to find out if C/OOo gets from the library all it needs.
 +
 
 +
All interfaces listed are required core functionality. However, OOo might not use all methods of the interfaces, see [[Database/Drivers/MySQL_Native/SDBC%28X%29_Interface|SDBC(X) Interface]].
  
 
{|class="wikitable"
 
{|class="wikitable"
 
!SDBC(X)
 
!SDBC(X)
 
!Comment
 
!Comment
!MySQL
+
!Underlying MySQL library
 
!Comment
 
!Comment
 
|-
 
|-
Line 32: Line 34:
 
|Required by [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/ResultSet.html ResultSet]
 
|Required by [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/ResultSet.html ResultSet]
 
|PreparedResultSet::findColumn() - ResultSet::findColumn()
 
|PreparedResultSet::findColumn() - ResultSet::findColumn()
|Use wrapper
+
|Use wrapper (C/OOo) to implement it
 
|-
 
|-
 
|[http://api.openoffice.org/docs/common/ref/com/sun/star/beans/XPropertySet.html XPropertySet]
 
|[http://api.openoffice.org/docs/common/ref/com/sun/star/beans/XPropertySet.html XPropertySet]
 
|Required by [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/ResultSet.html ResultSet]
 
|Required by [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/ResultSet.html ResultSet]
 
|
 
|
|Missing, use wrapper
+
|Missing, Use wrapper (C/OOo) to implement it
 
|-  
 
|-  
 
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/XResultSetMetaDataSupplier.html XResultSetMetaDataSupplier]
 
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/XResultSetMetaDataSupplier.html XResultSetMetaDataSupplier]
 
| Required by [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/ResultSet.html ResultSet], returns [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/XResultSetMetaData.html XResultSetMetaData], one method only
 
| Required by [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/ResultSet.html ResultSet], returns [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/XResultSetMetaData.html XResultSetMetaData], one method only
 
| ResultSetMetadata
 
| ResultSetMetadata
| Use wrapper
+
|Use wrapper (C/OOo) to implement it
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/XResultSetMetaData.html XResultSetMetaData]
 +
|
 +
| ResultSetMetadata
 +
|Use wrapper (C/OOo) to implement it
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/XRow.html XRow]
 +
| Required by [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/ResultSet.html ResultSet]
 +
|
 +
|
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/XRowUpdate.html XRowUpdate]
 +
| Required by [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/ResultSet.html ResultSet]
 +
|
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/XPreparedStatement.html XPreparedStatement]
 +
|
 +
|PreparedStatement
 +
| 50% done (13.05.2008)
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/XCloseable.html XCloseable]
 +
| Required by [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/PreparedStatement.html PreparedStatement]
 +
|
 +
| basically implements freeing of resources; use wrapper (C/OOo) to implement it
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/beans/XPropertySet.html XPropertySet]
 +
|Required by [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/PreparedStatement.html PreparedStatement]
 +
|
 +
|
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/XParameters.html XParameters]
 +
|Required by [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/PreparedStatement.html PreparedStatement]
 +
|
 +
|
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/XResultSetMetaDataSupplier.html XResultSetMetaDataSupplier]
 +
|Required by [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/PreparedStatement.html PreparedStatement]
 +
|PreparedResultSet
 +
|Use wrapper (C/OOo) and use PreparedResultSet for the returned XResultSetMetaData
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/XWarningsSupplier.html XWarningSupplier]
 +
|Required by [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/PreparedStatement.html PreparedStatement]
 +
|
 +
| can probably be omitted (aka: implemented as dummy) in a first step, nobody makes use of it as of today
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/XMultipleResults.html XMultipleResults]
 +
|Required by [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/PreparedStatement.html PreparedStatement]
 +
|
 +
| can probably be omitted (aka: implemented as dummy) in a first step, nobody makes use of it as of today
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/XStatement.html XStatement]
 +
|
 +
|Statement
 +
|100% complete
 +
|}
 +
 
 +
== Potential problems with the library ==
 +
 
 +
* Connection::prepareCall() - not supported
 +
 
 +
== SDBCX to wrapper ==
 +
 
 +
In the first step we need no more but the table administration.
 +
 
 +
{|class="wikitable"
 +
!SDBC(X)
 +
!Comment
 +
!MySQL
 +
!Comment
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbcx/XAlterTable.html XAlterTable]
 +
|2 methods, belong to [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbcx/Table.html Table]
 +
|
 +
|Table administration
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbcx/XColumnsSupplier.html XColumnsSupplier]
 +
|1 method, belongs to [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbcx/Table.html Table]
 +
|
 +
|Table administration
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbcx/XDataDescriptorFactory.html XDataDescriptorFactory]
 +
|1 method, belongs to [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbcx/Table.html Table]
 +
|
 +
|Table administration
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbcx/XIndexesSupplier.html XIndexedSupplier]
 +
|1 method, belongs to [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbcx/Table.html Table]
 +
|
 +
|Table administration
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbcx/XKeysSupplier.html XKeysSupplier]
 +
|1 method, belongs to [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbcx/Table.html Table]
 +
|
 +
|Table administration
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbcx/XRename.html XRename]
 +
|1 method, belongs to [http://api.openoffice.org/docs/common/ref/com/sun/star/sdbcx/Table.html Table]
 +
|
 +
|Table administration
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbc/XDriver.html XDriver]
 +
|
 +
|Driver
 +
|2 methods missing, use wrapper
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbcx/XCreateCatalog.html XCreateCatalog]
 +
|1 method
 +
|
 +
|Catalog/database administration
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbcx/XDropCatalog.html XDropCatalog]
 +
|1 method
 +
|
 +
|Catalog/database administration
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbcx/XDropCatalog.html XDropCatalog]
 +
|1 method
 +
|
 +
|Catalog/database administration
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbcx/XUsersSupplier.html XUsersSupplier]
 +
|1 method
 +
|
 +
|User/account administration
 +
|-
 +
|[http://api.openoffice.org/docs/common/ref/com/sun/star/sdbcx/XUser.html XUser]
 +
|
 +
|
 +
|User/account administration
 
|}
 
|}
 +
[[Category:MySQL]]

Latest revision as of 21:42, 15 December 2009

Mapping from SDBC(X) to the MySQL library interface

Connector/OOo is a wrapper above of an underlying MySQL library. The underlying library needs to provide all required methods to C/OOo which C/OO cannot "emulate". The table shows if any methods are missing in the underlying library. It says nothing about the completeness of C/OOo as such. Its only purpose is to find out if C/OOo gets from the library all it needs.

All interfaces listed are required core functionality. However, OOo might not use all methods of the interfaces, see SDBC(X) Interface.

SDBC(X) Comment Underlying MySQL library Comment
XConnection Connection 5 methods missing (13.05.2008)
XDatabaseMetaData ConnectionMetaData 80% done (13.05.2008)
XDriver Driver 2 methods missing, use wrapper to provide them
XResultSet ResultSet 2 methods missing
XColumnLocate Required by ResultSet PreparedResultSet::findColumn() - ResultSet::findColumn() Use wrapper (C/OOo) to implement it
XPropertySet Required by ResultSet Missing, Use wrapper (C/OOo) to implement it
XResultSetMetaDataSupplier Required by ResultSet, returns XResultSetMetaData, one method only ResultSetMetadata Use wrapper (C/OOo) to implement it
XResultSetMetaData ResultSetMetadata Use wrapper (C/OOo) to implement it
XRow Required by ResultSet
XRowUpdate Required by ResultSet
XPreparedStatement PreparedStatement 50% done (13.05.2008)
XCloseable Required by PreparedStatement basically implements freeing of resources; use wrapper (C/OOo) to implement it
XPropertySet Required by PreparedStatement
XParameters Required by PreparedStatement
XResultSetMetaDataSupplier Required by PreparedStatement PreparedResultSet Use wrapper (C/OOo) and use PreparedResultSet for the returned XResultSetMetaData
XWarningSupplier Required by PreparedStatement can probably be omitted (aka: implemented as dummy) in a first step, nobody makes use of it as of today
XMultipleResults Required by PreparedStatement can probably be omitted (aka: implemented as dummy) in a first step, nobody makes use of it as of today
XStatement Statement 100% complete

Potential problems with the library

  • Connection::prepareCall() - not supported

SDBCX to wrapper

In the first step we need no more but the table administration.

SDBC(X) Comment MySQL Comment
XAlterTable 2 methods, belong to Table Table administration
XColumnsSupplier 1 method, belongs to Table Table administration
XDataDescriptorFactory 1 method, belongs to Table Table administration
XIndexedSupplier 1 method, belongs to Table Table administration
XKeysSupplier 1 method, belongs to Table Table administration
XRename 1 method, belongs to Table Table administration
XDriver Driver 2 methods missing, use wrapper
XCreateCatalog 1 method Catalog/database administration
XDropCatalog 1 method Catalog/database administration
XDropCatalog 1 method Catalog/database administration
XUsersSupplier 1 method User/account administration
XUser User/account administration
Personal tools