Diese Systemprozedur migriert eine Gruppe entfernter Tabellen in eine SQL Anywhere-Datenbank.
sa_migrate( Basistabelle_Eigentümer, Servername [, Tabellenname ] [, Eigentümername ] [, Datenbankname ] [, Daten_migrieren ] [, Proxytabellen_löschen ] [, FSchlüssel_migrieren ] )
Basistabelle_Eigentümer Verwenden Sie diesen VARCHAR(128)-Parameter, um den Benutzer anzugeben, dem die migrierten Tabellen in der SQL Anywhere-Zieldatenbank gehören. Erstellen Sie diesen Benutzer mit der Anweisung GRANT CONNECT. Für diesen Parameter muss ein Wert angegeben werden. Weitere Hinweise finden Sie unter GRANT-Anweisung.
Servername Verwenden Sie diesen VARCHAR(128)-Parameter, um den Namen des entfernten Servers anzugeben, der für die Verbindung zur entfernten Datenbank verwendet wird. Benutzen Sie die Anweisung CREATE SERVER, um diesen Server zu erstellen. Für diesen Parameter muss ein Wert angegeben werden. Weitere Hinweise finden Sie unter CREATE SERVER-Anweisung.
Tabellenname Wenn Sie eine einzige Tabelle migrieren, verwenden Sie diesen VARCHAR(128)-Parameter, um den Tabellennamen anzugeben. Andernfalls sollten Sie diesen Parameter auf NULL (Standardeinstellung) setzen. Geben Sie nicht sowohl für den Parameter Tabellenname als auch für den Parameter Eigentümername NULL an.
Eigentümername Wenn Sie nur Tabellen migrieren, die einem einzigen Eigentümer gehören, verwenden Sie diesen VARCHAR(128)-Parameter, um den Eigentümernamen anzugeben. Andernfalls sollten Sie diesen Parameter auf NULL (Standardeinstellung) setzen. Geben Sie nicht sowohl für den Parameter Tabellenname als auch für den Parameter Eigentümername NULL an.
Datenbankname Verwenden Sie diesen VARCHAR(128)-Parameter, um den Namen der entfernten Datenbank anzugeben. Diesen Datenbanknamen müssen Sie angeben, wenn Sie nur von einer entfernten Datenbank des entfernten Servers Tabellen migrieren möchten. Andernfalls setzen Sie diesen Parameter auf NULL (Standardeinstellung).
Daten_migrieren Mit diesem optionalen BIT-Parameter können Sie angeben, ob die Daten in den entfernten Tabellen migriert werden. Dieser Parameterwert kann "0" (Daten nicht migrieren) oder "1" (Daten migrieren) sein. Standardmäßig werden die Daten migriert. (1)
Proxytabellen_löschen Mit diesem optionalen BIT-Parameter können Sie festlegen, ob die für den Migrationsprozess erstellten Proxytabellen gelöscht werden, sobald die Migration abgeschlossen ist. Dieser Parameterwert kann "0" (Proxytabellen werden nicht gelöscht) oder "1" (Proxytabellen werden gelöscht) sein. Standardmäßig werden die Proxytabellen gelöscht (1).
FSchlüssel_migrieren Mit diesem optionalen BIT-Parameter können Sie angeben, ob Fremdschlüssel-Zuordnungen migriert werden sollen. Dieser Parameterwert kann "0" sein (Fremdschlüssel-Zuordnungen nicht migrieren), oder "1" (Fremdschlüssel-Zuordnungen migrieren). Standardmäßig werden die Fremdschlüssel-Zuordnungen migriert (1).
Mit dieser Prozedur können Sie Tabellen aus einer entfernten Oracle-, DB2-, SQL Server-, Adaptive Server Enterprise- oder SQL Anywhere-Datenbank nach SQL Anywhere migrieren. Die Prozedur ermöglicht Ihnen in einem Schritt die Migration einer Gruppe entfernter Tabellen inklusive deren Fremdschlüsselzuordnung. Die Systemprozedur sa_migrate ruft die folgenden Systemprozeduren auf:
Sie können diese Systemprozeduren anstelle von sa_migrate verwenden, wenn Sie mehr Flexibilität benötigen. Beispielsweise ist es bei Verwendung von sa_migrate nicht möglich, Fremdschlüsselbeziehungen bei der Migration von Tabellen beizubehalten, wenn diese Fremdschlüsselbeziehungen unterschiedlichen Benutzern gehören.
Vor der Migration jeglicher Tabellen müssen Sie erst einen entfernten Server mit der Anweisung CREATE SERVER erstellen und sich mit der entfernten Datenbank verbinden. Sie müssen eventuell auch ein externes Login für die entfernte Datenbank mit der Anweisung CREATE EXTERNLOGIN erstellen. Weitere Hinweise finden Sie unter CREATE SERVER-Anweisung und CREATE EXTERNLOGIN-Anweisung.
Sie können alle Tabellen aus der entfernten Datenbank in eine SQL Anywhere-Datenbank migrieren, indem Sie nur die Parameter Basistabelle_Eigentümer und Servername angeben. Bei der Migration mit nur diesen beiden angegebenen Parametern werden jedoch alle migrierten Tabellen in der SQL Anywhere-Datenbank nur einem Eigentümer zugeordnet. Wenn die Tabellen in der entfernten Datenbank unterschiedliche Eigentümer haben und Sie die Tabellen in der SQL Anywhere-Datenbank unterschiedlichen Eigentümern zuordnen wollen, müssen Sie die Tabellen für jeden Eigentümer einzeln migrieren. Verwenden Sie hierzu bei jedem Aufruf der Prozedur sa_migrate die Parameter Basistabelle_Eigentümer und Eigentümername.
Geben Sie nicht sowohl für den Parameter Tabellenname als auch für den Parameter Eigentümername NULL an. Wenn Sie sowohl für Tabellenname als auch für Eigentümername den Wert NULL angeben, werden alle Tabellen in der Datenbank migriert, auch die Systemtabellen. Außerdem werden Tabellen, die den gleichen Namen in der entfernten Datenbank haben, aber unterschiedlichen Eigentümern gehören, alle einem Eigentümer in der Zieldatenbank zugeordnet. Es wird empfohlen, dass Sie nur einem Eigentümer zugeordnete Tabellen auf einmal migrieren.
Keine
Keine
Die folgende Anweisung migriert alle Tabellen der entfernten Datenbank einschließlich der Fremdschlüsselzuordnungen, die dem Benutzer p_chin gehören, migriert die Daten der entfernten Tabellen und löscht die Proxytabellen nach Abschluss der Migration. In diesem Beispiel gehören alle in die SQL Anywhere-Zieldatenbank migrierten Tabellen dem Benutzer local_user .
CALL sa_migrate( 'local_user', 'server_a', NULL, 'p_chin', NULL, 1, 1, 1 ); |
Die folgende Anweisung migriert nur diejenigen Tabellen der entfernten Datenbank, die dem Benutzer remote_a gehören. In der SQL Anywhere-Zieldatenbank gehören diese Tabellen dem Benutzer local_a. Proxytabellen, die während der Migration erstellt werden, werden nach der Fertigstellung nicht gelöscht.
CALL sa_migrate( 'local_a', 'server_a', NULL, 'remote_a', NULL, 1, 0, 1 ); |
Kommentieren Sie diese Seite in DocCommentXchange. Senden Sie uns Feedback über diese Seite via E-Mail. |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |