2009-12-29 42 views

回答

6

你不应该那样做。它表明数据库没有被正确设计。

但是,如果你必须做到这一点,而不改变你的数据库设计。你可以用一种特殊的胶水加入所有的电话号码,这是确保不属于任何电话号码,如%。因此,5,7和16将全部存储在类型为varchar的一列中,作为5%7%16,稍后将您的应用程序按需分割。

+1

+1指出这**不应该完成** ..但无论如何提供一个答案。 – lexu 2009-12-29 10:40:31

2

您可以用“,”或“;”分隔不同的值吗? 当你查询的内容,只是分割字符串的分隔符....

否则我不认为这是可能的。

1

通过用逗号分隔它们,例如?建议不要这样做,如果您需要同一列的多个值,则需要多行,或者最好是辅助表来存放所有电话号码。

但是,如果该列是VARCHAR或其他字符串形式,则可以只执行INSERT INTO table SET telephone = '5,7,16'。将值重新分割成单独的条目更加困难,而且通常必须在程序代码中执行此操作。

相关问题