首先,不推荐使用MySQL的关键词来作为字段名,但是有时候的确没有注意,或者因为之前就这么写了,没办法,那怎么办呢?
下面就详细的说明一下怎样使用 方法2 来处理。
上面的测试表是MySQL自动生成的DDL,其实从上面就可以看出,MySQL的引号内是说明绝对的保证大小写和当做普通字符串处理。
这里使用了maxvalue这个不常用的关键词作为字段名,一样违反了通常常规的命名规则,MySQL无法很好的识别。
查询SQL:
在navicat中可以正常执行,没有任何问题。
然后再运行insert语句:
提示下面的错误:
提示错误,但是没有明显的说明是关键词不能识别。
增加引号,使用MySQL的引号“`”,记住不是普通的英文单引号“'”,是倾斜的上撇,不是竖直的上撇。
键盘输入方式为键盘英文字母键上面的数字键1最前面的那个波浪线和顿号组成的键。也就是ESC下面,TAB键上面的按键。
这样就可以正常运行了。
如果sql语句中存在关键字,可以用反勾号(Esc下面的那个键)做转义;`
是
MySQL
的转义符,避免和
mysql
的本身的关键字冲突,只要你不在列名、表名中使用
mysql
的保留字或中文,就不需要转义。
所有的数据库都有类似的设置,不过mysql用的是`而已。通常用来说明其中的内容是数据库名、表名、字段名,不是关键字。例如:
select
from
from
table
第一个from是字段名,最后的table表名,但是同时也是mysql关键字,这样执行的时候就会报错,所以应该使用
select
`from`
from
`table`
当然,为了便于阅读,不建议使用关键字作为字段名、表名,同时,应该对数据库名、表名、字段名用一对儿反引号包含。
` 是 MySQL 的转义符,这个符号是对数据库名、表明、字段的特殊处理。避免和 mysql 的本身的关键字冲突。
mySQL(关系型数据库管理系统)
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。
MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。
由于其社区版的性能卓越,搭配 PHP 和 Apache 可组成良好的开发环境。
应用环境
与其他的大型数据库例如 Oracle、DB2、SQL Server等相比,MySQL 自有它的不足之处,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于 MySQL是开放源码软件,因此可以大大降低总体拥有成本。
Linux作为 *** 作系统,Apache 或Nginx作为 Web 服务器,MySQL 作为数据库,PHP/Perl/Python作为服务器端脚本解释器。由于这四个软件都是免费或开放源码软件(FLOSS),因此使用这种方式不用花一分钱(除开人工成本)就可以建立起一个稳定、免费的网站系统,被业界称为“LAMP“或“LNMP”组合 。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)