Mysql(一) - 数据库和表的基本操作 及 数值类型

1. 数据库的操作

显示数据库: show databases;
创建数据库: create database 数据库名;
删除数据库: drop database 数据库名;

2. 表的操作

选中数据库: use 数据库名;
创建表:

create table student(
    id int primary key auto_increment,
    name char(4) not null default '',
    age tinyint unsigned not null default 0,
    sex enum('男','女') not null,
    birthday date not null,
    intro varchar(1000),
    salary decimal(7,2) not null default 0
) charset utf8;

修改表名: rename table 旧表名 to 新表名;
描述表: desc 表名;
删除表: drop table 表名;
表增加列: alter table 表名 add 列名;
表在某一列后增加列:
alter table 表名 add 列名 after 列名;
表在第一列前增加列:
alter table 表名 add 列名 first;
修改列名:alter table 表名 change 旧列名 新列名 新列声明;
删除列:alter table 表名 drop 列名;
解决 Incorrect string value: set names gbk;
建立临时表:
create table PersonsCopy like Persons;
清空表数据:
truncate PersonsCopy

3. 数值型

1.整型:

  • tinyint
  • smallint
  • mediumint
  • int
  • bigint
tinyint(M) unsigned zerofill

M: 配合 zerofill 使用,数值前补充几位零。
unsigned: 无符号类型,非负 0 - 255
zerofill: 零填充

2.小数型

  • 浮点型:float(M,D) unsigned
  • 定点型:decimal(M,D) unsigned

M代表总位数,D代表小数位,如:float(6,2) 代表 -9999.99 -9999.99
unsigned 代表非负
区别? decimal更精准,float在数值较大会丢失精度

4.字符型

  • char(M)
  • varchar(M)

M 碉堡宽度,可容纳的字符数,其中1个中文字符占据3个字节,
区别?
1. char 可存字符长度 短,0<=M<=255
varchar 可存字符长度 长,0<=M<=65535,以 ansi 为例
2. char 为 定长,实存字符 i , 实占空间 M,利用率为 i / M <= 100%
varchar 为 变长,实存字符 i , 实占空间 i +(1~2)字节,利用率为 i <(i+1~2) <100%
3. char 内容不够 M 个字符,末尾用空格补充,导致如果存入内容本身末尾带有空格,取出时末尾空格被舍弃
varchar不存在该问题
4. char 速度更快,varchar 空间利用更灵活

5.时间型

  • Year : 1个字节,代表 1901-2155
    如果输入2位,’00 - 69’,表示 2000 - 2069
    ‘70 - 99’,表示 1970 - 1999
  • Date :1000 - 01 - 01 - 9999 - 12 - 31
  • time : - 838.59.59 - +838.59.59
  • Datetime
  • timestamp

参考文章:
[1]http://www.cnblogs.com/bukudekong/archive/2011/06/27/2091590.html
[2]http://blog.csdn.net/aidenliu/article/details/5465300

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值