このチュートリアルは、競合を検出するスクリプト化されたアップロードの設定方法を示しています。チュートリアルでは、スクリプト化されたアップロードで必要な統合データベースとリモートデータベース、ストアドプロシージャ、パブリケーション、サブスクリプションを作成します。
前提条件
このレッスンでは、このチュートリアルの冒頭の「権限」セクションに一覧になっているロールおよび権限を持っていることを前提としています。 チュートリアル:スクリプト化されたアップロードの使用
内容と備考
このチュートリアルでは、ファイル名を指定し、ファイルが現在のディレクトリ (scriptedupload) にあるものと想定しています。実際のアプリケーションでは、ファイルのフルパスを指定してください。
このチュートリアルは、参考にするだけでもかまいませんし、テキストをコピーアンドペーストしてサンプルを実行することもできます。
次のコマンドを実行して、チュートリアルのファイルを保存するディレクトリを作成し、そのディレクトリに移動します。
md c:\scriptedupload cd c:\scriptedupload |
次のコマンドを実行して、統合データベースを作成します。
dbinit -dba DBA,sql consol.db |
次のコマンドを実行して、統合データベースの ODBC データソースを定義します。
dbdsn -w dsn_consol -y -c "UID=DBA;PWD=sql;DBF=consol.db;SERVER=consol" |
データベースを Mobile Link 統合データベースとして使用するには、Mobile Link で使用するシステムテーブル、ビュー、ストアドプロシージャを追加する設定スクリプトを実行する必要があります。次のコマンドを実行して、統合データベースとして consol.db を設定します。
dbisql -c "DSN=dsn_consol" "%SQLANY16%\MobiLink\setup\syncsa.sql" |
Interactive SQL を開き、dsn_consol DSN を使用して consol.db に接続するには、次のコマンドを実行します。
dbisql -c "DSN=dsn_consol" |
次の SQL 文を実行します。実行すると、統合データベースで employee テーブルが作成され、値をテーブルが挿入され、必要な同期スクリプトが作成されます。
CREATE TABLE employee ( id unsigned integer primary key, name varchar( 256), salary numeric( 9, 2 ) ); INSERT INTO employee VALUES( 100, 'smith', 225000 ); COMMIT; CALL ml_add_table_script( 'default', 'employee', 'upload_insert', 'INSERT INTO employee ( id, name, salary ) VALUES ( {ml r.id}, {ml r.name}, {ml r.salary} )' ); CALL ml_add_table_script( 'default', 'employee', 'upload_update', 'UPDATE employee SET name = {ml r.name}, salary = {ml r.salary} WHERE id = {ml r.id}' ); CALL ml_add_table_script( 'default', 'employee', 'upload_delete', 'DELETE FROM employee WHERE id = {ml r.id}' ); CALL ml_add_table_script( 'default', 'employee', 'download_cursor', 'SELECT * from employee' ); |
チュートリアルに従って作業する間に、統合データベースに対してさらに SQL を実行するため、この SQL の実行完了後も、引き続き Interactive SQL を実行し、データベースに接続した状態にします。
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2013, SAP AG or an SAP affiliate company. - SAP Sybase SQL Anywhere 16.0 |