SAK 図書館

SAK Streets メインストリート 図書館・カフェ 一覧 SAK Streets 検索
| VB | SQL | Perl | PHP | ASP | JSP | C | PC | HP | FAQ | フリーソフト |

MySQL 編2 - ODBC + VB ADO、テーブル作成、レコード更新、レコード参照

■MySQL ODBC + VB ADO テーブル作成

  ・テーブル作成で、日本語項目名が指定できるかテストする。
    問題なく作成できる。

  Dim cn As Variant
  Dim sql As String

'** ODBC 接続
  Set cn = CreateObject("ADODB.Connection")
  cn.Open "dsn=MySQL;uid=sak;pwd="
  cn.CursorLocation = 3

'** テーブル作成
  sql = "create table testm ("
  sql = sql & "キー char(008),"
  sql = sql & "データ1 int8,"
  sql = sql & "データ2 int8,"
  sql = sql & "データ3 int8"
  sql = sql & ") type=InnoDB;"
  cn.Execute sql

'** ODBC 接続解除
  cn.Close

■MySQL ODBC + VB ADO レコード更新

  ・レコード追加で、日本語データが指定できるかテストする。
    問題なく追加できる。

  Dim cn As Variant

'** ODBC 接続
  Set cn = CreateObject("ADODB.Connection")
  cn.Open "dsn=MySQL;uid=sak;pwd="
  cn.CursorLocation = 3

'** トランザクション開始
  cn.BeginTrans

'** レコード処理
  cn.Execute "insert into testm values ('x001', 1, 2, 3)"
  cn.Execute "insert into testm values ('x002', 10, 20, 30)"
  cn.Execute "insert into testm values ('日本語', 1, 2, 3)"
  cn.Execute "insert into testm values ('かんじ', 10, 20, 30)"

'** トランザクション終了
  cn.CommitTrans

'** ODBC 接続解除
  cn.Close

■MySQL ODBC + VB ADO トランザクションロールバックテスト

  ・昔の MySQL はトランザクションをサポートしていなくて悲しかったが、
    最近のはトランザクションを利用する設定は面倒であるが、ちゃんと
    ロールバックすることができる。

  Dim cn As Variant

'** ODBC 接続
  Set cn = CreateObject("ADODB.Connection")
  cn.Open "dsn=MySQL;uid=sak;pwd="
  cn.CursorLocation = 3

'** トランザクション開始
  cn.BeginTrans

'** レコード処理
  cn.Execute "insert into testm values ('t001', 1, 2, 3)"
  cn.Execute "insert into testm values ('t002', 10, 20, 30)"
  cn.Execute "insert into testm values ('トラン', 1, 2, 3)"
  cn.Execute "insert into testm values ('ザクシ', 10, 20, 30)"

'** トランザクションキャンセル
  cn.RollbackTrans

'** ODBC 接続解除
  cn.Close

■ロールバック確認

select * from testm;

+--------+---------+---------+---------+
| キー   | データ1 | データ2 | データ3 |
+--------+---------+---------+---------+
| x001   |       1 |       2 |       3 |
| x002   |      10 |      20 |      30 |
| 日本語 |       1 |       2 |       3 |
| かんじ |      10 |      20 |      30 |
+--------+---------+---------+---------+

■MySQL ODBC + VB ADO レコード参照

  ・レコード参照で、日本語項目、日本語データが参照できるかテストする。
    問題なく参照できる。

  Dim cn as Variant
  Dim rs as Variant

'** ODBC 接続
  set cn = CreateObject ("ADODB.Connection")
  cn.Open "dsn=MySQL;uid=sak;pwd="
  cn.CursorLocation = 3

'** レコードセットオープン
  set rs = cn.Execute("select * from testm")

'** レコード処理
  do until rs.EOF
    print rs("キー").name & " | " & rs("キー")
    rs.MoveNext
  loop

'** レコードセットクローズ
  rs.Close

'** ODBC 接続解除
  cn.Close

■その他 ADO 操作

  ・SQL に多少の違いはあっても、ADO そのものの操作は Oracle と変わらない。
    『VB ADO + SQL 応用編』、『ASP VB Script ADO + SQL 応用編』
    を参考にして下さい。

■MySQL 編資料
■PostgreSQL 編、JAVA Servlet、JSP 編資料
■SQL 基礎編資料
■SQL 基礎実地編資料
■SQL チューニング編資料
■Oracle PL/SQL 編資料
| VB | SQL | Perl | PHP | ASP | JSP | C | PC | HP | FAQ | フリーソフト |

SAK Streets メインストリート 図書館・カフェ 一覧 SAK Streets 検索



Copyright (C) 1999-2017 Y.SAK