MySQL创建表-以及建表语句的一些坑

MySQL创建表-以及建表语句的一些坑

建表语句其实比较简单,但是平时都习惯用Navicat建表,我以为我写脚本也没什么问题,但是真的写的时候发现了很多被忽略的细节。
下面盘点下:

先上正确示例(我这里没有外键,主键和自增):

CREATE table assets_alibaba(
`user_id` int UNSIGNED not null,
yue DECIMAL(10,2) not null DEFAULT 0.00,
yuebao DECIMAL(10,2) not null  DEFAULT 0.00,
licai DECIMAL(10,2) not null DEFAULT 0.00,
jijin DECIMAL(10,2) not null DEFAULT 0.00,
huangjin DECIMAL(10,2) not null DEFAULT 0.00,
yulibao DECIMAL(10,2) not null DEFAULT 0.00,
updatetime TIMESTAMP not null DEFAULT CURRENT_TIMESTAMP
);

坑1: 表名字或字段名字不是用的’’,而是`` 。当然你也可以什么都不要

## 正确的
`user_id` int UNSIGNED not null,
## 错误的
'user_id' int UNSIGNED not null,

那个符号是,英文标点的 ` 就是exc键下面的那个东西。不是引号

坑2:每个条语句后面的是英文逗号 , 不是分号;。最后一条语句不需要

坑3: 建表语句用的是小括号{} 不是大括号(这个犯错的应该少)

坑5:建表语句最后面的小括号需要分号结束

坑5:default后面的默认值和前面指定的类型相同

新增修改表和主键操作

create table useraccount(
id TINYINT UNSIGNED auto_increment,
useraccount VARCHAR(15) not null,
chinesename VARCHAR(10) not null,
password CHAR(15) not null,
isdeleted TINYINT not null DEFAULT 0,
modifydate TIMESTAMP not null,
PRIMARY KEY(id)
);

alter table useraccount change modifydate modifydate TIMESTAMP not null DEFAULT CURRENT_TIMESTAMP;
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值