現在オフラインです。再接続するためにインターネットの接続を待っています

[HOWTO] Microsoft Access 2002 のアップサイジング ウィザードの使用方法

上級者向け : 高度なコーディング能力、相互運用性、およびマルチユーザー環境の経験が必要です。

この資料は Microsoft Access データベース (.mdb)、および Microsoft Access プロジェクト (.adp) について記述したものです。

Microsoft Access 2000 については、次の資料を参照してください。325017

この資料の内容


概要
この資料では、Access 2002 のアップサイジング ウィザードを使用して、Microsoft Access データベースを Microsoft SQL Server または MSDE (Microsoft Data Engine) にアップサイズする方法について説明します。この資料では、アップサイジング ウィザードの概要、アップサイズ前の確認事項、設計時の考慮点、アップサイズ時の一般的な問題のトラブルシューティング方法、および関連情報の入手先を紹介します。

先頭に戻る

はじめに

アップサイジング ウィザードを使用して、既存の Access データベース (.mdb) をクライアント/サーバー ソリューションに変換できます。アップサイジング ウィザードにより、新しい SQL Server データベース構造 (インデックス、入力規則、既定、リレーションシップを含む) が作成され、データが新しい SQL Server データベースにコピーされます。また、新しいクライアント サーバー アプリケーションを作成する場合は、Access のクエリが SQL Server のビューおよびストアド プロシージャとして再作成されます。

データベース構造とデータのみをアップサイズすることもできますが、SQL Server のバック エンド データベースを作成した後で Access のフロント エンド クライアント アプリケーションを作成することもできます。アップサイジング ウィザードでは、次の 2 つの方法のいずれかでフロント エンド クライアント アプリケーションを作成できます。

  • 現在の Access データベース ファイル (.mdb) を保持し、SQL Server 上のアップサイズ後のテーブルに接続するリンク テーブルを追加する方法

    既存のフォーム、レポート、およびデータ アクセス ページは、新しくリンクされたテーブルをデータ ソースとして使用します。
  • 新しい Access プロジェクト ファイル (.adp) を作成し、現在の Access データベースからフォーム、レポート、データ アクセス ページ、マクロ、およびモジュールをコピーして、その Access プロジェクト ファイルを SQL Server 上のアップサイズ後のテーブルに接続する方法

    コピーしたフォーム、レポート、およびデータ アクセス ページはローカル データベースを参照します。これらは、.adp ファイルによるサーバーへの接続を使用して、新しくアップサイズされた SQL Server のテーブル、ビュー、およびストアド プロシージャをデータ ソースとして使用します。現在のデータベース以外のデータベースを参照するデータ アクセス ページは、アップサイズ後も変わりません。
アップサイジング ウィザードを実行する場合、処理は完全ではないことに注意してください。Access データベースと SQL Server データベースとの間には、異なっている部分や、潜在的に互換性のない部分があります。たとえば、SQL 独特の表現やデータ型などです。アップサイジング ウィザードは、これらの違いの多くに対応しており、オブジェクトを正しく変換できますが、すべての違いに対処することはできません。そのため、新しいデータベースや新しいクライアント アプリケーションの作成中に問題が発生することがあります。アップサイジング ウィザードでアップサイジング処理中に問題が発生しても、ウィザードの処理は停止しません。エラーが記録され、次のオブジェクトの処理が継続されます。アップサイジング処理の完了後に、レポートが表示されます。このレポートに、新しいデータベースの名前やサイズ、ウィザードの実行中に選択した項目、およびウィザードで発生したエラーなど、処理の詳細が表示されます。

アップサイジング ウィザードを実行する方法の詳細を参照するには、以下の手順を実行してください。
  1. [ヘルプ] メニューの [Microsoft Access ヘルプ] をクリックします。
  2. Office アシスタントまたはアンサー ウィザードに、アップサイジング ウィザードと入力します。
  3. [検索] をクリックして表示されるトピックを参照してください。
Access の構文と SQL Server との構文の違い、およびアップサイジング ウィザードでのこの違いの対処方法の詳細を参照するには、以下の手順を実行してください。
  1. [ヘルプ] メニューの [Microsoft Access ヘルプ] をクリックします。
  2. Office アシスタント、またはアンサー ウィザードに、Access と SQL Server の構文の比較と入力します。
  3. [検索] をクリックして表示されるサブトピック、[Visual Basic for Applications と SQL Server Transact-SQL の関数の比較] を参照してください。
先頭に戻る

