• ベストアンサー

.sqlのファイルをそのままコマンドプロンプトから読み込んで、テーブルを作成する方法

コマンドクライアントから"\.m_member.sql"などと入力してテーブルを作成する方法がありますが、どうやってやるでしょうか? (要するにはエディタでmysqlコードを書いて、.sql拡張子で保存して、コマンドプロンプトから、その.sqlのついたファイルをそのまま読み込んで自動的にテーブルを作成するみたいな感じだと思いますが…) まず、コマンドプロンプトを立ち上げて、 "mysql -u ○○×× -p ○○××"と入力して Enter password:と入力要求されたら、そのままパスワードを入力してSQLにログインします。 そして、mysql>と入力要求されたら、 "mysql>\.m_member.sql"と入力したところ、 ERROR: Usage: \. <filename> | source <filename> と表示されてしまいます。 このようなメッセージが表示したら、どのように入力すれば宜しいでしょうか。

  • MySQL
  • 回答数3
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
  • auty
  • ベストアンサー率58% (284/486)
回答No.3

フルパス名(C:\からはじまる)を入力するのが面倒な場合は、 次のような方法もあります。 Mysqlをコマンドプロンプトから起動するとき、つまり    mysql -u ○○×× -p ○○×× を入力するときのディレクトリがカレントディレクトリとなります。これは、    C:\Users\なまえ> と出ていると思いますが、コマンドcdでも確かめることが出来ます。    C:\Users\なまえ>cd     したがって、Mysqlの起動前に次のいずれかを準備しておけば    mysql>\. m_member.sql で済みます。 ---------------------------------------------------------------------------- 1. カレントディレクトリに必要なファイル(m_member.sql等)を作成またはコピーしておく。 1. 必要なファイル(m_member.sql等)のあるディレクトリにcdコマンドで移動しておく。    C:\Users\なまえ>cd (m_member.sql等)のあるディレクト名 ----------------------------------------------------------------------------

masa_go
質問者

お礼

ご回答ありがとうございました。参考にさせていただきます。 MySQLの勉強がまだ必要だったみたいです。

その他の回答 (2)

回答No.2

MySQLに接続後、c:\temp\sql\test1.txtから入力する例です。 (1)「\.」を使う方法 \. c:\temp\sql\test1.txt ↑「\.」の後に、1個以上の空白を入れてください (2)「source」を使う方法 source c:\temp\sql\test1.txt ><filename> 「この場所」に、ファイル名を入れるという意味です。 >"|" orの意味です。つまり、「どちらかを指定」という意味になります。 これらは、プログラミング言語やSQLなどの構文規則で、一般的に使われる記法です。

masa_go
質問者

お礼

ご回答ありがとうございました。参考にさせていただきました。

  • SAYKA
  • ベストアンサー率34% (944/2776)
回答No.1

>Usage: \. <filename> | source <filename> ファイル名と実行記号の間、スペースが必要みたいだけど入力側には無いようだね。 それじゃない?

masa_go
質問者

補足

すみません。もう少し具体的な説明をいただければ…と思います。分かる方によろしくお願いいたします。 コマンドプロンプトから.sqlのファイルを呼び出して自動的に.sqlの書かれているコードをそのままテーブルに載せる方法とかありますでしょうか。 また、 ERROR: Usage: \. <filename> | source <filename> は、エラー、使い方(Usage)は"\. <filename> | source <filename>"のように入力したら良いと言っているみたいですが、どのように入力したら良いでしょうか。<filename>とか"|"とかsourceの意味が全然分かりません。

