我需要在字段中插入多个数据,然后将其作为数组检索。
例如,我需要将“99999”插入表item_details,字段item_number
,并将以下数据插入与bidders
相关联的字段item_number
中:
用户X
usery
userz
你能否告诉我应该用什么SQL查询来插入信息以及检索它的查询?
我知道这可能是一个愚蠢的问题,但我无法弄明白。
提前谢谢你, 迈克尔。
答案 0 :(得分:1)
如果您只是想将一个数组存储在MySQL字段中以便以后检索,那么您可以使用上面建议的implode()
[PHP Docs](这将破坏数组的键,但保留数组的值)或serialize()
[PHP Docs],它们将保留值和相关的键。
$theArray = array(
'key1' => 'One' ,
'key2' => 'Two'
);
$serArray = serialize( $theArray ); // a:2:{s:4:"key1";s:3:"One";s:4:"key2";s:3:"Two";}
$sqlStr = 'INSERT INTO `table` ( `name` , `arrayField` ) VALUES ( "Test Row" , "'.$serArray.'" )';
如果您正在讨论使用两个相关表来存储数据,那么建议您最好参考http://www.sql-tutorial.net/SQL-JOIN.asp,http://www.databasejournal.com/features/oracle/article.php/3527921/Just-SQL-Part-IV--Joining-Tables.htm等教程
答案 1 :(得分:0)
implode()
数组(因此将其序列化)然后将该字符串传递给MySQL。
答案 2 :(得分:0)
在存储在sql之前,使用implode将数组转换为字符串。通过使用explode函数将字符串的值重新转换为数组。对于存储字符串,请使用varchar或text作为字段类型。