SQL语句(一)

结构化查询语言(Structured Query Language)简称SQL,是关系型数据库管理系统都需要遵循的规范,是数据库认识的语句。不同的数据库生产厂商都支持SQL语句,但都有特有内容。
普通话:各数据库厂商都遵循的ISO标准。
方言:数据库特有的关键字

SQL语句(一)_第1张图片
SQL分类:
数据定义语言:简称DDL(Data Definition Language),用来定义数据库对象:数据库,表,列等。关键字:create,alter,drop等
数据操作语言:简称DML(Data Manipulation Language),用来对数据库中表的记录进行更新。关键字:insert,delete,update等
数据控制语言:简称DCL(Data Control Language),用来定义数据库的访问权限和安全级别,及创建用户。
数据查询语言:简称DQL(Data Query Language),用来查询数据库中表的记录。关键字:select,from,where等
SQL通用语法
SQL语句可以单行或多行书写,以分号结尾
可使用空格和缩进来增强语句的可读性
MySQL数据库的SQL语句不区分大小写,关键字建议使用大写
例如:SELECT * FROM user。
同样可以使用/**/的方式完成注释 – #
MySQL中的我们常使用的数据类型如下
整数类型
tinyInt 很小的整数
smallint 小的整数
mediumint 中等大小的整数
int(integer) 普通大小的整数
小数类型
float 单精度浮点数
double 双精度浮点数
decimal(m,d) 压缩严格的定点数 decimal(10,2)
日期类型
year YYYY 1901~2155
time HH:MM:SS -838:59:59~838:59:59
date YYYY-MM-DD 1000-01-01~9999-12-3
datetime YYYY-MM-DD HH:MM:SS 1000-01-01 00:00:00~ 9999-12-31 23:59:59
timestamp YYYY-MM-DD HH:MM:SS 19700101 00:00:01 UTC~2038-01-19 03:14:07UTC
文本、二进制类型
char(m) m为0~255之间的整数定长 char(10) tom
varchar(m) m为0~65535之间的整数变长 varchar(10) tom
tinyblob 允许长度0~255字节
blob 允许长度0~65535字节
mediumblob 允许长度0~167772150字节
longblob 允许长度0~4294967295字节
tinytext 允许长度0~255字节
text 允许长度0~65535字节
mediumtext 允许长度0~167772150字节
longtext 允许长度0~4294967295字节
DDL之数据库操作:
show databases 显示所有数据库
create database base1 创建数据库
drop database base1 删除数据库
use base1 使用数据库
创建表:
create table if not exists 表名(
字段名 类型(长度) [约束],
字段名 类型(长度) [约束],

);
类型:
varchar(n)字符串
int 整形
double浮点
date 时间
timestamp时间戳
约束:
primary key 主键,被主键修饰字段中的数据,不能重复、不能为null。
查看表:
查看数据库中的所有表:
格式:show tables;
查看表结构:
格式:desc 表名;
删除表:
drop table 表名
修改表结构格式:
alter table 表名 add 列名 类型(长度) [约束];
作用:修改表添加列.
例如:
#为分类表添加一个新的字段为分类描述 varchar(20)
ALTER TABLE category ADD desc VARCHAR(20); 注意符号为飘健
alter table 表名 change 旧列名 新列名 类型(长度) 约束;
作用:修改表修改列名.
例如:
#为分类表的分类描述字段更换为description varchar(30)
ALTER TABLE category CHANGE descdescription VARCHAR(30);
alter table 表名 drop 列名;
作用:修改表删除列.
例如:
#删除分类表中description这列
ALTER TABLE category DROP description;
rename table 表名 to 新表名;
作用:修改表名
例如:
#为分类表category改名成 category2
RENAME TABLE category TO category2;

你可能感兴趣的:(mysql)