はじめに
MySQL Workbenchを使っていて、不可解なエラーに悩まされたことはありませんか?
大変便利なツールですが、言語が英語なこともあり原因の特定に困ってしまうことも多いですよね。
ここでは、特にSQLファイルを読み込んで実行する時によく発生するエラーの原因と対処方法を紹介します。
MySQL Workbenchとは
MySQL Workbenchとは、データベースの設計・開発・管理のためにMySQLから配布されている公式ツールです。
グラフィカルでわかりやすいインターフェースなので、データベースエンジニアだけではなくビジネス部門でのデータ分析などにも広く利用されています。
中村講師も「はじめてのSQL・データ分析 -データベースのデータをビジネスパーソンが現場で活用するためのSQL初心者向けコース」で使用方法を紹介していますので、詳しい使用方法について学びたい方は受講を検討ください。
エラー原因(1)SQLファイルパスに日本語が含まれる
いざデータベースを作成し「Run SQL Script」からSQLデータを読み込んで実行しようとした時によくあるエラーの一つは、そのSQLデータファイルのパスに日本語が含まれるため読み込めないというものです。
エラー画面としては下記のようなもので、MySQL Workbenchは日本語対応していないためこういったエラーが出ると考えられます。
実際、下記のようにユーザ名が日本語(例では「山田太郎」)になっていて、そのユーザフォルダの「ダウンロード」に入っている場合などに発生します。
この場合は、ファイルパスに日本語が入らない場所に読み込みたいファイルを配置しましょう。
例えばWindowsならばCドライブの直下に「temp」などのフォルダを作り「C:¥temp¥」の下に置いてから再度「Run SQL Script」でファイルを指定してみてください。
エラー原因(2)SQL接続時のパスワードが間違っている
もう1つの頻発エラーは、最初にデータベースに「Run SQL Script」をしようとする際に聞かれるSQL接続認証でパスワードを間違えたためアクセス拒否されるというものです。
エラー画面としては下記のようなものが出ます。
実際に、MySQL Workbenchを起動して初回の「Run SQL Script」では下記の通りSQL接続認証画面が出ます。
ここで間違ったパスワードを入力してしまうと先ほどのようなエラーとなるのです。
なお、講座「はじめてのSQL・データ分析 -データベースのデータをビジネスパーソンが現場で活用するためのSQL初心者向けコース」では演習につき特にパスワードの設定を行わないため、この画面ではPasswordは空欄のまま「OK」を押せば問題ありません。
それでも解消しない場合はコピー&ペーストで実行しよう
よくあるエラー2種類を紹介しましたが、この他のファイル読み込みエラーがある場合や、紹介した方法で解消しない場合は直接ファイルの内容をコピー&ペーストして実行することが可能です。
まず、開きたいSQLデータファイルをMySQL Workbenchの作業ウィンドウに直接ドラッグ&ドロップします。ウィンドウにファイルの中身が表示されることを確認しましょう。
次に、このSQLをどのデータベースに対して実行するかを指定する必要があります。
すでにデータベースは作成してあるものとし、下記の通り左側「Navigator」ウィンドウの「Schemas」タブにある対象のデータベース名をダブルクリックしてください。
太字になれば指定完了です。
この状態で、先ほど開いたSQLデータのウィンドウにある雷のマークをクリックします。するとSQLが実行されます。下の「Output」画面に実行結果が表示され、左下に「Query Completed」と出れば実行完了です。
先ほど太字にしたデータベース名を右クリックして「Refresh All」をクリックし、クエリ実行結果を反映させましょう。
講座のサンプルデータを実行した場合は、データベースの中に複数のテーブルが作成されるはずです。
まとめ
MySQL WorkbenchでSQLファイルを読み込んで「Run SQL Script」を実行する時に発生する主なエラーとその原因・対策を紹介しました。
もし解消しない場合は最後の「それでも解消しない場合はコピー&ペーストで実行しよう」を参考に実行してみてください。
また、MySQL Workbenchが返してくるエラー文を自分で検索してみると解決方法が見つかることもあるので、チャレンジしてみるのもいいでしょう。
データベースを扱うのはとても楽しいので、こういったつまずきに悩まされずに引き続きツールの使用方法取得を目指して頑張ってください。
動画で学ぶプログラミング入門
オンラインスクールProglus(プログラス)でプログラミングを学んで、創れる人になろう!
在宅学習応援!今なら複数の基礎コースが無料!!
今すぐ詳細を確認する