问题是我有一些动态列,我总是使用相同的php ajax页面。所以我从另一页得到了一些昏迷的字符串。一个是列,另一个是表,另一个是数据。在插入中没有问题,因为我这样做:
$query = 'INSERT INTO '.$_GET["table"].' ('.$_GET["columns"].') VALUES('.$_GET["data"].')';
mysql_query($query, $link);
转变为:
INSERT sys_users_cfg (usr,pwd,permission_id,image) VALUES ('pepwe2','1234','1','')
我需要以同样的方式进行更新。与VALUES声明。像:
UPDATE sys_users_cfg (usr,pwd,permission_id,image) VALUES ('pepwe2','1234','1','') WHERE usr_id = 33
那个dosnt工作。这是可能的吗?
答案 0 :(得分:1)
如果您使用主键更新,请使用REPLACE INTO语法,例如
REPLACE INTO sys_users_cfg (usr_id,usr,pwd,permission_id,image) VALUES (33,'pepwe2','1234','1','')
。
答案 1 :(得分:0)
MySQL更新的格式不同,请参阅http://www.tizag.com/mysqlTutorial/mysqlupdate.php
UPDATE table SET column = 'value', column2 = 'value2' WHERE id = ID
答案 2 :(得分:0)
这是您更新行的方式:
UPDATE sys_users_cfg SET usr = 'pepwe2', pwd = '1234', permission_id = 1, image = '' WHERE usr_id = 33
您可以阅读http://dev.mysql.com/doc/refman/5.0/en/update.html了解更多信息。
答案 3 :(得分:0)
$values = explode(',', $_GET['data']);
$query = "UPDATE sys_users_cfg SET usr = '$values[0]', pwd = '$values[1]', permission_id = '$values[2]', image = '' WHERE usr_id = '33'";