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

文書翻訳 文書翻訳
文書番号: 330468 - 対象製品
すべて展開する | すべて折りたたむ

目次

概要

この資料では、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」の項を参照してください。
    Using Microsoft Access 2002 with 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 サイトを参照してください。

    Office ソリューションのデータ アクセス コンポーネントを使用する

    http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/odeopg/html/deovrworkingwithdataaccesscomponentsofofficesolution.asp
    ADO の使用についての関連資料は、次の MSDN Web サイトを参照してください。
    Access クライアント/サーバー ソリューションでプログラムする

    http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/odeopg/html/deovrprogramminginaccessclientserversolutions.asp

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

  • テーブルがアップサイズされない。
    • SQL Server の Model データベースのデフォルトのデータ ファイル サイズが 1 MB を超えていないかどうかを確認してください。
    • テーブル構造のみをアップサイズしてみてください。
  • テーブルが SQL Server の Master データベースに予期せずアップサイズされる。 関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
    281950 ACC2002: Database Unexpectedly Upsized to SQL Server Master Database

関連情報

アップサイジングの詳細については、次の MSDN Web サイトを参照してください。
Using Microsoft Access 2002 with MSDE 2000 (英語)
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnacc2k2/html/odc_msdeintro.asp
Upsizing to SQL Server (英語)
http://msdn2.microsoft.com/en-us/library/ms952656.aspx
アップサイジング ウィザードで Access データベースを変換する
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/odeopg/html/deovrconvertingaccessdatabasewithupsizingwizard.asp
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

関連情報

この資料は米国 Microsoft Corporation から提供されている Knowledge Base の Article ID 330468 (最終更新日 2003-11-05) を基に作成したものです。

プロパティ

文書番号: 330468 - 最終更新日: 2007年5月16日 - リビジョン: 3.1
この資料は以下の製品について記述したものです。
  • Microsoft Access 2002 Standard Edition
キーワード:?
kbhowtomaster KB330468
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com