*** 着地点: OLEDB+mdbのデータソースを元にVB.NETからfyiReporting RDLレポートを印刷する ***
前回は空の新規mdbファイルを作成した。
今回はその中に新規テーブルの作成にトライ。
今回はその中に新規テーブルの作成にトライ。
今までのRDLレポートのテストで使用していたテーブルに、コラムを1つ追加する事に変更することにした。
今回からのコラム名は下記の通り。
<id><report_id><code><name><color><quantity><unit_price><amount>
今回からのコラム名は下記の通り。
<id><report_id><code><name><color><quantity><unit_price><amount>
<id>は、自動で番号が増えるインデックスコラム、
<report_id>は、レポートに出力するデータのIDとする。
<report_id>は、レポートに出力するデータのIDとする。
早速コードを記述していくが、今回も苦戦した。
理由は、アクセス(mdb)のSQLと、慣れ親しんでいるMySQLのSQLとの違いのせいだ。
MySQLのSQLはISO標準に近いと私は認識しているので、おそらくアクセスのSQLが少し特別なのだろうと思う。
理由は、アクセス(mdb)のSQLと、慣れ親しんでいるMySQLのSQLとの違いのせいだ。
MySQLのSQLはISO標準に近いと私は認識しているので、おそらくアクセスのSQLが少し特別なのだろうと思う。
苦労したのは、自動で番号が増えるコラムの作成。これだけで数時間も費やした。
MySQLでは、
CREATE TABLE テーブル名 (id INTEGER NOT NULL AUTO_INCREMENT)
CREATE TABLE テーブル名 (id INTEGER NOT NULL AUTO_INCREMENT)
アクセスでは、
CREATE TABLE テーブル名 (id AUTOINCREMENT PRIMARY KEY)
CREATE TABLE テーブル名 (id AUTOINCREMENT PRIMARY KEY)
となるようだ。
アクセスの自動で番号が増えるコラムは、データ型を指定しないのである。勉強になった。
AUTO_INCREMENT と AUTOINCREMENT のように表記も異なる。
アクセスの自動で番号が増えるコラムは、データ型を指定しないのである。勉強になった。
AUTO_INCREMENT と AUTOINCREMENT のように表記も異なる。
以下は苦戦して作った新規テーブル作成ファンクション。
---
前回の空の新規mdbファイルを作成も変更した。
(Buttonクリックイベントに適用)
前回の空の新規mdbファイルを作成も変更した。
(Buttonクリックイベントに適用)
次回に続く…