Chinaunix首页 | 论坛 | 博客
  • 博客访问: 54834
  • 博文数量: 9
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 162
  • 用 户 组: 普通用户
  • 注册时间: 2013-07-19 20:14
文章分类
文章存档

2013年(9)

我的朋友

分类: Mysql/postgreSQL

2013-07-19 21:40:56

MySQL中获得帮助:
help contents;
help data types;    查看数据类型
help int;    查看int类型的相关信息
help length;    查看length的相关信息

数据类型
定点数(精确的)
int     decimal

create table stu
(
    stuID int(5) zerofill primary key,
    stuName varchar(32) not null default '张三'
    -- primary key(stuID)    
)engine=innodb charset=utf8;
zerofill表示当stuID的位数不足5位的使用0填充
零填充只是显示效果,并不影响存放数值。
设置zerofill会自动变成unsigned。

create table stu
(
    -- stuID int auto_increment, -- 自动增长,从1开始,每次加1
    stuID int auto_increment unique, --unique表示唯一
    stuName varchar(32),
    primary key(stuID)
)engine=innodb charset=utf8;
在无符号的情况下如果插入了负数,会自动变为插入0;
auto_increment只能在一个字段中出现。

select last_insert_id();自动增长添加的id号。
insert into stu values(33,'tome');     还是原来自增的id号
insert into stu(stuName) values('tom1'),('tom2'),('tom3');  "tom1"
注意每次insert后的,last_insert_id()的值。
可以通过show create table stu,查看当前自增id的值。

decimal numeric
help decimal ,help numeric
DECIMAL[(M[,D])] [UNSIGNED] [ZEROFILL]
精度(去掉小数点后的位数),标度(小数的位数)
默认为dec(10,0),M最大为65,D最大为30

create table stu
(
    stuID int auto_increment unique,
    stuName varchar(32),
    stuSalary dec(5,2), -- numeric(5,2)  fixed(5,2)
    primary key(stuID)
)engine=innodb charset=utf8;
insert into stu(stuName,stuSalary) values('tom',123.456);
insert into stu(stuName,stuSalary) values('tom',123.45);
insert into stu(stuName,stuSalary) values('tom',123456.556);


浮点数(非精确的)
float  double(real)
create table stu
(
    stuID int auto_increment unique,
    stuName varchar(32),
    score float, --real double double precision
    primary key(stuID)
)engine=innodb charset=utf8;



字符串
char    varchar,,help char, help varchar
char(n),varchar(n),n指的是n个字符。
255    65535
utf8 three bytes per character, varchar(21844)
create table stu
(
    stuID int auto_increment unique,
    stuName varchar(32), -- charset utf8
    primary key(stuID)
)engine=innodb charset=utf8;
字符集(储存格式)
help string functions;查看字符串相关方法

set names utf8;
设置客户端编码为utf8;

create table stu
(
    stuID int auto_increment unique,
    stuName1 char(32), -- 不足位数会用空格补足
    stuName2 varchar(32)
)engine=innodb charset=utf8;

text(不区分大小写),mediumtext,longtext
blob(区分大小写),mediumblob,longblob
create table stu
(
    stuID int auto_increment unique,
    contents text
)engine=innodb charset=utf8;


日期时间类型
date    日期
time    时间
datetime日期时间
create table stu
(
    stuID int auto_increment unique,
    stuDate datetime,
    contents text
)engine=innodb charset=utf8;
help date and time functions;查看时间日期相关方法

枚举类型
enum('N','Y')
create table stu
(
    stuID int auto_increment unique,
    stuDate date,
    isAdmin enum('Y','N')
)engine=innodb charset=utf8;
阅读(1830) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~