MYSQL常用语句及常见数据类型

##一数据类型基本五大类

###1.整数类型:BIT、BOOL、TINY INT、SMALL INT、MEDIUM INT、 INT、 BIG INT

tinyint(m) (一个字节,范围:(百位))

smallint(m) (两个字节,范围:(万位))

mediumint(m) (三个字节 ,范围:(万级以上,亿级以下)

int(m) (四个字节, 范围:(亿级)

bigint(m) ( 八个字节, 范围:(亿级以上)

int(m)里的m是表示SELECT查询结果集中的显示宽度,并不影响实际的取值范围,

2.浮点类型::FLOAT、DOUBLE、DECIMAL

float(m,d) (单精度浮点型 8位精度(4字节) m总个数,d小数位)

double(m,d) (双精度浮点型 16位精度(8字节) m总个数,d小数位)

decimal(m,d) (参数m<65 是总个数,d<30且 d<m 是小数位)

3.字符串类型:CHAR、VARCHAR、TINY TEXT、TEXT、MEDIUM TEXT、LONGTEXT、TINY BLOB、 BLOB、MEDIUM BLOB、LONG BLOB

char(n) (固定长度,多255个字符)
varchar(n) ( 固定长度,多65535个字符)
tinytext ( 可变长度,多255个字符)
text (可变长度,多65535个字符)
mediumtext (可变长度,多2的24次方-1个字符)
longtext (可变长度,多2的32次方-1个字符)

char :固定长度不管实际内容是多少大小,统一分配相同的存储空间 ,varchar: 根据实际内容的大小来分配存储空间
相同点:都是用于存放字符类型
优缺点: varchar :不会造成空间的浪费,节省空间,缺点时需要系统进行计算,性能上会有损失 不确定使用varchar char: 造成空间的浪费,优点是提升性能

4.日期类型:Date、DateTime、TimeStamp、Time、Year

date (日期 ‘2008-12-2’)
time (时间 ‘12:25:36’)
datetime (日期时间 ‘2008-12-2 22:06:44’)
timestamp (自动存储记录修改时间)

若定义一个字段为timestamp,这个字段里的时间数据会随其他字段修改的时候自动刷新,所以这个数 据类型的字段可以存放这条记录后被修改的时间

5.其他数据类型:BINARY、VARBINARY、ENUM、SET、Geometry、Point、MultiPoint、LineString、 MultiLineString、Polygon、GeometryCollection等

null (数据列可包含空值)
notnull (数据列不允许包含空值)
default ( 默认值)
primary key ( 主键,使用数据不得重复,越简单越好)
auto_incremen (自动递增,适用于整数类型同时适用于主键)
unsigned (无符号)
character set name (指定一个字符集)

使用建议

  1. .在指定数据类型的时候一般是采用从小原则,比如能用Ttiny int的最好就不要不用int,这样可以提升 MySQL的运行效率,尤其是在大数据测试下
  2. 不要把数据表设计的太过于复杂,功能模块上区分对于后期的维护更方便
  3. 数据表和字段名称要用英文 (起名字也要有所含义,不要到后期看不懂)
  4. 设计数据表结构之前先想像一下是你的房间,或许结果会更加合理,高效
  5. 数据库的最后设计结果用定时效率和可扩展性的折中,偏向任何一方都是欠妥的

二,MySQL常用数据语句

1.连接mysql服务器
mysql -uroot -p 完整语句 mysql -uroot -h ip地址 -p(password)

2.查看所有数据

show databases

3.选择一个数据库

use(库名字)

4.使用数据库
user baba; 使用(baba)数据库

5.创建数据库
create database (数据库名称)

6.删除数据库

drop database(库名字)

7.断开mysql服务器
quit

8.启动mysql服务器
net start (服务器名称,必须和运行程序名称相同)

9.停止MySQL服务器
net stop (服务器名称 ,同上)

10.查询表

select*from(表名)

10.查看当前数据库有哪些表

show tables(表名称)