本文主要讲叙关于mysql中的增加表数据语句。
1、建表:
由于本文重点讲述表的增加问题,所以对建表语句不做过多赘述,后续会对建表语句进行具体讲解。下面的语句表示建立一个名为class的表,表的有id号,姓名(sname),性别(gender),公司(company),薪水(salary),饭补(fanbu)这些列。
create table class(
id int primary key auto_increment,
sname varchar(10) not null default '',
gender char(1) not null default '',
company varchar(20) not null default '',
salary decimal(6,2) not null default 0.00,
fanbu smallint not null default 0
)engine myisam charset utf8;
2、查看表结构:
desc class;
3、添加数据
添加数据需要考虑三个问题:1、往哪张表添加行2、这一行添哪几列3、这几列里分别添加什么值,只要考虑清这三个问题,就会很容易写出代码。
insert into class
(id,sname,gender,company,salary,fanbu)
values
(1,'张三','男','百度',8888.88,234);
上述代码表示添加一行,id号为1,姓名是张三,性别男,公司是百度,薪水是8888.88,饭补是234。
插入之后可以用查表语句查看一下刚刚插入的内容:
select * from class;
如果我们并不想插入所有列,那我们也可以直插入部分列,在代码中对要插入的列进行声明,没有声明的列会自动设置为默认值。
insert into class
(sname,gender,salary)
values
('李四','男',8888.33);
在刚刚的代码中,Id虽然没有插入,但因为id设置为了自增型,因此值为2。
再来看插入所有列的情况,如果插入所有列,一种方法是像上面讲的那样所有列都声明一下,还有一种方式是干脆不声明待插入的列,也就是说如果不声明插入的列,则理解为依次插入所有的列。
insert into class
values
(3,'王五','女','阿里',8888.13,123);
注意:千万不要犯如下错误:
在插入数据时,因为Id是自增型的,所以插入的时候不给id赋值,这是不正确的,要记住在表中列与值必须按顺序一一对应。