WordPressテンプレート制作、ウェブデザイン技能検定に挑戦中

前の記事:CSSのopacityプロパティが意図しない範囲まで適用される問題の解決法
HOME
次の記事:ロゴデザインを一新 擬似要素の画像サイズを変更する方法

ツール等を使わずにEXCELのデータを一括でMySQLのテーブルに移す方法

Web知識

 

この度EXCELに記録を付けていたデータをそのままMySQLに移して、Web上であれこれしたいという事になりました。

しかし私の使っているEXCELはMicrosoft製品ではありません。本家のMicrosoft製ならデータベースとの連携が取り易いとの事でしたが、少し調べた感じ、自分の使っている非正規のEXCELでデータベース連携を取るのは難しい印象を受けました。

四苦八苦した結果、多少強引ですがどのEXCELでもMySQLにデータを移す事が出来る方法を見つけたので、備忘録として残しておきます。

 

 

EXCELデータ

EXCELデータ

今回DBに移行させたいデータがこのようになっていたとしましょう。

 

MySQLテーブル

MySQLテーブル作成

移行先のMySQLで、データを全て格納出来るようなテーブルを作成します。

 

 

さて、MySQLの場合、テーブルにデータを挿入する命令コードは次の通りです。

INSERT INTO テーブル名(カラム名1, カラム名2, カラム名3) VALUES(値1, 値2, 値3);

 

 

先頭と最後尾のセルに命令を追加

先ほどのコードを参考に、EXCELを開きセルの先頭と最後尾に命令が成立するよう入力を行います。要はEXCEL上で命令コードを組み立て、それをコピー&ペーストしてSQLを実行しようという算段です。

しかしこのまま命令コードを持っていってもエラーになります。値が文字列の場合はシングルクォーテーション、ないしはダブルクォーテーションで文字列を囲まないといけないからです。

 

 

EXCEL 書式設定 アットマークの利用

エクセルでは書式設定から、アットマークの前後にダブルクォーテーションを配置し、その中に任意の文字を入力する事で、各セルのデータに付随させたい文字を一括で設定出来ます。

 

EXCEL書式設定 シングルクォーテーションを付与

この機能を利用して、VALUES(値1, 値2, 値3)に該当する部分にシングルクォーテーションとカンマを付けます。先頭の値の前に余分なカンマを付けないように注意しましょう。

 

 

EXCEL ジャンプ機能の利用

このやり方で空白のセルが存在すると、DBに渡すデータが不十分となりエラーが出ます。空白のセルにもしっかりシングルクォーテーションとカンマを入力します。これが最後の一手間です。

まず対象セルを全選択し、ショートカットキーCtrl+gでジャンプ機能を呼び出します。

 

空白のセルだけが選択された状態

【空白セル】を選択しジャンプを押すと、空白のセルだけが選択された状態になります。

 

EXCEL 置き換え機能利用

空白セルを選択したままの状態で、ショートカットキーCtrl+hから置き換え機能を呼び出します。図だと分かり難いと思いますが、置換前のテキストを空白、置換後のテキストを半角スペースとしてあります。

 

空白セルに半角スペースが挿入された

それが半角スペースであれ、セルに入力があると書式設定が適用されるので、空白のセルにもカンマとシングルクォーテーションが表示されるようになります。

 

 

コピペでSQL実行

あとはEXCELで組み立てた命令コードをコピー&ペーストでMySQLに持っていき実行すれば作業完了です。

 

 

作業完了

命令の組み立て方を変えれば他のDBでも応用出来るはずです。

 

||

ツール等を使わずにEXCELのデータを一括でMySQLのテーブルに移す方法

0件のコメント

コメント

カテゴリ

月別アーカイブ