Web SQL データベースのテーブルを作成する - JavaScript

Web SQL データベースのテーブルを作成するコードを作成します。

概要

Web SQLデータベースのテーブルを作成する場合は、CREATE TABLE コマンドを実行します。
CREATE TABLEコマンドについてはこちらの記事を参照してください。

プログラム例

コード

下記のHTMLファイルを作成します。
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title></title>
  <script>

    function Proc() {
      var db = OpenMyDatabase();
      CreateTable(db);
    }

    function OpenMyDatabase() {
      var dbsize = 1000;
      var dbname = "myDB";
      var dbversion = "1.0";
      var dbdescription = "Test Database"
      var db = window.openDatabase(dbname, dbversion, dbdescription, dbsize);
      if (db == null) {
        alert("データベースが開けませんでした。");
      }
      return db;
    }

    function CreateTable(dbobj) {
      dbobj.transaction(
        function (transact) {
          transact.executeSql("CREATE TABLE product ( id, name, price )", [],
            function () { alert("CREATE TABLE SUCCESS"); },
            function () { alert("CREATE TABLE ERROR"); }
          );
        }
      );
    }
  </script>
</head>
<body>
  <p>テーブルの作成 テストページ</p>
  <a href="javascript:Proc();">CreateTable</a><br />
</body>
</html>

解説

SQLコマンドを実行するには、データベースオブジェクトの transaction() メソッドを実行します。
transaction メソッドに与えたコールバック関数でtransactionオブジェクトの executeSql() メソッドを実行します。

実行結果

上記のHTMLファイルをWebブラウザで表示します。下図のページが表示されます。^

[CreateTable]リンクをクリックします。テーブルが作成され、[CREATE TABLE SUCCESS]のダイアログが表示されます。


なお、再度[CreateTable]リンクをクリックして、CREATE TABLEコマンドを実行すると、下図のエラーメッセージが表示されます。 すでにテーブルが作成されているためエラーが発生します。


著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
最終更新日: 2021-05-16
作成日: 2021-05-15
iPentec all rights reserverd.