Wks.DB

ワークシートへのデータベースのインポートは、Originでオブジェクトとして処理されます。データベースのインポート設定と情報にアクセスし、次の表のプロパティを使用して変更できます。

プロパティ

プロパティ タイプ アクセス 説明
wks.db.auto int 読み/書き プロジェクトを開いたときにデータセットを自動インポートするかどうかを指定します。1=開いたときにインポートする、0=開いたときにインポートしない。
wks.db.sql$ string 読み/書き ワークシートの現在のクエリに書き込む新しいSQL文字列を指定します。
wks.db.conn$ string 読み/書き ワークシートの現在のクエリに書き込む新しい接続文字列を指定します。
wks.db.odbc int 読み/書き ODBCを使用してデータをインポートするかどうかを指定します。1= ODBCを使用、0= ADOオブジェクトを使用。

メソッド

メソッド 説明
wks.db.export(filepath, optn) データベースのfilepathにエクスポートします。filepathが指定されていない場合は、現在の接続文字列を使って更新を行います。optnは非表示の列/行をスキップするかどうかを決定します。デフォルト(0)は非表示の列と行を無視しないことを意味します。1=非表示の列をスキップ、2=非表示の行をスキップします。
wks.db.remove() データベースコネクタを削除します。
wks.db.run(strErr$) Selectの場合、データベースをインポートし、そうでない場合はデータベースに実行すると、strErr$エラーメッセージが表示されることがあります。EX1を参照してください。
wks.db.test(n, strErr$) 接続をテストし、見つかったレコードを返します。nは取得するレコードの最大数で、戻り値のレコード数です。エラーの場合は負のコードを返し、strErr$はエラーメッセージを含みます。

サンプル

EX1レコードの挿入

wks.db.conn$="Driver={SQLite3 ODBC Driver};Database=C:\Users\dev\Downloads\hawaii.sqlite";
wks.db.sql$="select * from station where name like 'bb'";
if(wks.db.test(1)==0) {
	wks.db.sql$="INSERT INTO station VALUES('aa','bb', 21.4,-157.9,152.7)";
	wks.db.run();
	type "name = bb inserted";
}
wks.db.sql$="select * from station";
wks.db.run();

EX2レコードの削除

wks.db.conn$="Driver={SQLite3 ODBC Driver};Database=C:\Users\dev\Downloads\hawaii.sqlite";
string ssql$="select * from station";
wks.db.sql$=ssql$;
wks.db.odbc=1;
wks.db.run();
wks.db.sql$="select * from station where name like 'bb'";
i=wks.db.test(100);
type "name = bb has $(i) records";
wks.db.sql$="delete from station where name like 'bb'";
wks.db.run();
wks.db.sql$="select * from station where name like 'bb'";
i=wks.db.test(100);
type "after delete, name = bb has $(i) records";

EX3ブック内のすべてのシートをエクスポート

string dbName$=page.LongName$ + ".sqlite";
string strPath$ = %Y%(dbName$);
strPath$=;
doc -e LW {
	type "Adding [%H]%(wks.Name$)";
	wks.db.export(strPath$);
}