関連するQ&A

  • コマンドプロンプトからMySQLに接続できない

    こんばんは。 スタート→すべてのプログラム→MySQL→MySQL Server 5.0→MySQL Command Line Client からパスワードを入力するとMySQLに接続できるのですが、コマンドプロンプトから mysql -u username -p を実行してしてパスワードを入力すると ERROR 1045 (28000): Access denied for user 'username'@'localhost' (using password: YES) と表示されて接続できません。 コマンドプロンプトから接続するにはどうすればいいのでしょうか。 宜しくお願い致します。

  • MySQLでコマンドプロンプトでモニタが起動できません。

    MySQLをインストールしてコマンドプロンプトを開いて本の説明どおりに作業を行ってもうまくいきません。 本の内容は コマンドプロンプト ↓ cd c:\mysql\binを入力 ↓ プロンプトが C:\myaql\bin>に変化 ここまではうまくいきます。 そのあと 続いてmysqldと入力 ここで画面上何も起こらないとかいてありますがまたC:\myaql\bin>が表示されてしまいます。 そして別画面で新たにコマンドプロンプトを開き cd c:\mysql\binと記入してディレクトリを移り mysqlと入力すると Welcome to MySQL monitor と表示されると本には書いてありますが 私の場合ERROR 1045:Access denied for user 'ODBC'@'localhost'(using password: NO) と表示されてしまい次に進めません。 なにがいけないのでしょうか。 よろしくお願いいたします。

    • ベストアンサー
    • MySQL
  • コマンドプロンプト 入力値を格納したい

    作成したバッチファイルを起動し、パスワードを要求しますが、以降は要求せずに、最初にコマンドプロンプトで入力された値をセットして起きたいのですが、どうしたらよいか教えてください。ちなみに、コマンドプロンプトでパスワードを入力する際は、値は表示されないようにしたいです。

    • ベストアンサー
    • MySQL
  • コマンドプロンプトから起動できない

    SQL初心者です。こちらのサイトを参考に http://mysqlweb.net/category/3971191-1.html MySQL5.1.41をWindows7にインストールしました。Windowsサービスからは問題なく起動できるのですがコマンドプロンプトから「net start mysql」と入力して起動しようとすると システムエラー5が発生しました。 アクセスが拒否されました。 と出てWindowsサービスで確認してもサービスは停止したままです。なおWindowsサービスから起動した後は特に不具合はなさそうです。何か設定に誤りがあるのでしょうか?よろしくお願いいたします。m(  )m

  • mysqlでsqlファイルを実行したい

    コマンドプロンプトを起動して、mysqlで、sqlファイルを一括実行したいのですが、次の構文ですと、データベース名を入れなければなりません。データベースの作成もsqlファイルの中に書いてあるので、この段階では、データベースが存在しません。データベース名を入れないでsqlファイルを実行する構文がありましたら教えてください。 mysql -u root -D [dbName] -p < [FileName].sql

    • ベストアンサー
    • MySQL
  • バッチファイル作成

    WindowsにMySQLを入れました。そこに、データベースやテーブルの作成をコマンドプロンプトからではなく、バッチで実行したいのですが、とりあえず、create database。sql と create table のテキストファイルは、作ったものの、どうしたらいいのかわかりません。教えてください。

    • ベストアンサー
    • MySQL
  • コマンドプロンプト

    sql文でコマンドプロンプトを使用しています。ここで全角かな、漢字を入力するにはどうしたらいいのでしょうか?

  • コマンドプロンプトについて教えてください

    お手数ですが教えてください。 コマンドプロンプトでSQL*LORDERを起動するバッチを 作成したいのですが以下の条件がうまくいきません。 「ロードするデータ(テキストファイル)が0件(データなしの0KB) であればSQL*LORDERを起動しない」というのはどのようにすれば 解決できますか? コマンドプロンプトのSET文でTYPE文の結果を環境変数に入力することができませんでした。 また、IF文にDIRの結果を記述できませんでした。 データがない場合はSQL*LORDERを失敗させることは出来ましたが 現在入っているデータが初期化されてしまいました。 なにかいい方法はないでしょうか? よろしくおねがいします。

  • MySQL5でコマンドプロンプトでの起動/停止が出来ない

    お世話になります。 今日、MySQL5.0.21をインストールしました。 ※インストール中、パスワードを設定しました。 [コントロールパネル]-[サービス]で MySQLを自動起動または、手動で起動している場合は MySQL Administratorでログイン出来ますが、 [コントロールパネル]-[サービス]を起動していないと MySQL Administratorでログインできません。 とても不便なので、 [コントロールパネル]-[サービス]で”手動”のままで MySQLを起動しないで、コマンドプロンプトで 起動できないものかと調べると、 コマンドプロンプトで mysql[ENTER] または mysql -u root -p[ENTER]後パスワード入力 とすると、起動できると知り行ってみると、 ERROR 2003: Can't connect to MySQL server on 'localhost' (10061) と表示され起動できません。 MySQL Command Line Clientを起動し Enter password:パスワードを入力 しても、全く起動されません。 net start mysql[ENTER] と起動としても、起動できません。 MySQL5.0.21では、コマンドプロンプトでの 起動/停止は出来ないのでしょうか? Pathは C:\Program Files\MySQL\MySQL Server 5.0\bin となっています。 ご教授お願い致します。

  • コマンドプロンプトのバッチファイルについて教えてください

    お手数ですが教えてください。 コマンドプロンプトでSQL*LORDERを起動するバッチを 作成したいのですが以下の条件がうまくいきません。 「ロードするデータ(テキストファイル)が0件(データなしの0KB) であればSQL*LORDERを起動しない」というのはどのようにすれば 解決できますか? コマンドプロンプトのSET文でTYPE文の結果を環境変数に入力することができませんでした。 また、IF文にDIRの結果を記述できませんでした。 データがない場合はSQL*LORDERを失敗させることは出来ましたが 現在入っているデータが初期化されてしまいました。 なにかいい方法はないでしょうか? よろしくおねがいします。