【MySQL】MySQL(一)SQL语句、约束、数据类型 (2)

创建数据库、并指定字符集

-- 标准语法 CREATE DATABASE 数据库名称 CHARACTER SET 字符集名称; -- 创建数据库db3、并指定字符集utf8 CREATE DATABASE db3 CHARACTER SET utf8; -- 查看db3数据库的字符集 SHOW CREATE DATABASE db3;

练习:创建db4数据库、如果不存在则创建,指定字符集为gbk

-- 创建db4数据库、如果不存在则创建,指定字符集为gbk CREATE DATABASE IF NOT EXISTS db4 CHARACTER SET gbk; -- 查看db4数据库的字符集 SHOW CREATE DATABASE db4;

U(Update):修改

修改数据库的字符集

-- 标准语法 ALTER DATABASE 数据库名称 CHARACTER SET 字符集名称; -- 修改数据库db4的字符集为utf8 ALTER DATABASE db4 CHARACTER SET utf8; -- 查看db4数据库的字符集 SHOW CREATE DATABASE db4;

D(Delete):删除

删除数据库

-- 标准语法 DROP DATABASE 数据库名称; -- 删除db1数据库 DROP DATABASE db1; -- 删除一个不存在的数据库会报错 -- 错误代码:1008 Can\'t drop database \'db1\'; database doesn\'t exist DROP DATABASE db1;

删除数据库(判断,如果存在则删除)

-- 标准语法 DROP DATABASE IF EXISTS 数据库名称; -- 删除数据库db2,如果存在 DROP DATABASE IF EXISTS db2;

使用数据库

查询当前正在使用的数据库名称

-- 查询当前正在使用的数据库 SELECT DATABASE();

使用数据库

-- 标准语法 USE 数据库名称; -- 使用db4数据库 USE db4; DDL-操作数据表

R(Retrieve):查询

查询数据库中所有的数据表

-- 使用mysql数据库 USE mysql; -- 查询库中所有的表 SHOW TABLES;

查询表结构

-- 标准语法 DESC 表名; -- 查询user表结构 DESC user;

查询表字符集

-- 标准语法 SHOW TABLE STATUS FROM 库名 LIKE \'表名\'; -- 查看mysql数据库中user表字符集 SHOW TABLE STATUS FROM mysql LIKE \'user\';

C(Create):创建

标准语法

CREATE TABLE 表名( 列名1 数据类型1, 列名2 数据类型2, .... 列名n 数据类型n ); -- 注意:最后一列,不需要加逗号

数据类型

1. int:整数类型 * age int 2. double:小数类型 * score double(5,2) * price double 3. date:日期,只包含年月日 yyyy-MM-dd 4. datetime:日期,包含年月日时分秒 yyyy-MM-dd HH:mm:ss 5. timestamp:时间戳类型 包含年月日时分秒 yyyy-MM-dd HH:mm:ss * 如果将来不给这个字段赋值,或赋值为null,则默认使用当前的系统时间,来自动赋值 6. varchar:字符串 * name varchar(20):姓名最大20个字符 * zhangsan 8个字符 张三 2个字符

创建数据表

-- 使用db3数据库 USE db3; -- 创建一个product商品表 CREATE TABLE product( id INT, -- 商品编号 NAME VARCHAR(30), -- 商品名称 price DOUBLE, -- 商品价格 stock INT, -- 商品库存 insert_time DATE -- 上架时间 );

复制表

-- 标准语法 CREATE TABLE 表名 LIKE 被复制的表名; -- 复制product表到product2表 CREATE TABLE product2 LIKE product;

U(Update):修改

修改表名

-- 标准语法 ALTER TABLE 表名 RENAME TO 新的表名; -- 修改product2表名为product3 ALTER TABLE product2 RENAME TO product3;

修改表的字符集

-- 标准语法 ALTER TABLE 表名 CHARACTER SET 字符集名称; -- 查看db3数据库中product3数据表字符集 SHOW TABLE STATUS FROM db3 LIKE \'product3\'; -- 修改product3数据表字符集为gbk ALTER TABLE product3 CHARACTER SET gbk; -- 查看db3数据库中product3数据表字符集 SHOW TABLE STATUS FROM db3 LIKE \'product3\';

添加一列

-- 标准语法 ALTER TABLE 表名 ADD 列名 数据类型; -- 给product3表添加一列color ALTER TABLE product3 ADD color VARCHAR(10);

修改列名称和数据类型

-- 修改数据类型 标准语法 ALTER TABLE 表名 MODIFY 列名 新数据类型; -- 将color数据类型修改为int ALTER TABLE product3 MODIFY color INT; -- 查看product3表详细信息 DESC product3; -- 修改列名和数据类型 标准语法 ALTER TABLE 表名 CHANGE 列名 新列名 新数据类型; -- 将color修改为address,数据类型为varchar ALTER TABLE product3 CHANGE color address VARCHAR(30); -- 查看product3表详细信息 DESC product3;

删除列

-- 标准语法 ALTER TABLE 表名 DROP 列名; -- 删除address列 ALTER TABLE product3 DROP address;

D(Delete):删除

删除数据表

-- 标准语法 DROP TABLE 表名; -- 删除product3表 DROP TABLE product3; -- 删除不存在的表,会报错 -- 错误代码:1051 Unknown table \'product3\'DROP TABLE product3;

删除数据表(判断,如果存在则删除)

-- 标准语法 DROP TABLE IF EXISTS 表名; -- 删除product3表,如果存在则删除 DROP TABLE IF EXISTS product3; DML-INSERT语句

新增表数据语法

新增格式1:给指定列添加数据

-- 标准语法 INSERT INTO 表名(列名1,列名2,...) VALUES (值1,值2,...); -- 向product表添加一条数据 INSERT INTO product(id,NAME,price,stock,insert_time) VALUES (1,\'手机\',1999,22,\'2099-09-09\'); -- 向product表添加指定列数据 INSERT INTO product (id,NAME,price) VALUES (2,\'电脑\',4999); -- 查看表中所有数据 SELECT * FROM product;

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzwggj.html