单行注释:#注释文字(没空格)
单行注释:-- 注释文字(有空格)
多行注释:/* 注释文字 */,注意不能够嵌套注释;
net stop mysql
net start mysql
-- 查看所有库
show databases;
-- 查看某个库
show create database school_info;
-- 创建库
create database school_info;
-- 创建库指定编码
create database school_info charset utf8;
-- 修改库编码
alter database school_info charset gbk;
-- 删除库
drop database school_info;
create table 表名(
列名 列类型,
列名 列类型,
。。。
);
create table stu(name char(10) not null,sex char(1) not null,age int);
-- 修改表字段 数据类型 约束条件
alter table stu change name name1 varchar(10) not null;
-- 新增表字段
alter table stu add addr char(20),add addr2 char(20);
-- 指定位置新增
alter table stu add id int first;
alter table stu add addr3 varchar(10) after name;
-- 删除表字段
alter table stu drop addr2;
-- 删除表
drop table stu;
字符串 | 长度 | 存储 |
---|---|---|
char | 定长 | 直接存储字符内容 |
varchar | 变长 | 开头由1-2个字节存储该字符的总长度,后面接着存储字符内容 |
例如你定义了char(8),则这一列中存储的内容长度都为8,不足8则会用空格补充(但是我们在查询的时候是不会带空格的,mysql会对此进行处理)
总结:
int 不需要指定字符的长度
例如:float(5,2) 代表的意思是:小数位2,整数位3位的数值,总长度为5位。
CREATE TABLE stu_info (
NAME CHAR ( 8 ) NOT NULL,
score1 FLOAT ( 5, 2 ),
score2 DOUBLE ( 5, 2 ),
score3 DECIMAL ( 5, 2 ));
INSERT INTO stu_info
VALUES
( "李四", 45.3456, 45.3456, 45.3456 );
SELECT * FROM stu_info;
-- 使用默认值
create table stu_info1(name char(8) not null,score1 float,score2 double,score3 decimal);
insert into stu_info1 values("张三",80.1234567,80.1234567,80.1234567);
select * from stu_info1;
CREATE TABLE stu_info3 ( ruxue date, kaixue datetime );
INSERT INTO stu_info3
VALUES
( "2020-12-01 12:00:34", "2020-12-01 12:00:34" );
SELECT * FROM stu_info3;
CREATE TABLE stu_info4 (
sex enum ( "男", "女" ),
hobby SET ( "运动", "阅读", "旅行" ));
INSERT INTO stu_info4
VALUES
( "男", "运动,旅行" ),
("女","运动" );
select * from stu_info4;