我呢,是在一家小公司上班,以前学习和在网上看的源码等,数据库都是多字段形式的。比如说,标题title。分类tid。内容content等等。
最近有个同事也是做程序的,经验上比我多,于是他推荐我用数组形式把信息存入数据库。比如:一个字段aa存的是:标题|分类|内容|时间等等,然后显示的时候在拆开
他说这么做的好处是:用户可以随便增加删除字段,比如说,我还想需要个录入人字段的话,如果想我以前那么多字段的话,还得修改数据库,而他这个不用。。。。
还说这么做插入信息快,而且查找的也不慢等等
我个人感觉这么做好像失去了数据库的作用,但我又不知道到底是不好在哪里,请问这么做数据的好处和坏处都是什么??请详细说明一下,谢谢
8 个解决方案
#1
不建议你那样子去做。
有近路不走,要走那么远的路干嘛?
有近路不走,要走那么远的路干嘛?
#2
能说明一下理由么??谢谢了
#3
他的思路也不是不行。在程序设计里是行得通的。但个人以为,只适用于条形码等特殊的用途。
如条形码里,可以把品名,生产日期,生产人员等信息全部弄进去。
但是,在普通的软件开发中,那样子做,会增加软件开发的难度,同时会增加内存的负担。
所以,非常反对这种做法。
而且,你把标题title。分类tid。内容content这些东西每个弄个字段,会让你的软件既好设计,又好用一些。
如条形码里,可以把品名,生产日期,生产人员等信息全部弄进去。
但是,在普通的软件开发中,那样子做,会增加软件开发的难度,同时会增加内存的负担。
所以,非常反对这种做法。
而且,你把标题title。分类tid。内容content这些东西每个弄个字段,会让你的软件既好设计,又好用一些。
#4
你同事推荐的这种方法是明示违反数据库设计范式要求的。通常不会采用,除了在某种情况会应用。
以你目前的情况来看,应该使用标准的设计,也就是你原来的方法。
建议你看一下这本书中有关数据库设计的部分。
《数据库系统概论(第四版)》 王珊 萨师煊 高等教育出版社 (掌握基础知识和概念)
以你目前的情况来看,应该使用标准的设计,也就是你原来的方法。
建议你看一下这本书中有关数据库设计的部分。
《数据库系统概论(第四版)》 王珊 萨师煊 高等教育出版社 (掌握基础知识和概念)
#5
那他说的那几个理由,首先速度不快吧,那如果需要添加修改字段等,该如何解决这种问题??多谢
#6
如果你有信心,完全可以告诉他,纯属胡说八道!
“用户可以随便增加删除字段,比如说,我还想需要个录入人字段的话,如果想我以前那么多字段的话,还得修改数据库,而他这个不用。。。。”
这个可以承认,但你不还是需要修改程序? 你自己对比一下需要修改的东西。
还说这么做插入信息快
有这种可能,但要看你插入的是什么信息。
而且查找的也不慢
无稽之谈,你让他做个试验。 比如查找所有 分类=‘ABCD’ 的。
他所提的这种方法,在某些特殊应用下或许可行。但你这种并不合适。
#7
明白多,多谢!!!
#8
数据量不大,要查找的项目不多,速度还可以
数据量大,要查找的项目多,速度就不行了
数据量大,要查找的项目多,速度就不行了
#1
不建议你那样子去做。
有近路不走,要走那么远的路干嘛?
有近路不走,要走那么远的路干嘛?
#2
能说明一下理由么??谢谢了
#3
他的思路也不是不行。在程序设计里是行得通的。但个人以为,只适用于条形码等特殊的用途。
如条形码里,可以把品名,生产日期,生产人员等信息全部弄进去。
但是,在普通的软件开发中,那样子做,会增加软件开发的难度,同时会增加内存的负担。
所以,非常反对这种做法。
而且,你把标题title。分类tid。内容content这些东西每个弄个字段,会让你的软件既好设计,又好用一些。
如条形码里,可以把品名,生产日期,生产人员等信息全部弄进去。
但是,在普通的软件开发中,那样子做,会增加软件开发的难度,同时会增加内存的负担。
所以,非常反对这种做法。
而且,你把标题title。分类tid。内容content这些东西每个弄个字段,会让你的软件既好设计,又好用一些。
#4
你同事推荐的这种方法是明示违反数据库设计范式要求的。通常不会采用,除了在某种情况会应用。
以你目前的情况来看,应该使用标准的设计,也就是你原来的方法。
建议你看一下这本书中有关数据库设计的部分。
《数据库系统概论(第四版)》 王珊 萨师煊 高等教育出版社 (掌握基础知识和概念)
以你目前的情况来看,应该使用标准的设计,也就是你原来的方法。
建议你看一下这本书中有关数据库设计的部分。
《数据库系统概论(第四版)》 王珊 萨师煊 高等教育出版社 (掌握基础知识和概念)
#5
那他说的那几个理由,首先速度不快吧,那如果需要添加修改字段等,该如何解决这种问题??多谢
#6
如果你有信心,完全可以告诉他,纯属胡说八道!
“用户可以随便增加删除字段,比如说,我还想需要个录入人字段的话,如果想我以前那么多字段的话,还得修改数据库,而他这个不用。。。。”
这个可以承认,但你不还是需要修改程序? 你自己对比一下需要修改的东西。
还说这么做插入信息快
有这种可能,但要看你插入的是什么信息。
而且查找的也不慢
无稽之谈,你让他做个试验。 比如查找所有 分类=‘ABCD’ 的。
他所提的这种方法,在某些特殊应用下或许可行。但你这种并不合适。
#7
明白多,多谢!!!
#8
数据量不大,要查找的项目不多,速度还可以
数据量大,要查找的项目多,速度就不行了
数据量大,要查找的项目多,速度就不行了