在Navicat for mysql软件中增删改
以金融项目为例:简单式增删改
一、增加
打开Navicat for mysql 中的表,打开创建的表可以直接在字段下面增加会员信息,打√号,添加可以点击下面的加号!在增加会员信息,例如:
二、删除
选中表中的一行字段,点击下面的减号,删除
三、改
在表中,直接在字段中 赋值
使用SQL语句增删改
注释:
1、单行注释: – (空格)(快捷键:ctrl+/ ) (解除注释:shift+ctrl+/ )
2、多行注释 :/* */
(注释,更好阅读程序)
3、mysql是弱语法
增加
一、插入数据表(insert)
(1)插入一条数据,对所有字段都赋值
语法:
insert into <表名>values(wei niu si )(赋值A, 赋值B ,赋值C…);
例如:
eg:往nemeber表插入一条记录,对所有字段赋值
insert into member values(10086,‘tom’,‘123456’,‘18813050886’,‘1’,‘2019-4-16 10:31:10’,‘0.00’);
运行:正确下是,受影响的行为1,然后去表中查看新出现的信息
事项:所赋的值要与表中的字段名相对应,比如 ID=1 Name=tom或者其他
字符串要用单引号括起来
sj 用搜狗输入法可以直接打出年月日时间
(2)插入一条数据,且只会一部份字段赋值
语法:
insert into<表名>(字段A ,字段B ,字段C)values(wei niu si)(值A ,值B ,值C);
例如:
inset into member (regname,pwd,mobilephon,type) values(‘tom’,‘123456’,‘18813050887’,1);
运行后,在表中查看是否有新插入的信息表
事项:
新注册的用户,ID设置为主键之后会自动赋值,注册默认值为0 会自动识别,是需要写上需要的字段名赋值,运行后出现[Err]就代表错误
(3)一条语句插入多条数据
insert into<表名>(字段A ,字段B ,字段C)values(wei niu si)(值A ,值B ,值C),(值D ,值E ,值F),(值A_1 ,值_2,值_3)
事项:需要多少赋值,就插入多少赋值,所赋的值不能一样
删除
一、删除
1、删除数据库(谨慎操作)
打开xshell 新建数据库 :create(ke rui te) database future34(fou qieer);
删除不用的表:drop(jiao pu)database future34;
2、删除数据表(谨慎操作)
drop table 表名;
drop table member;
3、删除记录---- delete (谨慎操作)不会影响到自增长Id值
如果在运行新的数据,id会根据删掉的最大值继续,比如,12345,删掉的123,在运行新的数据时会从5开始增值
不会影响id值 --清空表 truncate
truncate table 表名;
truncate table member;
(1)全部删除:删除表的所有记录
delete from 表名;
delete from member;
(2)部分删除:把id大于10的用户全部删除
delete from(fu ruang) member where id>10;
改、修改
一、修改、更新(update) LeaveAmount(金额) l(ai wo mang te)
1、更新表中的所有记录
update 表名 set 字段1=新的值,字段2=新的值,字段3=新的值…
例如:
eg:给所有用户返现1000.0
update member set LeaveAmount=1000.0;
运行后去查看表中是否有金额都赋值为1000,
er:给所有用户返现500,密码全部改为abcdef
update member set LeaveAmount=500,pwd=‘abcdef’;
运行后去查看表中是否有金额都赋值为500,密码是否改为abcdef,
set=关键字、保留字
eg:给所有用户的余额加100
update member set LeaveAmount= LeaveAmount+100;
2、更新表的部分记录((where 哪里的意思)(wei re) 字句)
update 表名 set 字段1=新的值,字段2=新的值,字段3=新的值… where条件表达式
限制 条件:按什么条件去筛选
eg:把id为xxxx或者(10086)的用户余额改为0
update member set LeaveAmount= 0.00 where ID=10086 (或者xx);
3、多个条件:用户and、or进行连接
and:多个条件同事满足
or:只需要满足其中一个条件即可,或者
eg:把id为10086,和10087用户可用余额改为100
update member set LeaveAmount=100 where id=10086 or id=10087;
4、条件表达式:= <(小于) >(大于) <= >= 不等于: != <>
eg:把ID大于10089的用户余额全部改为0
update member set LeaveAmount= 0 whre id>10089;
不等于:
eg:把不等于10086的ID都改为10000,除了10086,全部修改
update member set LeaveAmount= 10000 whre id<>10086;
查询 单表多表查询
一、单表查询 — 查询一个表
打开查询编辑器:
1、查询所有的member信息
从member表中查询所有记录信息
select * from member; ----- * 指代所有字段;但是会有一点点的性能污染问题
例如:
select id,regname,pwd,mobilephon,type,leaveAmount,regtime from member;
2、查询符合某些的记录 and or
select * from member whre leaveAmount>20000.0;
eg:查询余额大于20000的会员信息, 显示用户名,手机号、余额
select regname,mobilepone,leavAmount from member where leaveAmount>20000.0;
二、多表查询
1、有项目表、投资表、信息表,一个用户的投资 、信息、项目表会放在不同的分类表中,然后会有ID区分,这条数据对应用户的 信息、投资等
1、会员表(menmber表)
2、投资表(in vest表)(yi wai si)
3、项目表(loan)(lang wong)
4、流水记录表(fin an celog)
5、回款计划表(rep ayment(rui pen men t))
三、多表查询
语法
select 要查询的字段 from 表1,表2… where 关联条件和过滤条件
笛卡尔积、叉乘
怎么把有效的记录过滤出来?
select * from member,invest where memberr.id = invest,memberid;
四、别名
(1)ti t2
(2)as
五、排序
(1)排序 order by 字段名 desc/asc
desc:降序排列
asc:升序排列
(2)多个字段排序
order by 字段1 desc/asc,字段2 desc/asc,字段3 desc/asc