NULL(データなし)の設定方法を勉強した free48
Thursday,July,4,2013 mysql> create table sadachika_books.sadachi_nulltest(sada_num1 int not null, sada_num2 int null, sada_num3 int); *カラムsada_num1のINT型null(データなし)の入力を無効 カラムsada_num2のINT型nullの入力は有効設定、以下2番目と同じ ↑データベース名 ↑テーブル名 Query OK, 0 rows affected (2.61 sec) ○テーブルを表示する mysql> show tables from sadachika_books; sada_personal sadachi_doods sadachi_nulltest *追加されたね sadachi_personal sadachika_magazine sadachika_novel ○テーブルの構造を見る mysql> show columns from sadachika_books.sadachi_nulltest; *columns(新聞など印刷物の)縦の段; 欄. Field Type Null Key Default Extra sada_num1 int(11) NO NULL *Nullの項目がNO無効になった sada_num2 int(11) YES NULL sada_num3 int(11) YES NULL SHOW COLUMNS FROM sadachi_nulltest FROM sadachika_books LIKE 'sada_num1'; Field Type Null Key Default Extra sada_num1 int(11) NO NULL *Nullの項目がNO無効になった ○作成したテーブル(sadachi_nulltest)の定義を確認してみる mysql> show create table sadachi_nulltest\G *********** 1. row ************** Table: sadachi_nulltest Create Table: CREATE TABLE 'sadachi_nulltest'( 'sada_num1' int(11) NOT NULL, *NULLが無効に設定された カムラの名前sada_num1、INT型 'sada_num2' int(11) DEFAULT NULL, *カムラの名前sada_num2、INT型 'sada_num3' int(11) DEFAULT NULL, *カムラの名前sada_num3、INT型 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 *デフォルトでcp932になるみたい 指定する場合は、文字セットと照合順序を指定してデータベース(フォルダ)を作成 1 row in set (0.61 sec) *例えば、こんな感じ、忘れないために書いておくmysql> create database sadachika_cp932db character set cp932; *↑デフォルトはInnoDBだが、指定する場合のためにメモを残しておく InnoDBを変えたりするには、mysql> create table sadachika_novel(sada_id int) engine=MyISAM; *INT型 MyISAMと入力 ○テーブルの詳細情報を取得する mysql> show table status\G SHOW TABLE STATUS FROM sadachika_books LIKE 'sadachi_nulltest'\G **************** 1.row ********************** Name: sadachi_unlltest Engine: InnoDB Version: 10 Row_format: Compact Rows: 0 Avg_row_length: 0 Data_length: 16384 Max_data_length: 0 Index_length: 0 Data_free: 0 Auto_increment: NULL Create_time: 2013-07-04 04:01:43 Update_time: NULL Check_time: NULL Collation: utf8_general_ci Checksum: NULL Create_options: Comment: ○データを格納する mysql> create table sadachika_books.sadachi_personal(sada_id int, sada_name varchar(20)); mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values('12','12','12'); Query OK 1 row affected (0.00 sec) mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values('sadachika','sadachika','sadachika'); ERROR *ノーマルに入力した mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values('null','sadachika','sadachika');ERROR mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values('sadachika','null','null');ERROR insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values('13','null','null'); ERROR mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values('sadachika'); ERROR mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values('SADACHIKA'); ERROR mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values('13'); ERROR mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values('13','13','13'); Query OK 1 row affected (0.00 sec) mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values('13','',''); ERROR mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values('13',null,null); Query OK 1 row affected (0.00 sec) mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values('13',,); ERROR mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values('13', ,); ERROR mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values('14','14','14'); *シングルクオーテイションの数字はOK Query OK 1 row affected (0.03 sec) mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values('sadachika',null,null); ERROR mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values('abc15',null,null); ERROR mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values('16',null,null); *シングルクオーテイションの数字はOK Query OK 1 row affected (0.01 sec) mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values(17); ERROR mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values(17,,18); ERROR mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values(17,null,18); *シングルクオーテイション無し Query OK 1 row affected (0.01 sec) mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values(null,19,19); ERROR mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values(20,null,sadachika); ERROR mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values(21,null,null); *シングルクオーテイション無し Query OK 1 row affected (0.03 sec) mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values(21,null,'sadachika'); ERROR Query OK 1 row affected (0.03 sec) mysql> insert into sadachika_books.sadachi_nulltest(sada_num1, sada_num2, sada_num3) values(22,null,'22'); *シングルクオーテイションの数字はOK Query OK 1 row affected (0.03 sec) 文字が入力ができない INT型は英語が入力できず、数字のみの入力が可能みたい(シングルクオーテイション有る無しにかかわらず) ○テーブルの中身の表示 mysql> select * from sadachi_nulltest; sada_num1 sada_num2 sada_num3 12 12 12 13 13 13 13 NULL NULL 14 14 14 16 NULL NULL 17 NULL 18 21 NULL NULL 22 NULL 22 ○テーブルの詳細情報を取得する mysql> show table status\G SHOW TABLE STATUS FROM sadachika_books LIKE 'sadachi_nulltest'\G **************** 1.row ********************** Name: sadachi_unlltest Engine: InnoDB Version: 10 Row_format: Compact Rows: 8 *8回の入力がカウントされた Avg_row_length: 2048 Data_length: 16384 Max_data_length: 0 Index_length: 0 Data_free: 0 Auto_increment: NULL Create_time: 2013-07-04 04:01:43 Update_time: NULL Check_time: NULL Collation: utf8_general_ci Checksum: NULL Create_options: Comment: ○現在接続されているデーターベース MySQL> select database(); database() sadachika_books *データベースsadachika_booksへ接続されている
* 参考にしたサイトは→ こちら です。
これは赤色の文字例です。
これは青色の文字例です。