LoginSignup
0
0

More than 5 years have passed since last update.

MySQL ~ SQLに関する記述・コマンドメモ

Posted at

mysqlコマンド

SQLファイルの位置するディレクトリに移動

$ mysql -uroot -proot DB名 < ファイル名

シェルスクリプトで流す場合

1.シェルスクリプト

hoge.sh

#/bin/sh
id="root"
pass="root"
tbl="DB名"

cmd="mysql -u$id -p$pass $tbl"
$cmd < ファイル名
$cmd < ファイル名
$cmd < ファイル名
$cmd < ファイル名

2.コマンド
shファイルの位置するディレクトリに移動

$ ./hoge.sh

SQLファイルの記述

1.データベース作成

hoge.sql
DROP DATABASE IF EXISTS `DB名`;
CREATE DATABASE IF NOT EXISTS `DB名`;
USE `DB名`;

2.テーブル作成

hoge.sql
DROP TABLE IF EXISTS `テーブル名`;
CREATE TABLE IF NOT EXISTS `テーブル名` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `カラム名` varchar(45) NOT NULL DEFAULT '' COMMENT 'ユーザ名',
  `カラム名` int(11) DEFAULT NULL COMMENT '属性ID',
  `カラム名` varchar(255) NOT NULL DEFAULT '' COMMENT '認証パスワード',
  `カラム名` varchar(255) DEFAULT NULL,
  `カラム名` datetime DEFAULT NULL,
  `カラム名` datetime DEFAULT NULL,
  `カラム名` int(11) NOT NULL DEFAULT '0' COMMENT 'サインイン回数',
  `カラム名` datetime DEFAULT NULL COMMENT 'ログイン日時',
  `カラム名` datetime DEFAULT NULL COMMENT '最終ログイン日時',
  `カラム名` datetime DEFAULT CURRENT_TIMESTAMP,
  `カラム名` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`テーブル名`),
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ENCRYPTION='Y' COMMENT='ログイン情報';

DELETE FROM `テーブル名`;
INSERT INTO `テーブル名` (`id`, `カラム名`, `カラム名`, `カラム名`, `カラム名`, `カラム名`, `カラム名`, `カラム名`, `カラム名`, `lカラム名`, `カラム名`, `カラム名`) VALUES
    (1, '値', '値', '値', NULL, NULL, NULL, '値', '値', '値' '値', '値');

3.テーブル追加

hoge.sql
ALTER TABLE `テーブル名`
ADD COLUMN `カラム名` varchar(255) AFTER カラム名;

4.レコード追加

hoge.sql
DELETE FROM `テーブル名`;
INSERT INTO `テーブル名` (`カラム名`, `カラム名`, `カラム名`, `カラム名`, `カラム名`, `カラム名`, `カラム名`) VALUES
  ('値', '値', '値', NULL, NULL, NULL, NULL),
  ('値', '値', '値', NULL, NULL, NULL, NULL);
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