• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >Mysql > Mysql学习笔记(三)对表数据的增删改查。

Mysql学习笔记(三)对表数据的增删改查。

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-05

匿名通过本文主要向大家介绍了Mysql,增删改查,表数据等相关知识,希望本文的分享对您有所帮助
这一部分是最简单的,也是最麻烦的。简单是因为其实只包括增删该插四个部分。大体上看,增加数据、删除数据、修改数据、查询数据都不麻烦啊,我们日常都是常用的。这个谁不会呢?以前在培训机构学mysql的时候,我就知道,程序员的成长路程上的一个瓶颈就在于数据库。如何书写高维护性的sql语句,如何能保持高维护性的同时又保持执行的高效率,这是个难题。我最近在做一个比较棘手的项目,常常left join 5~6张表,扫表10几万,查询速度慢的惊人。10几万还仅仅是测试数据,等真正的项目上线,数据量可能会达到百万级别。因此低效率的mysql 语句,可能程序直接就崩溃了。


因此关于数据这部分的增删改插是最难的,也是至关重要的,一定要学好。但我们今天仅仅书写最简单的增删该插,后面的博客将会持续深入的去整理相关方面的知识。


增加数据:


   insert into 表名 (字段1, 字段2, 字段3, 字段n) values (值1,值2,值3,值4);


这个比较简单。这是一条通用语句。可以值inset一条数据,也是insert多条数据。这个在《Mysql学习笔记(二)对表结构的增删改查》的测试sql里面有。可以参考一下,这里就不重复贴代码了。


注意事项:


向char 、varchar 、text 以及日期型的字段插入时,字段值要用单引号括起来。


向自增型auto_increment字段插入数据时,建议插入NULL值,此时字段将向自增型字段插入下一个编号。其实我平时都直接不写。


向默认值约束字段插入数据时,字段值可以使用default关键字,表示插入的是该字段的默认值。


插入新纪录时,需要注意表之间的外键约束关系,原则上先给父表插入数据,然后给子表插入数据。





删除数据:


删除数据是比较危险的操作,平时在开发测试阶段,可能会用到,但是到了真正的项目上线阶段,是不会有delete权限的。


语法: delete from 表名 where 条件;


delete from classes where class_no = 53; (可以继续用《Mysql学习笔记(二)对表结构的增删改查》中的测试sql);


强调一句,删除数据与修改数据,不加条件都是臭流氓。





修改数据:


修改数据也是很危险的操作,在项目上线的时候,只有某些表的某些字段允许更改。


语法:update 表名 set 字段名=字段值 where 条件。


update classes set class_name='roverliang' where class_no=52;


强调一句,删除数据与修改数据,不加条件都是臭流氓。





查询数据:


基本上项目中有90%以上关于数据库的操作是查询操作。因此查询语句写的好不好,将直接体现出一个程序员的编程能力。


反对那些人,一看到很长sql语句就摇头表示否定。他们从一些资料中得知,sql语句写的长会使执行效率下降、简直对长长的mysql语句是避而远之。将本来能一气呵成的mysql硬生生的分成了几个零散的片段。


对于我们搞技术的人来说,凭感觉是不对的。一切要以事实为基础,sql执行快慢优劣不是凭感觉拍脑袋决定的。真正决定sql执行速度的还是mysql本身,所以遇到疑惑的,就放进mysql里跑一跑。那个快那个慢,就高下立见了。


如果两者执行时间几乎相当,当然要毫不犹豫的选用一气呵成的sql。好维护啊!能够大大的减少代码量。


有些朋友可能会反驳说,那么长一段sql,看着都烦人,怎么会好维护呢?这其实与个人习惯有关,对于长的sql语句,我个人平时是这么写的,不知道对不对,请大家给指点下。





复制代码
#长长的sql;

select 字段1,字段2,字段3,字段n


from 表一 as t1,表二 as t2 ,表三 as t3

left join 表四 as t4 on t1.字段1 = t4.字段1
left join 表五 as t5 on t1.字段2 = t5.字段2


where t1.字段1=1 and t2.字段2=2 and t3.字段3 > 3


group by t1. 字段1


order by t1


limit 1,5;





复制代码
总之,一切的原则是要逻辑清晰,排版美观,能对齐的一定要对齐。


将代码当作白居易的诗歌来写,力求简练,但要兼顾可读性,让三岁小儿与七十岁老妪可懂。


将代码当作平面设计作品来写, 等号之间、变量之间排版整齐。代码段与代码段之间错落有致,整齐划一。


不要吝啬空格与换行符。将代码想象为数据流,让代码有流动的空间。

以上就是Mysql学习笔记(三)对表数据的增删改查。的内容,更多相关内容请关注微课江湖()!

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 分享下mysql各个主要版本之间的差异
  • MySQL essential版本和普通版本有什么区别?
  • redhat 5.4下安装MYSQL全过程
  • 如何用SQL命令查看Mysql数据库大小
  • 解析mysql中如何获得数据库的大小
  • 解析mysql修改为utf8后仍然有乱码的问题
  • 5个常用的MySQL数据库管理工具详细介绍
  • 解析在MySQL里创建外键时ERROR 1005的解决办法
  • 解析远程连接管理其他机器上的MYSQL数据库
  • mysql 精简过程(删除一些文件)

相关文章

  • 2018-12-05Oracle下时间转换在几种语言中的实现_Oracle应用_脚本之家
  • 2018-12-05SQL语句技巧:查询时巧用OR实现逻辑判断
  • 2017-05-11MySQL 一次执行多条语句的实现及常见问题
  • 2018-12-05oracle关键字作为字段名使用方法
  • 2017-05-11MYSQL表优化方法小结 讲的挺全面
  • 2018-12-05Oracle 常用的SQL语句
  • 2018-12-05当mysqldump --single-transaction遇到alter table怎么办?
  • 2018-12-05关于聚集函数的详细介绍
  • 2018-12-05如何实现python3实现并发访问水平切分表
  • 2018-12-05mysqlslap的使用方法介绍

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • MySQL Index Condition Pushdown(ICP)性能优化方法实例
    • 解读mysql主从配置及其原理分析(Master-Slave)
    • mysql进阶(四)mysql中select
    • 详解navicat连接mysql时出现1045错误的解决方案
    • linux下oracle导入数据的方法
    • mysql进阶(二十四)防御SQL注入的方法总结
    • jdbc:oracle:thin 连接问题
    • SQL Server 数据库优化
    • mysql-PHP带复选框的树型结构
    • notepad++批量定格式替换

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有