創建數據庫
create database practice;
顯示數據庫
show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| abc |
| dearabao |
| hello |
| link_draw |
| link_group |
| link_user |
| mysql |
| performance_schema |
| person |
| practice |
| tempdb |
| test |
+--------------------+
使用數據庫
use practice;
創建數據表
create table `practice_2`(
`id` int(11) unsigned not null auto_increment comment '主鍵id',
`name` varchar(16) NOT NULL COMMENT '姓名',
`age` tinyint(4) NOT NULL COMMENT '年齡',
`CID` bigint(20) NOT NULL COMMENT '身份證ID',
PRIMARY KEY(`id`),
UNIQUE KEY `uk_cid` (`CID`)
) ENGINE=InnoDb DEFAULT CHARSET=utf8 COMMENT='測試表';
顯示數據表
show tables;
+--------------------+
顯示數據表結構
show create table practice_1;
+
| Table | Create Table |
+------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| practice_1 | CREATE TABLE `practice_1` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '主鍵id',
`name` varchar(16) NOT NULL COMMENT '姓名',
`age` tinyint(4) NOT NULL COMMENT '年齡',
`CID` bigint(20) NOT NULL COMMENT '身份證ID',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_cid` (`CID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='測試表' |
+------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
插入數據
insert practice_1 (`name`, `age`, `CID`) values ('jack', 20, 20072222);
mysql> insert practice_1 (`name`, `age`, `CID`) values ('jack', 20, 20072222), ('jhon', 21, 20072003) on duplicate key update `name` = values(name), `age` = values(age), `CID` = values(CID);
Query OK, 1 row affected (0.00 sec)
Records: 2 Duplicates: 0 Warnings: 0
mysql> insert practice_1 (`name`, `age`, `CID`) values ('jack', 20, 20072222);
ERROR 1062 (23000): Duplicate entry '20072222' for key 'uk_cid'
mysql> insert practice_1 (`name`, `age`, `CID`) values ('jack', 20, 20072222) on duplicate key update `name` = values(name), `age` = values(age), `CID` = values(CID);
Query OK, 0 rows affected (0.00 sec)
刪除數據
mysql> delete from practice_1 where CID = 20072103;
Query OK, 1 row affected (0.01 sec)
刪除表數據
## 創建practice_2表
mysql> create table `practice_2`(
-> `id` int(11) unsigned not null auto_increment comment '主鍵id',
-> `name` varchar(16) NOT NULL COMMENT '姓名',
-> `age` tinyint(4) NOT NULL COMMENT '年齡',
-> `CID` bigint(20) NOT NULL COMMENT '身份證ID',
-> PRIMARY KEY(`id`),
-> UNIQUE KEY `uk_cid` (`CID`)
-> ) ENGINE=InnoDb DEFAULT CHARSET=utf8 COMMENT='測試表';
Query OK, 0 rows affected, 2 warnings (0.00 sec)
##
| practice_1 |
| practice_2 |
+--------------------+
2 rows in set (0.00 sec)
## 複製practice_1表數據到practice_2
mysql> insert into practice_2 select * from practice_1;
Query OK, 3 rows affected (0.00 sec)
Records: 3 Duplicates: 0 Warnings: 0
| 1 | jack | 20 | 20072222 |
| 2 | jhon | 21 | 20072003 |
3 rows in set (0.00 sec)
mysql> truncate practice_2; // 表數據被刪, 表結構保存
刪除表
mysql> drop table practice_2;
Query OK, 0 rows affected (0.00 sec)
mysql>
mysql>
1 row in set (0.00 sec)
刪除數據庫
mysql> drop database practise;
Query OK, 0 rows affected (0.01 sec)
聯表去重查詢
| jack |
| jhon |
| Jim |