kexi
KexiMigration::KexiMigrate Class Reference
#include <keximigrate.h>
Inheritance diagram for KexiMigration::KexiMigrate:

Detailed Description
Imports non-native databases into Kexi projects.A generic API for importing schema and data from an existing database into a new Kexi project. Can be also used for importing native Kexi databases.
Basic idea is this:
- User selects an existing DB and new project (file or server based)
- User specifies whether to import structure and data or structure only.
- Import tool connects to db
- Checks if it is already a kexi project (not implemented yet)
- If not, then read structure and construct new project
- Ask user what to do if column type is not supported
See kexi/doc/dev/kexi_import.txt for more info.
Definition at line 76 of file keximigrate.h.
Signals | |
void | progressPercent (int percent) |
Public Member Functions | |
virtual | ~KexiMigrate () |
KexiMigration::Data * | data () const |
void | setData (KexiMigration::Data *migrateData) |
bool | checkIfDestinationDatabaseOverwritingNeedsAccepting (Kexi::ObjectStatus *result, bool &acceptingNeeded) |
bool | performImport (Kexi::ObjectStatus *result=0) |
bool | performExport (Kexi::ObjectStatus *result=0) |
bool | progressSupported () |
virtual int | versionMajor () const =0 |
virtual int | versionMinor () const =0 |
virtual QVariant | propertyValue (const QCString &propName) |
void | setPropertyValue (const QCString &propName, const QVariant &value) |
QString | propertyCaption (const QCString &propName) const |
QValueList< QCString > | propertyNames () const |
virtual bool | isValid () |
Protected Member Functions | |
KexiMigrate (QObject *parent, const char *name, const QStringList &args=QStringList()) | |
virtual bool | drv_connect ()=0 |
virtual bool | drv_disconnect ()=0 |
virtual bool | drv_tableNames (QStringList &tablenames)=0 |
virtual bool | drv_readTableSchema (const QString &originalName, KexiDB::TableSchema &tableSchema)=0 |
virtual bool | drv_copyTable (const QString &srcTable, KexiDB::Connection *destConn, KexiDB::TableSchema *dstTable)=0 |
virtual bool | drv_progressSupported () |
virtual bool | drv_getTableSize (const QString &, Q_ULLONG &) |
void | updateProgress (Q_ULLONG step=1ULL) |
KexiDB::Field::Type | userType (const QString &fname) |
Protected Attributes | |
KexiMigration::Data * | m_migrateData |
QMap< QCString, QVariant > | m_properties |
QMap< QCString, QString > | m_propertyCaptions |
Friends | |
class | MigrateManager |
Constructor & Destructor Documentation
|
Used by MigrateManager.
Definition at line 36 of file keximigrate.cpp. |
Member Function Documentation
|
Checks whether the destination database exists. For file-based dest. projects, we've already asked about overwriting existing project but for server-based projects it's better to ask user. This method should be called before performImport() or performExport().
Definition at line 64 of file keximigrate.cpp. |
|
Definition at line 84 of file keximigrate.h. |
|
Connect to source database (driver specific).
Implemented in KexiMigration::MySQLMigrate, and KexiMigration::PqxxMigrate. |
|
Copy a table from source DB to target DB (driver specific).
Implemented in KexiMigration::MySQLMigrate, and KexiMigration::PqxxMigrate. |
|
Disconnect from source database (driver specific).
Implemented in KexiMigration::MySQLMigrate, and KexiMigration::PqxxMigrate. |
|
Obviously, the driver should use the same units when reporting migration progress.
Reimplemented in KexiMigration::MySQLMigrate. Definition at line 178 of file keximigrate.h. |
|
Read schema for a given table (driver specific).
Implemented in KexiMigration::MySQLMigrate, and KexiMigration::PqxxMigrate. |
|
Get table names in source database (driver specific).
Implemented in KexiMigration::MySQLMigrate, and KexiMigration::PqxxMigrate. |
|
Definition at line 512 of file keximigrate.cpp. |
|
Perform an export operation.
Definition at line 309 of file keximigrate.cpp. |
|
Perform an import operation.
Definition at line 101 of file keximigrate.cpp. |
|
Returns true if the migration driver supports progress updates.
Definition at line 109 of file keximigrate.h. |
|
Definition at line 495 of file keximigrate.cpp. |
|
return a list of property names available for this driver. Definition at line 505 of file keximigrate.cpp. |
|
Definition at line 490 of file keximigrate.cpp. |
|
Data Setup. Requires two connection objects, a name and a bool.
Definition at line 52 of file keximigrate.cpp. |
|
Definition at line 500 of file keximigrate.cpp. |
|
Prompt user to select a field type for unrecognized fields.
Definition at line 433 of file keximigrate.cpp. |
Member Data Documentation
|
Migrate Options.
Definition at line 189 of file keximigrate.h. |
|
Driver properties dictionary (indexed by name), useful for presenting properties to the user. Set available properties here in driver implementation. Definition at line 197 of file keximigrate.h. |
|
i18n'd captions for properties. You do not need to set predefined properties' caption in driver implementation -it's done automatically. Definition at line 202 of file keximigrate.h. |
The documentation for this class was generated from the following files: