10、常用的SQL标准有哪些

今天我主要讲解连接表的操作。在讲解之前,我想先给你介绍下连接(JOIN)在SQL中的重要性。 我们知道SQL的英文全称叫做Structured Query Language,它有一个很强大的功能,就是能在各个数据表之间进行连接查询(Query)。这是...

SQL必知必会

11、SQL99是如何使用连接的,与SQL92的区别是什么?

上节课我们讲解了SQL92标准,在它之后又提出了SQL99标准。现在各大DBMS中对SQL99标准的支持度更好。你一定听说过LEFT JOIN、RIGHT JOIN这样的操作符,这实际上就是SQL99的标准,在SQL92中它们是用(+)代替的。SQL...

SQL必知必会

12、视图

我们之前对SQL中的数据表查询进行了讲解,今天我们来看下如何对视图进行查询。视图,也就是我们今天要讲的虚拟表,本身是不具有数据的,它是SQL中的一个重要概念。从下面这张图中,你能看到,虚拟表的创建连接了一个或多个数据表,不同的查询应用都可以建立在虚拟...

SQL必知必会

13、存储过程

上一节我介绍了视图,它是SQL中的一个重要应用,使用视图对SQL查询进行封装,可以让SQL的代码结构更清晰,让用户权限管理更安全。 今天我来讲一下SQL的存储过程,它是SQL中另一个重要应用,和视图一样,都是对SQL代码进行封装,可以反复利用。它和视...

SQL必知必会

14、事务处理

我们知道在MySQL 5.5版本之前,默认的存储引擎是MyISAM,在5.5版本之后默认存储引擎是InnoDB。InnoDB和MyISAM区别之一就是InnoDB支持事务,也可以说这是InnoDB取代MyISAM的重要原因。那么什么是事务呢?事务的英...

SQL必知必会

15、初识事务隔离

上一篇文章中,我们讲到了事务的四大特性ACID,分别是原子性、一致性、隔离性和持久性,其中隔离性是事务的基本特性之一,它可以防止数据库在并发处理时出现数据不一致的情况。最严格的情况下,我们可以采用串行化的方式来执行每一个事务,这就意味着事务之间是相互...

SQL必知必会

16、游标

我们在编写SQL语句的时候通常是面向集合进行思考,这种思考方式更让我们关注结果集的特征,而不是具体的实现过程。面向集合的思考方式与面向过程的思考方式各有特点,我们该如何理解它们呢? 我们用下面这张图开启今天的学习。这张图中一共有9个图形,每个图形有不...

SQL必知必会

17、如何使用Python操作MySQL?

我们之前都是直接在DBMS里面进行SQL的操作,实际上我们还可以通过后端语言对DBMS进行访问以及进行相应的操作,这样更具有灵活性,可以实现一些较为复杂的操作。作为一个后端开发人员,掌握一些SQL技术是必须的;作为一个数据库管理人员,了解后端语言如何...

SQL必知必会

18、使用ORM框架来操作MySQL?

上节课,我介绍了Python DB API规范的作用,以及如何使用MySQL官方的mysql-connector驱动来完成数据库的连接和使用。在项目比较小的时候,我们可以直接使用SQL语句,通过mysql-connector完成与MySQL的交互,但...

SQL必知必会

19、理解查询优化、通配符以及存储过程

到这一篇的时候,意味着SQL专栏的基础部分正式更新完毕。在文章更新的时候,谢谢大家积极地评论和提问,让专栏增色不少。我总结了一些基础篇的常见问题,希望能对你有所帮助。答疑篇主要包括了DBMS、查询优化、存储过程、事务处理等一些问题。 关于各种DBMS...

SQL必知必会