Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/274.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
PHP mySQL更新集,如%value_Php_Mysql - Fatal编程技术网

PHP mySQL更新集,如%value

PHP mySQL更新集,如%value,php,mysql,Php,Mysql,有没有一种合乎逻辑(而且可能)的方法来做这样的事情 UPDATE $table SET LIKE %_checkbox = '' WHERE id='$id' 我有像allowed_checkbox和types_checkbox这样的字段,它们被动态地发送到数据库脚本。引用列名时是否可以使用通配符?否。必须生成SQL字符串,然后单独执行。如果你试图做这样的事情,那么你可能有一个糟糕的模式设计。你有一点弗兰肯斯坦的语法。在编译SQL之前,服务器需要知道表名和列名,因此您无法直接执行所需操作 您的

有没有一种合乎逻辑(而且可能)的方法来做这样的事情

UPDATE $table SET LIKE %_checkbox = '' WHERE id='$id'

我有像allowed_checkbox和types_checkbox这样的字段,它们被动态地发送到数据库脚本。引用列名时是否可以使用通配符?

否。必须生成SQL字符串,然后单独执行。如果你试图做这样的事情,那么你可能有一个糟糕的模式设计。

你有一点弗兰肯斯坦的语法。在编译SQL之前,服务器需要知道表名和列名,因此您无法直接执行所需操作

您的php代码是否事先不了解数据库模式


您使用的关键词是动态的——您可以通过对MySQL表的查询找到匹配的列名。您可以在每次更新时执行此操作,这将非常昂贵,也可以在应用程序启动时提取所需所有表的模式。

好的。它是我为处理数据库函数而构建的类。我可以向表单中添加任何元素,它将通过对$\u POST的简单函数调用来处理它们。我想我得重新考虑如何处理这一部分。谢谢你的想法,谢谢你的建议,马丁。我知道这是不对的,但我只是在想办法。我想我的直白的语法似乎让人明白了这一点!再次感谢。