赞
踩
数值类型:
整数类型 TINYINT SMALLINT MEDIUMINT INT BIGINT
重点记住:int
浮点数类型 FLOAT DOUBLE (带小数点的)
float(6,2)的含义数据是float型,数据长度是6,小数点后保留2位
定点数类型 DEC 了解
decimal型的默认整数位为10,小数位为0,即默认为整数。
会自动四舍五入
字符串类型:
CHAR系列 (重点) CHAR VARCHAR (其长度指示要存储的最大字符数)
char:使用固定长度
varchar:使用比固定长度类型(char)占用更少存储空间
TEXT系列 TINYTEXT TEXT MEDIUMTEXT LONGTEXT
枚举类型: ENUM (多个选项,只能选择一个)
时间和日期类型: DATE TIME DATETIME TIMESTAMP YEAR
date:只显示年月日
time:是显示时分秒
datetime:年月日 时分秒
mysql--> 数据库管理系统(用来管理数据库)
#sql基本语句 (所有命令;(分号)结尾)
##库操作
show databases; #查看默认的所有的数据库
use 数据库名; #使用或者切换到指定的数据库
create database 数据库名;#创建数据库
例:create database yjs;
drop database 数据库名; #删除指定的数据库
##表操作
show tables; #查看当前数据库中的所有表
#创建表:
CREATE TABLE tbl_name (
字段名1 类型[(宽度) 约束条件],
字段名2 类型[(宽度) 约束条件],
字段名3 类型[(宽度) 约束条件],
...
) ;
例如:
create table t3(
-> 序号 int,
-> 姓名 varchar(20),
-> 年龄 int);
#查看表结构 (有多少列,每一列的属性)
desc 表名; 例如:desc t1;
#查看表的创建过程 (创建表的时候使用的语句)
show create table +表名;
#修改表的名称
rename table 原名称 to 新名称;
例:rename table t2 to chengji;
alter table 原名称 rename 新名称;
alter table chengji rename t2;
#添加字段(列)
alter table 表名 add 新增字段名 类型;
例:alter table t2 add 英语成绩 int;
#删除表
drop table 表名;
#修改字段
更改字段名:change
alter table 表名 change 旧字段名 新字段名 数据类型;
例:alter table t2 change 英语成绩 计算机成绩 int;
更改字段位置,数据类型属性:modify
alter table info modify name char(20) after age;
#插入数据
方式1:
insert into 表名(字段名1,字段名2......) values(数值1,数值2.........)
方式2:
insert into 表名 values(数值1,数值2........) ;
#查询
select 字段1,字段2,.... from 表名;
select * from 表名;(*代表所有字段)
#更新(修改数据)
update 表名 set 字段名=新值 where 条件;
例:update t2 set 数学成绩=90 where 姓名="lisi";
#删除记录
删除指定的记录:delete from 表名 where 条件;
删除表的所有记录:delete from 表名;
*注意:只是把表里的数据全部删除,并不会删除表
1.增
create database 库名; #建库
create table 表名(表结构); #建表
alter table 表名 add 新增字段名 类型;#添加字段
#插入数据
方式1:
insert into 表名(字段名1,字段名2......) values(数值1,数值2.........)
方式2:
insert into 表名 values(数值1,数值2........) ;
2.删
drop database 库名;
drop table 表名;
alter table 表名 drop 字段名; #删除字段
delete from 表名 where 条件;
delete from 表名;
3.改
rename table 原名称 to 新名称;
alter table 原名称 rename 新名称;
alter table 表名 change 旧字段名 新字段名 新数据类型;
alter table 表名 modify字段名 新数据类型;
update 表名 set 字段=新数据 where 条件;
4.查
show databases;
use +库名[;]
select database(); # 查询当前所在的数据库(mariadb可以看提示符)
show tables;
show table status like ‘表名'\G ;#查看表的状态
desc 表名;
show create table +表名;
select 字段1,字段2,.... from 表名;
select * from 表名;(*代表所有字段)
#表的复制
create table 新表 select * from 要复制的表;
#约束条件
非空、唯一、默认值、主键、外键、自增
语法:字段名 数据类型[宽度|not null|unique|default 默认值|auto_increment]
1.非空
mysql null和空值
null :占空间
空值:不占空间
例:create table t3(
-> 序号 int,
-> 姓名 varchar(20) not null, #该字段插入数据不能为空
-> 年龄 int);
2.唯一
例:create table t3(
-> 序号 int unique, #指定唯一约束,该列数据不能重复
-> 姓名 varchar(20),
-> 年龄 int);
3.默认值
create table t2 (
姓名 char(10),
性别 enum('男','女') default'男'); #枚举的数据类型,dufault定义默认值
效果:性别字段没有指定数据时,自动用默认值补全
4.主键约束
主键:表中的特殊字段,这个字段能够唯一标识表中的每一条记录。
一张表只能有一个主键
主键的用途:快速定位数据
主键要满足的条件:非空且唯一
primary key == not null + unique
例:
create table t3(
-> 序号 int primary key, #该字段定义为主键(非空且唯一)
-> 姓名 varchar(20),
-> 年龄 int);
5.外键 (了解)
外键:一个表的数据依赖另一张表的主键列的数据,如果在主键列没有出现的值,是不能够出现在外键字段的。
6.自增
自增 auto_increment
要求:
1)该字段必须是数值型
2)字段上要有唯一性索引或者主键
例:
create table t3(
-> 序号 int auto_increment , #定义该列自增
-> 姓名 varchar(20),
-> 年龄 int);
注意:插入时自增列,用''、null或者default填充都可以
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。