当前位置:编程学习 > JAVA >>

数据库添加数据问题

本人初学者
正在用dom4j向mysql添加数据
但是现在有个要求
在给数据库表格添加信息时
学生的证件类型可以相同,但是证件号不能相同
请问应该如何实现
我是想用java来验证,而不是用数据库来验证。 --------------------编程问答-------------------- java验证也一样要通过查询数据库才行。
--------------------编程问答--------------------
引用 1 楼 gukuitian 的回复:
java验证也一样要通过查询数据库才行。


肯定要查询数据库,这个我知道
就是想怎么实现 --------------------编程问答--------------------
引用 2 楼 shuaicai77777 的回复:
引用 1 楼 gukuitian 的回复:java验证也一样要通过查询数据库才行。

肯定要查询数据库,这个我知道
就是想怎么实现


比如你的表为table ,证件号是code,
select * from table where code ='将要插入的号';
能查出数据,就说明已经重复。否则合格 --------------------编程问答--------------------
引用 3 楼 gukuitian 的回复:
引用 2 楼 shuaicai77777 的回复:
引用 1 楼 gukuitian 的回复:java验证也一样要通过查询数据库才行。

肯定要查询数据库,这个我知道
就是想怎么实现

比如你的表为table ,证件号是code,
select * from table where code ='将要插入的号';
能查出数据,就说明已经重复。否则合格


但是我要的是证件类型可以相同,号码不同
有可能证件类型不一样,但是号码相同 --------------------编程问答-------------------- 求高手解答啊 --------------------编程问答-------------------- 你的意思不是让证件号非空唯一约束么? 那句sql有啥问题,没看出来。
select * from table where code ='将要插入的号';
难道这里相同证件的也能查出来啊? --------------------编程问答-------------------- 。。。你的意思是2个要保证有一个不同。刚才没明白 --------------------编程问答-------------------- 做个子查询呢
首先对类型查询
select * from table where type='类型';
然后再去结果里找有没有相同的code的
select count(*) from (select *from table where type='类型') wehre code='xxx';
这样呢? --------------------编程问答--------------------
引用 8 楼 lzz957748332 的回复:
做个子查询呢
首先对类型查询
select * from table where type='类型';
然后再去结果里找有没有相同的code的
select count(*) from (select *from table where type='类型') wehre code='xxx';
这样呢?


已存在证件类型为“身份证”编号为“123”的记录,就不允许再次插入身份证类型为“身份证”并且编号为“123”的记录。如果即将导入的证件类型和证件编号信息在表中不存在,则直接插入学生信息;如果证件类型和证件编号信息已存在,则认为本次导入的数据是更新后的最新数据,更新学生的基本信息。
补充:Java ,  Java相关
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,