mysql 数据库插入之前判断数据是否存在

mysql数据库插入之前判断数据是否存在如图,如果存在阿飞则不能再插入了?selectcount(1)from表where分类名称=‘阿飞’根据返回值判断还是根据什么判断... mysql 数据库插入之前判断数据是否存在
如图,如果存在阿飞则不能再插入了?
select count(1) from 表 where 分类名称=‘阿飞’
根据返回值判断还是根据什么判断,最好是那种带插入带判断的
这个是先查后插入的,有没有更好的带插入带判断的
$query=$db->query("select navname from sort where navname='$sort'");
if(mysql_num_rows($query)){
echo "<script>";
echo "alert('有重复数据!');location.href='admin_sort.php'";
echo "</script>";
}else{
$db->query("insert ignore into sort(id,cid,navname,date) values('','','{$sort}',now())");
echo "<script>";
echo "alert('添加成功!');location.href='admin_sort.php'";
echo "</script>";
}
展开
 我来答
大海泛舟2018
2011-02-18 · TA获得超过217个赞
知道小有建树答主
回答量:323
采纳率:0%
帮助的人:264万
展开全部
select count(name) from 表 where name='阿飞'
if(count>=1)//当count大于等于1,那么就说明已经存在阿飞了
{
//这里也就不用写啥代码了
}
else
{
insert into 表(name) values('阿飞');
}
百度网友62795ff
2011-02-19 · TA获得超过141个赞
知道小有建树答主
回答量:78
采纳率:0%
帮助的人:111万
展开全部
$sql = "INSERT INTO sort (id,cid,navname,date) SELECT '','','{$sort}',now() FROM sort WHERE NOT EXISTS(SELECT * FROM sort WHERE navname='{$sort}') LIMIT 1";
$num = mysql_affected_rows();
if($num ==0) {
// 有重复数据
} else {
//插入成功
}
参看MySQL文档中insert-select语法。

参考资料: http://dev.mysql.com/doc/refman/5.1/zh/sql-syntax.html#insert-select

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fgfxr03
2011-02-19 · TA获得超过151个赞
知道答主
回答量:236
采纳率:100%
帮助的人:0
展开全部
这个交给数据库处理就好了 用isexist 判断就好了
如果你非要在Java里面判断的话就这样写吧:
try{
//查询goods_select 的代码
//如果goods_select 不存在会抛出异常
}catch(Excetion e){
//这里就写你想要执行的操作
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
shileiff8
2011-02-18
知道答主
回答量:12
采纳率:0%
帮助的人:7.8万
展开全部
验重操作的原理就是在插入数据之前,
先查询一遍数据库,是否有重复的记录,如果有,就显示不能插入,如果没有,就显示插入成功。
select count(1) from 表 where 分类名称=‘阿飞’
在页面的调用后台程序,可以通过ajax无刷新调用,也可以form提交调用。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式