我试图通过php的mysql_query函数执行以下查询,但它不起作用。
当我直接执行它(通过phpMyAdmin的sql选项卡)时,它确实有效。知道发生了什么事吗?
Update t1 SET r ='[{"Ia":36.009,"Ja":-78.93},{"Ia":36.01,"Ja":-78.93}]' WHERE id=1
谢谢!
这取决于你如何使用它。你必须转义你的引号。所以应该是:
mysql_query('Update t1 SET r =''[{"Ia":36.009,"Ja":-78.93},{"Ia":36.01,"Ja":-78.93}]'' WHERE id=1');
或
mysql_query("Update t1 SET r ='[{'"Ia'":36.009,'"Ja'":-78.93},{'"Ia'":36.01,'"Ja'":-78.93}]' WHERE id=1");
不管怎样,那不是很安全。您应该查看准备好的语句、PDO、MySQLi。
标准mysql是旧的,并且缺乏很多功能。
希望这能有所帮助。
当你这样做时,
mysql_query('Update t1 SET r ='[{"Ia":36.009,"Ja":-78.93},{"Ia":36.01,"Ja":-78.93}]' WHERE id=1');
它不起作用。你需要像这样逃离:
mysql_query('Update t1 SET r =''[{"Ia":36.009,"Ja":-78.93},{"Ia":36.01,"Ja":-78.93}]'' WHERE id=1');