アップサイズ前の確認事項

  • Access データベース ファイル (.mdb) のバックアップ コピー。選択したアップサイズ方法によって、既存のアプリケーション設計が変わることがあります。
  • 接続先の SQL Server または MSDE を実行するコンピュータの名前。また、ログオン情報も確認します。MSDE のインストール方法の詳細については、次の MSDN Web サイトの「Installing , Starting, and Stopping MSDE 2000」の項を参照してください。
  • アップサイジングをできるだけスムーズに行うため、アップサイズする SQL Server で適切な権限があることを確認します。最低でも、CREATE TABLE 権限が必要です。新規にデータベースを構築する場合は、CREATE DATABASE 権限が必要です。
  • ディスクの十分な空き容量。アップサイズに必要な空き容量は、Access データベースのサイズの 2 倍です。
先頭に戻る

データベース設計の考慮点

  • 最初から、サーバーでの命名規則に従う必要があります。アップサイジング ウィザードによって、多くの一般的な誤りが修正されますが、すべての誤りが修正されるわけではありません。バック エンドへの移行を容易にするには、以下の SQL Server の制限に従います。
    • SQL Server 6.5 では、名前を 30 文字以内にする必要があります。SQL Server 7.0 では、上限が 128 文字まで拡張されています。SQL Server 2000 では、上限が 249 文字まで拡張されています。
    • 名前の先頭は、文字または @ 記号にする必要があります。2 文字目以降には、数値、文字、ドル記号 ($)、シャープ記号 (#)、またはアンダーバー (_) を使用できます。
    • SQL Server 6.5 では、名前に空白を使用することはできません。SQL Server 7.0 では、空白を使用できますが、その場合は名前を二重引用符 ("") または角かっこ ([]) で囲む必要があります。
    • Transact-SQL のキーワードを名前に使用することはできません。SQL Server では、キーワードの大文字と小文字の両方のバージョンが予約語として確保されています。Transact-SQL のキーワードの詳細については、SQL Server Books Online を参照してください。
  • アップサイジング ウィザードでは、変換されないアイテムが一部あります。それ以外のアイテムは変換されますが、ウィザードの完了後に確認する必要があります。アップサイジング ウィザードを使用した場合、テーブル、ビュー、フォーム、およびレポートに加えられた変更をすべて確認する必要があります。

    具体的に、アップサイジング ウィザードでは、データベースの変換時に次の規則が使用されます。
    • 重複する列名には別名が与えられます。
    • 日付の区切り文字は変換されます。
    • ブール定数は整数に変換されます。
    • 文字列の連結は、アンパサンド (&) から正符号 (+) に変換されます。
    • ワイルドカード文字は、Transact-SQL の対応する文字に変換されます。
    • ORDER BY 句を含んだすべての TOP クエリに WITH TIES が追加されます。
    Access の以下の SQL 構文要素は、MSDE ではサポートされていないため変換されません。アップサイジング ウィザードはこれらのアイテムを SQL ステートメントから削除します。
    • DROP INDEX
    • DISTINCTROW
    • OWNERACCESS
    • UNION でのテーブル
    • UNION での ORDER BY
    • TRANSFORM
    • パラメータ
  • アップサイジング ウィザードでは、Access ソリューションのコードは変換されません。Access オブジェクトを直接操作するコードは、引き続き動作する可能性がありますが、テーブルおよびクエリを処理するデータ アクセス オブジェクト (DAO) コードは、ActiveX データ オブジェクト (ADO) コードに変換する必要があります。

    ADO の使用方法の概要については、次の MSDN Web サイトを参照してください。

    ADO の使用についての関連資料は、次の MSDN Web サイトを参照してください。
先頭に戻る

アップサイズ時の問題のトラブルシューティング

  • テーブルがアップサイズされない。
    • SQL Server の Model データベースのデフォルトのデータ ファイル サイズが 1 MB を超えていないかどうかを確認してください。
    • テーブル構造のみをアップサイズしてみてください。
  • テーブルが SQL Server の Master データベースに予期せずアップサイズされる。関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
    281950 ACC2002: Database Unexpectedly Upsized to SQL Server Master Database
先頭に戻る
関連情報
アップサイジングの詳細については、次の MSDN Web サイトを参照してください。SQL Server へアップサイズする場合に起こる可能性のある問題の関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
328319 ACC2002: Issues with the Access 2002 Upsizing Wizard
"Access 2002 Upsizing Tools" ホワイト ペーパーの関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
294407 ACC2002: "Access 2002 Upsizing Tools" White Paper Available in Download Center
先頭に戻る
acc2002 upsize
関連情報
この資料は米国 Microsoft Corporation から提供されている Knowledge Base の Article ID 330468 (最終更新日 2003-11-05) を基に作成したものです。
プロパティ

文書番号:330468 - 最終更新日: 05/16/2007 06:25:15 - リビジョン: 3.1

  • Microsoft Access 2002 Standard Edition
  • kbhowtomaster KB330468
フィードバック