将多个值存储在MySQL数据库中的单个coloumn中?
答
你不应该那样做。它表明数据库没有被正确设计。
但是,如果你必须做到这一点,而不改变你的数据库设计。你可以用一种特殊的胶水加入所有的电话号码,这是确保不属于任何电话号码,如%
。因此,5,7和16将全部存储在类型为varchar的一列中,作为5%7%16
,稍后将您的应用程序按需分割。
答
您可以用“,”或“;”分隔不同的值吗? 当你查询的内容,只是分割字符串的分隔符....
否则我不认为这是可能的。
答
通过用逗号分隔它们,例如?建议不要这样做,如果您需要同一列的多个值,则需要多行,或者最好是辅助表来存放所有电话号码。
但是,如果该列是VARCHAR或其他字符串形式,则可以只执行INSERT INTO table SET telephone = '5,7,16'
。将值重新分割成单独的条目更加困难,而且通常必须在程序代码中执行此操作。
+1指出这**不应该完成** ..但无论如何提供一个答案。 – lexu 2009-12-29 10:40:31