Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql CodeIgniter-escape SQL语句_Mysql_Sql_Codeigniter_Escaping - Fatal编程技术网

Mysql CodeIgniter-escape SQL语句

Mysql CodeIgniter-escape SQL语句,mysql,sql,codeigniter,escaping,Mysql,Sql,Codeigniter,Escaping,我正在以编程方式生成一条SQL语句,然后需要执行该语句,但由于没有正确转义,我认为它失败了 SQL似乎是正确生成的,因为我可以从浏览器中剪切和粘贴它,并且它可以从CMD行和PHPMyAdmin正确执行。例如: CREATE TABLE IF NOT EXISTS `1_e6766037c49ccf8cc3f8437c123d6e88` (`intId` int(11) NOT NULL auto_increment, `twitter_retweet_count` TEXT NULL ,...

我正在以编程方式生成一条SQL语句,然后需要执行该语句,但由于没有正确转义,我认为它失败了

SQL似乎是正确生成的,因为我可以从浏览器中剪切和粘贴它,并且它可以从CMD行和PHPMyAdmin正确执行。例如:

CREATE TABLE IF NOT EXISTS `1_e6766037c49ccf8cc3f8437c123d6e88` 
(`intId` int(11) NOT NULL auto_increment,
`twitter_retweet_count` TEXT NULL ,......
然后,我尝试使用CI执行它:

$query = $this->db->query($sql);
但是,它在以下方面失败:

You have an error in your SQL syntax; check the manual that corresponds to your 
MySQL server version for the right syntax to use near '
`twitter_retweet_count` TEXT NULL ,.......
你有没有想过我会错在哪里


非常感谢,本。

您是否尝试过删除列/表名周围的`字符

CREATE TABLE IF NOT EXISTS 1_e6766037c49ccf8cc3f8437c123d6e88
(intId int(11) NOT NULL auto_increment,
twitter_retweet_count TEXT NULL ,......

@阿迪达斯艾达-谢谢你的努力。您的测试让我进一步了解了生成代码,我意识到其中有一个HTML字符用于显示(新行)。这就是失败的原因。非常感谢,Ben。

我刚刚用codeigniter 2.1测试了代码,似乎没有出现错误。(我使用了带有“并且没有发现问题”的sql行)您使用的是哪个版本的codeigniter?@adidasadida-感谢您的努力。您的测试让我进一步了解了生成代码,我意识到其中有一个HTML字符用于显示(新行)。这就是失败的原因。非常感谢,本。