怎样实现相同题目不能同时入库?....后端处理语言可以忽略,在这里不讨论什么语言是最好的...,因为我用的事最 low 的语言,在很多人看来。

2015-04-20 10:34:03 +08:00
 sheldoner
那么问题:相同题目不能入库。要怎么设计数据库?或者说业务逻辑怎么处理?

以一个外行的话表述实现功能,就是:在插入题目前对整个数据库的题目进行查询,相同的就不能插入。

如果你想这么说的话,那就不要回答了,你能成为很好的产品。希望各位能给出切实可行的方法...谢谢
各位v友。
2717 次点击
所在节点    问与答
14 条回复
NewYear
2015-04-20 11:36:10 +08:00
字段可以限制禁止相同内容的2条出现,access都有,其他的数据库应该自带吧,有相同的插入的时候会失败。

至于您说的“切实可行的方法”……我反而不知道您要什么呢。

要不然您说说您用的是什么语言和数据库,我常常用vb6+access还有asp,别怕被说,我们是来解决问题的。
qping
2015-04-20 12:17:32 +08:00
Unique key
sheldoner
2015-04-20 13:51:32 +08:00
@NewYear 数据库是mysql,后端是java....你说字段限制相同的东西,值设置主键的?还是楼下说的unique key...如果unique key 真像网上说的,插入时自动查询数据库的话,那我就不要头疼了,谢谢...
xiaogui
2015-04-20 13:52:29 +08:00
其实主要问题是你如何定义“相同题目”。
jokester
2015-04-20 13:53:38 +08:00
"数据库的题目"这用法很新颖。。能解释一下吗
NewYear
2015-04-20 14:01:05 +08:00
@sheldoner mysql不会玩,不过随便搜了一下 看这里

http://www.jb51.net/article/40635.htm
sheldoner
2015-04-20 14:06:20 +08:00
@qping unique key
@NewYear
我试了一下,他好像是有大小限制的,我的是767bytes,我的题目如果输入的题目的过长的话,那么它就失效了...谢了,还有其他的方法么?不要说算题目的MD5...
shiny
2015-04-20 14:08:49 +08:00
没交代的一点是完全匹配还是要做相似度检测。
sheldoner
2015-04-20 14:10:38 +08:00
@xiaogui 其实我也想了一下...相同题目的定义让机器去判断的话,就比较麻烦了,要想的比较广泛了。鉴于作业的要求...就定义题目完全一样
lichao
2015-04-20 14:10:59 +08:00
@sheldoner 如果有大小限制,MD5 也是很不错的方法啊,有什么不能说的
sheldoner
2015-04-20 14:15:45 +08:00
@jokester 就是数据库的一个字段(题目内容exercises这个字段)...插入题目内容。
sheldoner
2015-04-20 14:16:41 +08:00
@lichao 我时间不够了...在改的话...要迟交了
sheldoner
2015-04-20 14:20:29 +08:00
@shiny 这个...都行。你看哪个简单点?能告诉两个方法具体的做法么?
cevincheung
2015-04-20 14:31:03 +08:00
看需求了吧。

如果说相同题目要提示“已存在相同的不能插入”那就必须一定要先查询吧?
如果说无视,直接提示“提交(插入)失败”,那unique key不管他直接插入就好了吧。反正有异常能抓到。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/184879

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX