dbEdit
概要
クエリの作成/編集/削除/読込み
追加の情報
このXファンクションは、自動GetNダイアログには対応していません。
コマンドラインでの使用法
dbEdit execute:=change;
dbEdit execute:=load fname:="%Ystars.ods" iw:=[book2]sheet1!;
dbEdit sql:="Select Stars.Name, Stars.LightYears From Stars";
変数
表示
名 |
変数
名 |
I/O
と
データ型 |
デフォルト
値 |
説明 |
コマンドオプション |
execute |
入力
int
|
0
|
ワークシートに実行するデータベース操作を指定します。
オプションリスト:
- change:クエリの作成/修正
- クエリを作成、または編集するための クエリービルダ ダイアログが開きます。
- askrem:確認してクエリを削除
- 確認後、ワークシートからクエリーを削除します。
- load:クエリファイルのロード
- ワークシートにクエリー(.ODQ または.ODS) ファイルをロードします。ファイル名は変数 fname で指定する必要があります。
- remove:クエリを削除
- ワークシートからクエリーを削除します。
|
ODQまたはODSファイルのパスを入力します。 |
fname |
入力
string
|
""
|
変数 execute がロードされると、読み込まれる.odq または.ods ファイルのパスを指定するためにこの変数を使用することができます。 |
ワークシート |
iw |
入力
Worksheet
|
<active>
|
操作を実行するワークシートを指定します。 |
新しいSQL文字列 |
sql |
入力
string
|
""
|
ワークシートの現在のクエリー内に書く新しいSQL 文字列を指定します。 |
新しい接続文字列 |
connect |
入力
string
|
""
|
ワークシートの現在のクエリー内に書く新しい接続文字列を指定します。 |
インポートオプション |
option |
入力
int
|
0
|
データをインポートする方法を指定します。
オプションリスト:
- ado:データをインポートするのにADO オブジェクトを使用します。
- データをインポートするのにADO オブジェクトを使用します。
- odbc:データをインポートするのにODBC を使用します。
- データをインポートするのにODBCを使用します。
|
説明
このツールは、 クエリビルダダイアログ (ファイル:データベースのインポート:新規作成) を開いたり、データベースクエリを削除/ロード/編集します。
データベースに接続しているとき、クエリビルダは通常、ODQファイルとODSファイルの2種類のファイルを作成します。これらのファイルをクエリビルダに保存した後、テキストエディタ(メモ帳など)を使って開くことができます。
ODSファイル
データソースファイル ODSファイルには、Originと外部データベースを接続するための接続文字列が含まれています。 ファイルには、サーバの名前、データベースの場所、サーバに接続するのに必要なユーザIDとパスワードなどの情報が含まれます。
データベースに接続した後、クエリビルダのクエリ:データソース:保存メニューを使って、ODSファイルを作成することができます。以下は、SQLサーバデータベースのサンプルです。
[DataSource]
Provider=SQLOLEDB.1;Password=abc123;Persist Security Info=True;User ID=tester;Initial Catalog=Northwind;Data Source=MYSQLSERVER;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=MYSQLSERVER;Use Encryption for Data=False;Tag with column collation when possible=False
ODQファイル
データクエリファイル ODQファイルには、データベースから情報を取り出すのに使用する接続文字列とSQLクエリの両方が含まれています。
データベースに接続した後、クエリビルダのクエリ:保存メニューを使って、ODQファイルを作成することができます。以下は、Oracleデータベースのサンプルです。
[DataSource]
Provider=OraOLEDB.Oracle.1;Password=tiger;Persist Security Info=True;User ID=scott;Data Source=orcl;Extended Properties=""
[SQL]
Select SCOTT.DEPT.DNAME, SCOTT.DEPT.LOC, SCOTT.EMP.ENAME, SCOTT.EMP.JOB, SCOTT.EMP.SAL
From SCOTT.DEPT Inner Join SCOTT.EMP On SCOTT.DEPT.DEPTNO = SCOTT.EMP.DEPTNO
[UseODBC]
ADO
接続文字列
上記で示した2つのサンプルは、ODSまたはODQファイルのいずれかが [DataSource] セクションに接続文字列を含んでいることを示しています。そして、クエリビルダダイアログでこの文字列を見つけることもできます。
クエリをスクリプト(またはOrigin C)で実行するとき、キーとなるのは、データベース接続をセットアップして、クエリを発行するためにこの接続文字列を使うことです。そのため、データベースに検索要求する前に、クエリビルダを使って、接続文字列を構築して、そしてコード内でこの文字列をコピーして使用するようにします。
サンプル
このサンプルは、Originの組み込みのサンプルデータベース(MS ACCESS)からデータを取得するものです。データベースを接続するとき、クエリビルダダイアログを使って、接続文字列を構築してください。
// 接続文字列の構築
// クエリビルダを使って、接続文字列を構築してください。
string strdb$ = system.path.program$ +
"Samples\Import and Export\stars.mdb";
string strConn$="Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=%(strdb$); User ID=; Password=;";
// SQL
string strSQL$="SELECT Stars.Index, Stars.Name, Stars.LightYears, Stars.Magnitude
FROM Stars
WHERE Stars.LightYears<=100
ORDER BY Stars.Magnitude, Stars.LightYears";
// データベースを接続し、SQLを発行する
dbEdit change conn:=strConn$ sql:=strSQL$;
// データのインポート
dbImport;
// データベースの接続解除
dbEdit remove;
関連のXファンクション
dbImport, dbInfo, dbPreview
|