麻烦看下我的数据库的表设计

来源:百度知道 编辑:UC知道 时间:2024/06/06 00:28:24
我想用jsp做一个类似QQ空间的东西,功能有日志,相册和留言板.
我的想法是设计4个表,如下
用户表:(用户名,密码,QQ,性别,昵称,年龄)
日志表:(用户名,日志标题,日志内容)
留言板表:(用户名,留言者,留言内容)
最好是相册表.
下面是我的问题:
1.我在每个表中都加入了用户名字段的目的是将各个表连接起来,因为要根据
登陆进来的用户名的不同来显示相对应的日志呀,留言呀什么的,请问我这
种想法和连接表的做法是不是合理?每个表都加入用户名我感觉这个做法有
点愚笨,但我又想不到好办法.大家明白我的意思吗?就是说如果不这样做,
那怎么来根据当前的登陆用户来调用它的日志,留言等与他有关的东西呢?
2.日志内容那么用varchar(255)能装的下吗?
3.相册怎么建表?怎么将图片存入数据库呢?

注:@初学者,就是想写点东西巩固点知识点,有很菜的问题大家别笑话哈~_~
@就剩70分了,没法给太多,不过还是希望大家解释的清楚点.
@提前感谢各位!
第二个问题我已经知道了

建议楼主先确定每个表的主键,外键,然后各表之间的联系是通过外键联系的,感觉留言表的设计不是很合理

如果是简单的设计,那么可以参照如下的设计方式进行设计:
1.用户表按你原来的设计思路
2.但你的日志表缺少个主键,来标识日志,日志表里的用户名只能作为一个外键来引用,标识这份日志是属于哪个用户的
3.留言表同样是缺少了主键,你的用户名和留言者都是外键,全部引用用户表里的用户名
另外,日志内容存放一般需要大容量,如果是SQL则用text或ntext,oracle则用clob
图片如果是SQL则用image,oracle则用blob