INSERT INTO aa VALUES ('aa',';/**/;')
报错:
1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '';/**/' at line 1
不知道是是什么原因报这样的错,请大神解答一下
INSERT INTO aa VALUES ('aa',';/**/;')
报错:
1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '';/**/' at line 1
不知道是是什么原因报这样的错,请大神解答一下
mysql> create table t0 (a1 varchar(32),a2 varchar(32)) engine = innodb default charset=utf8;
Query OK, 0 rows affected (0.01 sec)
mysql> insert into t0 VALUES ('aa',';/**/;');
Query OK, 1 row affected (0.00 sec)
mysql> select * from t0;
a1 | a2 |
---|---|
aa | ;/**/; |
1 row in set (0.00 sec)
mysql> insert into test VALUES(null,';/**/;',30,'beijing',1);
Query OK, 1 row affected (0.00 sec)
5 回答3.3k 阅读✓ 已解决
3 回答3.7k 阅读✓ 已解决
2 回答2.9k 阅读✓ 已解决
5 回答1.4k 阅读
2 回答2.1k 阅读
3 回答2k 阅读
1 回答3.6k 阅读
同样好奇,在我的印象中分号、斜杠、星号不是特殊字符,不信可以单独插入
但结合起来为什么就不行了?在测试的时候发现个有意思的例子,
单独执行上面两个sql可以成功,但一起执行就失败了。
测试时的mysql版本5.6.20-log,怀疑是该版本mysql检验正则匹配时有问题,望知情者告知。
我是分割线
看了下后来几个回复的,有的执行成功,还截图了,才恍然大悟,难道不是mysql本身问题,而是数据库管理工具的问题??

马上用命令行再次执行了下,果然可以!
1、命令行方式
2、之前测试不行是因为在navicat for premium 11中执行的:
3、今天换了个最新版的12又可以了:
心塞,具体是什么问题还不清楚