我有他们的名字具有结构的列nameUser.Name,但我无法更新它们.我尝试过几种可能性:
// Ideally, I'd like to do this (since the User.Name is 'dynamic', ie, it depends
// on who is logged in):
$userLogged = 'Some.User';
$columnName = 'name' . $userLogged;
mysql_query("UPDATE Industries SET '$columnName'='$name' WHERE id='$id'");
// Another try:
mysql_query("UPDATE Industries SET $columnName='$name' WHERE id='$id'");
// Alternatively, if the above cannot be achieved:
mysql_query("UPDATE Industries SET 'nameSome.User'='$name' WHERE id='$id'");
// Yet another try:
mysql_query("UPDATE Industries SET nameSome.User='$name' WHERE id='$id'");
Run Code Online (Sandbox Code Playgroud)
但是,不是上述作品.为什么?
pro*_*son 16
因为那也是语法database.table.column.你必须引用它们
`nameUser.name`
Run Code Online (Sandbox Code Playgroud)
虽然如此,如果你创建/设计了db,你就不应该使用这样的列名.这只是一个可怕的想法.
不使用单引号作为列名,而是使用反引号(在大多数键盘上,在1键的左侧).
像这样:
mysql_query("UPDATE Industries SET `nameSome.User`='$name' WHERE id='$id'");
Run Code Online (Sandbox Code Playgroud)