MSSQL
Data source: External SQL ServerStandard Edition+概要
MSSQL(SQL Server)は、NocoBaseの外部データベースとして接続できます。接続すると、NocoBaseはSQL Server内のテーブル、フィールド、ビューを読み取り、外部データソース内のデータテーブルとして使用します。
メインデータベースとは異なり、外部MSSQLの実際のテーブル構造は、元の業務システム、データベースクライアント、またはマイグレーションスクリプトによって引き続き管理されます。NocoBaseは、構造の読み取り、フィールドメタデータの保存、ページブロック、権限、ワークフロー、APIの設定を担当します。
外部MSSQLの利用に適したシナリオ:
- 既存のERP、MES、WMS、CRMなどの業務システムのSQL Serverデータベースを接続する
- 履歴データを移行せずに、NocoBaseで管理画面を構築する
- 既存のテーブルに対して、権限制御、ワークフロー処理、データ修正、レポート表示を行う
- データベース構造をDBA、マイグレーションスクリプト、または元のシステムで引き続き管理する
外部MSSQLはNocoBaseのシステムデータベースではありません。NocoBaseがバックアップ、リストア、マイグレーション、テーブル構造の変更を管理することはありません。
プラグインのインストール
このプラグインは商用プラグインです。詳しいアクティベーション方法については、商用プラグインのアクティベーシ ョンガイドを参照してください。
データソースの追加
「データソース管理」で「Add new」をクリックし、MSSQLを選択して接続情報を入力します。

一般的な接続設定は次のとおりです。
SQL Server内のオブジェクトが多い場合は、Database、Table prefix、「Collections」を使用して、あらかじめ範囲を絞り込んでください。現在のアプリケーションで使用するテーブルとビューのみを接続すると、その後の権限設定、ページ構築、同期メンテナンスが容易になります。
データテーブルの選択
接続情報を入力した後、「Load Collections」をク リックすると、SQL Serverで利用可能なデータテーブルとビューを読み込めます。読み込み結果は、接続アカウント、Database、Table prefix、「Collections」の設定に影響されます。
デフォルトでは「Add all collections」が有効になっており、現在の範囲内にあるすべてのテーブルとビューを接続します。一部のオブジェクトのみを接続する場合は、「Add all collections」を無効にして、リストから必要なデータテーブルまたはビューを選択してください。

1つの外部データソースで一度に接続できるデータテーブルまたはビューは、最大500個です。SQL Server内のオブジェクトが多い場合は、Database、Table prefix、または「Collections」を使用して、あらかじめ範囲を絞り込むことをおすすめします。
フィールドの同期と設定
外部MSSQLのテーブル構造は、データベース側で管理されます。NocoBaseが外部SQL Server内にフィールドを作成したり、フィールドタイプを変更したり、実際のフィールドを削除したりすることはありません。
SQL Server側でテーブル構造が変更された場合は、データソースで「Sync from database」を実行し、テーブルとフィールドのメタデータを再読み込みできます。同期すると、NocoBaseに保存されているデータテーブル、フィールド、主キー、ユニークキー、フィールドタイプのマッピング情報が更新されますが、SQL Server内の実際のテーブルやデータが削除されることはありません。
フィールドの同期後、NocoBaseでフィールドのタイトル、フィールドタイプ(Field type)、フィールドコンポーネント(Field interface)を設定できます。NocoBaseのリレーションフィールドを作成する場合も、NocoBase内にリレーションメタデータが保存されるだけで、SQL Serverのテーブルに実際の外部キーフィールドが自動的に追加されることはありません。
フィールドタイプのマッピング
NocoBaseは、SQL Serverのフィールドタイプに基づいて、適切なField typeとField interfaceに自動的にマッピングします。フィールド設定で画面上の表示方法を調整できます。
一般的なマッピングは次のとおりです。
サポートされていないSQL Serverフィールドタイプは、フィールド設定に個別に表示されます。これらのフィールドをNocoBaseで通常のフィールドとして使用するには、適応対応の開発が必要です。

