mysql - 怎样让相同题目不能入库
阿神
阿神 2017-04-17 12:03:00
[MySQL讨论组]

javaweb方向习题库设计,那么问题:相同题目不能入库。要怎么设计数据库?或者说业务逻辑怎么处理?

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

如果你想这么说的话,那就不要回答了,你能成为很好的产品。希望各位能给出切实可行的方法...谢谢

在这里谢谢三位网友的答案,其中两位是说,加一个字段key,但是我考虑了一下,如果我插入key相同,但题目内容一样的话,也是可以插入的,这不符合设计的原意。
还有一位的是说,对题目内容算出他们的MD5值,然后再插入时进行判断(大概就是这样的意思。)
但这样会又要投入一部分时间...我剩的时间不多了--!
有没有更好的办法,跪求...

阿神
阿神

闭关修行中......

全部回复(3)
天蓬老师

对这个试题的字符串做一个哈希散列(即签名或指纹),其他试题入库时比较这个散列,相同的就不然入库了,或者说80%内容相似不让入库,更高级的有感知哈希算法。

以上只是提供一个比较内容是否相同或相似的办法,如果要比较题意是否相同等语义分析,就太复杂了。

大家讲道理

在数据库表中设置唯一不允许重复key吧

大家讲道理

同意楼上的,+一个KEY或者ID来控制。或者增加一个对题目难度的维度也可行吧

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号