怎样实现相同题目不能同时入库?....后端处理语言可以忽略,在这里不讨论什么语言是最好的...,因为我用的事最 low 的语言,在很多人看来。 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
sheldoner
V2EX    问与答

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

  •  
  •   sheldoner 2015-04-20 10:34:03 +08:00 2960 次点击
    这是一个创建于 3828 天前的主题,其中的信息可能已经有所发展或是发生改变。
    那么问题:相同题目不能入库。要怎么设计数据库?或者说业务逻辑怎么处理?

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

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

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

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

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

    如果说相同题目要提示“已存在相同的不能插入”那就必须一定要先查询吧?
    如果说无视,直接提示“提交(插入)失败”,那unique key不管他直接插入就好了吧。反正有异常能抓到。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2529 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 23ms UTC 04:35 PVG 12:35 LAX 21:35 JFK 00:35
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86