ADO.NET アプリケーションのOracle から PostgreSQLへの移行
ADO.NETとは?
ADO.NET はデータやデータサービスへ接続するための一連のソフトウェアコンポーネントであり、Microsoft .NET Frameworkに含まれている基本クラスライブラリの一部です。 Oracle は Oracleデータベースアクセス用にADO.NET Data Provider for Oracle database(Oracle.DataAccess.Client) を提供しています。PostgreSQLへのアクセスには PostgreSQLのNpgsql dataproviderという特殊な ADO.NET Data Provider for PostgreSQL (Npgsql ネームスペース)を使用することができます。
なぜIspirer MnMTKなのか
Ispirer MnMTK は.NETアプリケーションに対し包括的アセスメントを行い、埋め込みSQL(ダイナミックSQL)やADO.NET プロバイダのクラスおよびメソッドを移行することができます。Ispirer MnMTKは移行作業全体を内部で完結させるため、お客様がアプリケーションのコードからSQLステートメントを抜き出して個別に変換するような作業が不要になります。
変換の特徴
Ispirer MnMTK は以下のような移行作業を自動化します:
- 接続文字列の変更
- ADO.NET ネームスペースの変更:
Oracle | PostgreSQL | Oracle.DataAccess.Client | Npgsql |
- 基本的なADO.NET クラスのマッピング:
.NET Framework | Oracle | PostgreSQL | Connection | OracleConnection | NpgsqlConnection | Command | OracleCommand | NpgsqlCommand | DataReader | OracleDataReader | NpgsqlDataReader | DataAdapter | OracleDataAdapter | NpgsqlDataAdapter | Parameter | OracleParameter | NpgsqlParameter | など | | |
- ダイナミックSQLの言語要素や組込み関数をOracle と PostgreSQLの差分に応じ変換。
例えば Oracle
1. OracleDataAdapter da = new OracleDataAdapter();
2. da.SelectCommand = new OracleCommand
3. ("SELECT SYSDATE FROM DUAL", _conn);
PostgreSQL
1. NpgsqlDataAdapter da = new NpgsqlDataAdapter();
2. da.SelectCommand = new NpgsqlCommand
3. ("SELECT LOCALTIMESTAMP; ", _conn);
- API データベースパラメータをOracle からPostgreSQL向けに変換。
例えば Oracle
1. cmd.Parameters.Add(":PAR", OracleDbType.Varchar2, val,
2. ParameterDirection.Input); PostgreSQL
1. cmd.Parameters.Add(":PAR", NpgsqlTypes.NpgsqlDbType.Varchar,
2. ParameterDirection.Input).Value=val;
どのように変換するのか
このようなデータベースおよびアプリケーションの移行作業の詳細な説明は以下にあります:
埋め込みSQLとデータベースアクセスAPIの移行
アセスメント
この製品はプロジェクトにとって有用なアセスメントツールになります。アセスメント作業は簡単ですぐに移行に要する作業とコストを見積もることができます。ADO.NETおよびダイナミックSQLを使う.NETアプリケーションの変換を見積る作業は以下の様なものです
- データベースアクセスのコードを含むソースファイルの特定
- データベースに関連するコードの行数の特定
- SQL ステートメントの特定
Ispirer MnMTK は ADO.NET および ダイナミックSQL を使う .NET アプリケーションの変換作業全体を自動化し、変換作業に伴うリスクや必要となる内部作業を大幅に削減することができます。お手頃な価格設定の Ispirer MnMTK はこのような移行プロジェクトにとってとても魅力的な製品です。
詳細はお問い合わせください。
|