-- 创建数据库
CREATE DATABASE IF NOT EXISTS t1 ;
-- 查询数据库详细创建语句
SHOW CREATE DATABASE t1;
-- 修改数据库编码方式
ALTER DATABASE t1 CHARACTER SET = utf8;
-- 删除数据库
DROP DATABASE t1;
use t1;
-- 创建数据表
CREATE TABLE IF NOT EXISTS tb1(
id INT,
username VARCHAR(32)
);
-- 表更名
ALTER TABLE tb3 RENAME tb33;
RENAME TABLE tb33 TO tb3;
-- 查看数据表列表
show tables from mysql;
-- 查看数据表的结构
SHOW COLUMNS FROM tb1;
-- 插入数据
INSERT INTO tb1 (id,username) VALUES(1,'test1');
-- 查看表数据
SELECT * FROM tb1;
-- 创建表自动编号 auto_increment
-- 与主键组合使用,起始值为1,每次增量为1
CREATE TABLE tb2(
id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(30) NOT NULL
)
------------------------修改数据表结构---------------------------------------------
-- 添加单列
ALTER TABLE tb2 ADD age SMALLINT UNSIGNED;
ALTER TABLE tb2 ADD pwd SMALLINT UNSIGNED AFTER username;
-- 添加多列
ALTER TABLE tb2 ADD (test1 VARCHAR(20),test2 VARCHAR(12));
-- 删除列
ALTER TABLE tb2 DROP pwd;
-- 删除多列
ALTER TABLE tb2 DROP test1,DROP test2;
-- 改变列所在类型、位置等
ALTER TABLE tb2 MODIFY realname VARCHAR(20) FIRST;
-- 改变列所在名称、类型、位置等
ALTER TABLE tb2 CHANGE realname realname1 VARCHAR(20);
-----------------------约束操作--------------------------------------------
CREATE TABLE tb3(
username VARCHAR(10)NOT null,
pid SMALLINT UNSIGNED
);
-- 添加主键约束
ALTER TABLE tb3 ADD CONSTRAINT PK_tb3_id PRIMARY KEY (pid);
-- 删除主键约束
ALTER TABLE tb3 DROP PRIMARY KEY;
-- 添加唯一约束
ALTER TABLE tb3 ADD UNIQUE KEY (username);
-- 查看约束
SHOW INDEX FROM tb3;
-- 删除唯一约束 根据约束名称,不是列名
ALTER TABLE tb3 DROP INDEX username;
-- 添加外键约束
ALTER TABLE tb3 ADD FOREIGN KEY (pid) REFERENCES tb2 (id);
-- 删除外键约束,
-- 先查看外键约束的名字
SHOW CREATE TABLE tb3;
-- 执行删除外键约束
ALTER TABLE tb3 DROP FOREIGN KEY 外键名