回答

收藏

关系表的最佳方法

技术问答 技术问答 238 人阅读 | 0 人回复 | 2023-09-12

我有一个关于表和关系表的问题…
" E0 h' a  Z; ^9 V( j实际上,我有这三个表. c  B1 z$ N0 _9 d
CREATE TABLE USER (3 P! U' S# X+ Q' _! J
  ID int(11) NOT NULL AUTO_INCREMENT,
, x  V$ W1 S" Y; ~, u0 x. D8 C! i  NAME varchar(14) DEFAULT NULL8 {! f6 x- w& N/ d+ u0 I7 D& z
);
3 q; j7 J* R- a: N5 lCREATE TABLE COUNTRY (
6 E& U. K; W$ z  ID int(11) NOT NULL AUTO_INCREMENT,
2 D* z9 v6 E8 U  COUNTRY_NAME varchar(14) DEFAULT NULL
* ]' V% ]' H4 Z; T);
& C1 |$ X' l3 N9 xCREATE TABLE USER_COUNTRY_REL (
) E; B6 V" b- Q: d, {  ID int(11) NOT NULL AUTO_INCREMENT,1 V  e: Z. B' E% O% \3 _
  ID_USER int(11) NOT NULL,* O6 d# \- m! B. g+ I! O7 F
  ID_COUNTRY int(11) NOT NULL,
7 P) z' h0 p4 j);6 C; [" J) S; ]: p
好的,因此,现在,一个用户可以拥有一个或多个国家,因此,表USER_COUNTRY_REL中的多个条目可供一个用户使用。# w" z, E* m- p' b8 U
但是,我的表USER包含近130.000个条目…
. ~1 M8 J6 E" |- u9 I8 ^* i即使按用户1个国家/地区,USER_COUNTRY_REL表也接近10Mo。
  ?% e* @- R, |+ E3 f我有几种与此样式相关的表格…
  x: g% I* r& X. n! v6 R, K我的问题是,这是最快,更好的方法吗?( h4 N9 h$ Y' K& Y- Z% \" z
直接将它放在包含不同ID(例如:“ 2,6,…”)的USER表的COUNTRY字段中会更好吗?5 e  n9 U& K6 K; i0 G! _, O
谢谢你们 ;)1 h7 ^4 m, j$ a' ~6 j( {
                + @/ ^! U) S. U. x
解决方案:
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则