できるPRO MySQL できるPROシリーズ Kindle版の内容をまとめる。
NULL
を含んでいないもの。項目 | 主キー | ユニークキー |
---|---|---|
重複する値 | × | × |
NULL 値 |
× | ○ |
CREATE DATABASE dekirusample2;
USE dekirusample2;
MariaDB [(none)]> CREATE DATABASE dekirusample2;
Query OK, 1 row affected (0.02 sec)
MariaDB [(none)]> USE dekirusample2;
Database changed
CREATE TABLE members(
id INT PRIMARY KEY,
name VARCHAR(16)
);
MariaDB [dekirusample2]> CREATE TABLE members(id INT PRIMARY KEY, name VARCHAR(16));
Query OK, 0 rows affected (0.07 sec)
INSERT INTO members VALUES(0, '小西昂輔');
MariaDB [dekirusample2]> INSERT INTO members VALUES(0, '小西昂輔');
Query OK, 1 row affected (0.01 sec)
INSERT INTO members VALUES(0, '太宰治');
MariaDB [dekirusample2]> INSERT INTO members VALUES(0, '太宰治');
ERROR 1062 (23000): Duplicate entry '0' for key 'PRIMARY'
INSERT INTO members (name) VALUES('上司幾太');
MariaDB [dekirusample2]> INSERT INTO members (name) VALUES('上司幾太');
ERROR 1062 (23000): Duplicate entry '0' for key 'PRIMARY'
INSERT INTO members VALUES(NULL, '大庭葉蔵');
NULL
は指定できない。MariaDB [dekirusample2]> INSERT INTO members VALUES(NULL, '大庭葉蔵');
ERROR 1048 (23000): Column 'id' cannot be null
NULL
は挿入できるので注意
ALTER TABLE members
ADD COLUMN mailid VARCHAR(32) UNIQUE KEY;
MariaDB [dekirusample2]> ALTER TABLE members ADD COLUMN mailid VARCHAR(32) UNIQUE KEY;
Query OK, 0 rows affected (0.19 sec)
Records: 0 Duplicates: 0 Warnings: 0
INSERT INTO members values (2, '直治', 'naoji');
MariaDB [dekirusample2]> INSERT INTO members values (2, '直治', 'naoji');
Query OK, 1 row affected (0.01 sec)
INSERT INTO members values (3, 'なおじ', 'naoji');
MariaDB [dekirusample2]> INSERT INTO members values (3, 'なおじ', 'naoji');
ERROR 1062 (23000): Duplicate entry 'naoji' for key 'mailid'
INSERT INTO members values (3, 'なおじ', NULL);
NULL
値は挿入できる。MariaDB [dekirusample2]> INSERT INTO members values (3, 'なおじ', NULL);
Query OK, 1 row affected (0.01 sec)
SELECT * FROM members;
MariaDB [dekirusample2]> SELECT * FROM members;
+----+----------+--------+
| id | name | mailid |
+----+----------+--------+
| 0 | 小西昂輔 | NULL |
| 2 | 直治 | naoji |
| 3 | なおじ | NULL |
+----+----------+--------+
3 rows in set (0.02 sec)