天,突然发现MySQL的一个新特征!这是真的吗? 两个单引号,该如何解决

天,突然发现MySQL的一个新特征!这是真的吗? 两个单引号,该如何解决

天,突然发现MySQL的一个新特征!这是真的吗? 两个单引号

下载最新版的phpMyadmin导出一个数据表,居然发现里面有错误的代码(刚开始的时候以为),然后反复测试了很多遍。发现是没有问题的。

老写法:

SQL code


  INSERT INTO `ba_plus` VALUES ('27', '友情链接模块', '<m:item name='友情链接模块' link='friendlink_main.php' rank='plus_友情链接模块' target='main' />', '', '织梦团队', '1', '');

新写法:

SQL code


  INSERT INTO `ba_plus` VALUES (27, '友情链接模块', '<m:item name=''友情链接模块'' link=''friendlink_main.php'' rank=''plus_友情链接模块'' target=''main'' />', '', '织梦团队', 1, '');

新写法为什么是正确的啊?两个单引号一起

测试的表结构:

SQL code


  
CREATE TABLE IF NOT EXISTS `ba_plus` (
  `aid` mediumint(8) unsigned NOT NULL auto_increment,
  `plusname` varchar(30) NOT NULL default '',
  `menustring` varchar(200) NOT NULL default '',
  `mainurl` varchar(50) NOT NULL default '',
  `writer` varchar(30) NOT NULL default '',
  `isshow` smallint(6) NOT NULL default '1',
  `filelist` text,
  PRIMARY KEY  (`aid`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;



直接在MYSQL命令工具中试一下呢? 会不会是PHP的一些功能。




引用好奇怪哦,么有报错,运行成功,但是并没有完全写入。到了单引号哪里就断了。




php帮你转得把




php应该会报错的。。肯定Navicat 8动了手脚。




有个术语叫escape, 应该是客户端工具提前帮你进行了转换。




。。。

转义字符。

在字符串里的’要转换成”




就是转义字符吧。oracle里是’




话说你这个新发现和某个类C语言(C/C++/Java/C#)的使用者,突然发现可以用

SQL code

SELECT * FROM table WHERE x <> 1


                        
  
  
                    
天,突然发现MySQL的一个新特征!这是真的吗? 两个单引号,该如何解决

相关文章:

你感兴趣的文章:

标签云: