前置条件
首先,我们需要建一张学生表,执行如下sql
CREATE TABLE `xuesheng` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键',
`xingming` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '姓名',
`shengri` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '生日',
`xuehao` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '学号',
`xingbie` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '性别',
`banji` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '班级',
`create_time` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '创建时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
执行sql,执行时一定要先选中要执行的sql,然后右键选运行已选择的(如下图),否则如果直接点上面的运行按钮,如果你这里面写了多条sql,就全部都 执行了,容易出问题。
执行完sql之后,点击表,然后按F5就能刷新出来了
按如下操作就能按到一张表的建表语句了
注意点:
1、每条sql以分号结束;2、写sql也要和写java一样,有自己的格式,切不可写成一行或者胡乱换行,这样只会让自己阅读和改错的时候造成困难。3、某个字段的类型并不一定需要按照字段的真实类型创建,例如生日和创建时间字段我就不用date类型,性别字段我就不设置长度1,这些在实际工作中按照公司要求来就行了。
新增
语法:insert into 表名(字段1,字段2,字段3,......) values (值1,值2,值3,......)
插入三条数据sql如下:
insert into xuesheng(
xingming,
shengri,
xuehao,
xingbie,
banji,
create_time
)
values(
'张三',
'2000-01-01',
'201208300001',
'男',
'1201',
now()#mysql中使用#或者--空格来注释
),
(
'李四',
'2000-02-01',
'201208300002',
'女',
'1201',
now()-- now是mysql的函数,返回当前时间
),
(
'王五',
'2000-03-01',
'201208300003',
'男',
'1201',
now()
)
执行完之后,双击打开xuesheng表或者在已打开的xuesheng表里按f5刷新就能看到数据了
修改
update 表名 set 字段='??' where 字段='??'
update xuesheng
set xingbie='男'
where xuehao='201208300002'
执行完之后刷新表,看到李四的性别变为男了
删除
语法:delete from 表名 where 条件
delete from xuesheng where xuehao='201208300002'
执行完刷新表,看到李四被删除了。
小结&一些说明
1、增删改查是最基础的数据库操作,本节只说了前三种,因为查询语法多变,情况复杂所以放在下一张统一讲解。
2、update和delete中的where是可选条件,不加的话就会更新/删除表中的全部数据。
3、mysql的注释在上面也写清楚了分为“#”和“--空格”两种。
4、建表时已经把id字段设置为主键并且是自增的了,自增意味着你insert时不需要专门去插入id字段,mysql会字段帮你插入,主键意味着(1)这个字段的值在全表中唯一,这样以后就可以专门根据这个字段去修改或者删除数据了(2)主键自带索引,使用这个字段作为条件进行修改或者删除或者排序时效率会提高,至于在别的普通字段上增加索引,自己有兴趣去查一下,以后不再讲解了,因为我的初衷是让初学者能在java中使用mysql而不是让初学者成为负担。
5、update和select(查询)时,表名后面是可以加别名的,如delete from xuesheng a where a.xuehao='201208300002',这样做的目的一是当你写出a.的时候Navicat会帮你自动把该表的所有字段列出来让你选择非常方便,二是一条语句通常会操作不只一张表,我们给表起a、b、c、d别名时,点字段的时候就非常的明确该字段是对应的那张表了,以后的sql我都会加上别名。
6、你可以保存(Ctrl+S)你的sql,下次就能在这里打开