MySQL中的引号和反引号(``和 ‘‘)

 

前言 

这个问题是我在学习数据库的时候遇到的一个问题,我当时并不能理解下图中的一些情况,后来我也请教了一位大佬给我解答,最后在大佬和度娘的帮助下我大概理解了这个反引号的东西。因此我写下了这个博客,本博客也引荐了一些大佬文章的知识,如有侵权联系我哦!如果有缘人能看到这个博客希望能对你有帮助,如果一些地方有错误也可以直接指出来哦!!

1.单引号:

我们先来介绍一下单引号,下图中的 '男' 就是使用的英文单引号。

为什么要去使用单引号呢?在SQL中一些varchar(string,等字符串类型)是需要用到单引号而不是直接去使用。

MySQL中的引号和反引号(``和 ‘‘)_第1张图片

 

一般的在数据库中数值类型是不需要去使用单引号去给他圈起来,我们来看下图的例子:

MySQL中的引号和反引号(``和 ‘‘)_第2张图片

上述说的是在一般情况下是不用去加引号的,但是如果在不同的可视化数据库工具里,有些加了引号也是可以查询出来,不会去报错的,但是我们还是要以正确sql语句来写,避免以后出现一些bug。 

2.反引号:

它是为了区分MYSQL的保留字与普通字符而引入的符号。 

我们可以看下图的例子:

MySQL中的引号和反引号(``和 ‘‘)_第3张图片 

 这个是正常的查询,如果我们给性别加上引号呢?这样会出现什么情况呢?

MySQL中的引号和反引号(``和 ‘‘)_第4张图片

 这样在sql的语法上是错误的,但是在一些数据库的可视化工具并不报错,但是我们是查询不到任何值的。我们加下来再看给他加上反引号会是什么情况呢?

MySQL中的引号和反引号(``和 ‘‘)_第5张图片

这样就出来和第一个一样的情况了哦,这是用来区分两者的区别,否者数据库工具会以为都是字符串,查找不会成功!!

注意划重点:有MYSQL保留字作为字段的,必须加上反引号来区分!!!

所谓的保留字就是select database insert 这一类数据库的sql指令,当我们不得已要拿他们来做表名和字段名的时候 我们必须要加反引号来避免编译器把这部分认为是保留字而产生错误。

你可能感兴趣的:(基础,mysql,数据库)