0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

MySQL sorceコマンド

Last updated at Posted at 2021-09-03

sourceコマンドでテキストファイルからSQLを実行する。

  • MySQLにログイン
  • C:\ProgramData\Temp 等にsourceファイルを保存する
  • sourceコマンドを実行する

sourceファイルを保存

C:\ProgramData\Temp などにsourceファイルを保存する

sourceコマンド

【ポイント】
コマンドプロンプトにsourceファイルをドラッグ&ドロップするとフルパスが自動入力される。

sql
source C:\ProgramData\Temp\ファイル名.sql
  • sourceファイルの拡張子は.txtでも.dllでも.sqlでもOK。
  • 実行結果が成功なら、Query OK,と表示される。

sourceファイル 中身の例(データベースとテーブル定義)

sql
-- ※1
DROP DATABASE IF EXISTS `サンプルデータベース`;
CREATE DATABASE `サンプルデータベース` COLLATE utf8mb4_ja_0900_as_cs_ks;

-- ※2
USE `サンプルデータベース`;

-- ※3
DROP TABLE IF EXISTS `サンプルテーブル`;
CREATE TABLE `サンプルテーブル` (
  `id` int(5) NOT NULL AUTO_INCREMENT,
  `name` VARCHAR(50) NOT NULL,
  `flag_display` BIT(1) default 1,
  `registration_date` DATETIME DEFAULT CURRENT_TIMESTAMP,

  PRIMARY KEY (`列名ID`)
) COLLATE utf8mb4_ja_0900_as_cs_ks;

  • ※1 もし既にサンプルデータベースが存在していたら消す
  • ※2 USEがないと「ERROR 1046 (3D000) at line 10: No database selected」が表示される。
  • ※3 列名IDは「AUTO‗INCREMENT」を設定しているが、必要ないなら、外しても良い。
  • ※3 テーブル内定義にミスがあるとDBのみ作成されて、テーブルは作成されない。
    →例えば、intのDEFAULTに" "を設定すると、型が合わないのでエラーとなる。
  • デフォルトの値を付けたい場合は「DATETIME DEFAULT CURRENT_TIMESTAMP」のように設定する。

    →【公式】https://www.dbonline.jp/mysql/table/index6.html

    →【参考】https://mikepon.jp/mysql-create-update-at/

外部キー設定する場合

FOREIGN KEY 外部キー名(子カラム名) REFERENCES 親テーブル名(親カラム名))
項目 説明
FOREIGN KEY 自分のカラムで外部キーにするもの
CREATE TABLE hogehuga(
/* 中略*/
   PRIMARY KEY(sample_id),
   FOREIGN KEY hoge_id(hoge_id) REFERENCES hogeTable(hoge_id)),
   FOREIGN KEY huga_id(huga_id) REFERENCES hugaTable(huga_id))
)COLLATE utf8mb4_ja_0900_as_cs_ks;

https://www.dbonline.jp/mysql/table/index11.html
https://www.techscore.com/tech/sql/SQL3/03_04.html/

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?