ExcelでSQLを使う

エクセルでSQLを使う必須の関数を紹介しします。

ExcelでSQLを使う-003: INSERT文の実行 ー SQLのINSERT文 を実行する

 「人間らしい歩き方を思い出させてくれた」との言葉を残して、パートナー(使用者)はこの世の去った。そのあと、クイールはどのように生きたのか。生まれた瞬間から息を引き取るまでをモノクロームの優しい写真と文章で綴る、盲導犬クイールの生涯。静かな感動の記録!「盲導犬は、ただ道を教えてくれるだけと思っていましたが、でも違いました。いっしょにいるだけで気持ちを明るくしてくれる。友達なんです」(本文より)

▲私ら夫婦がパピーウォーカーした盲導犬H号

 

◇◇◇◇◇

 

  DELETE文、UPDATE文に次ぐテーマは、INSERT文。しかし、それを書き始めようとして、「えっ、えー!」。とんどもない書名の入力ミスに気付いた。「盲導犬クイールの一生」の’イ’がない。該当する[書名]をキーボード入力で訂正してもいいが、ブログの説明を補完する意味で SQLExecute関数を利用して訂正した。(002の画像は訂正後)

 

? SQLExecute("UPDATE [蔵書一覧$A1:F100] 

                      SET 書名='盲導犬クイールの一生' WHERE 書名 LIKE '盲導犬クー%'")

True

 

  今回の訂正では、該当する行を特定するのにパターンマッチを行うキーワードLikeを用いている。注意しなければならないのが、ワイルドカードが’*’ではなくて'%'だと言う事。詳細な説明は後段に譲るが、これは一つの注意点である。

 

ワイルドカード 【wild card】 

 共通の文字や文字列を一括して指定するための特別な文字。コンピューターで検索などに用いる。「*」「?」など。(「IT用語辞典」より)

◇◇◇◇◇

 

 無事に、'盲導犬クール’という誤記を'盲導犬クイール’に訂正できたので、本題に入ることにする。本稿の課題は、SQLのINSERT文を実行(Execute)してDVD 「EIGHT BERROW」を<蔵書一覧>に追加することである。

 

  

 ? SQLExecute("INSERT INTO [蔵書一覧$A1:G100] 

          VALUES 

         (3, 'EIGHT BELLOW(南極物語)','*','ディズニー','F.マーシャル','2019/2/10',null)")

True

 

  さて、データベースアプリケーションの開発に携わっているプログラマー諸氏は、主キーであるIDの値=3を採番していないことに違和感を覚えるに違いない。IDの値を採番しつつINSERT文を実行するやり方については、次稿で紹介する。

 

 本稿は、ここまで。

 

にほんブログ村 IT技術ブログ VBAへ