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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 数据库插入之前判断数据是不是存在相关的知识,希望对你有一定的参考价值。

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>";

select count(name) from 表 where name='阿飞'
if(count>=1)//当count大于等于1,那么就说明已经存在阿飞了

//这里也就不用写啥代码了

else

insert into 表(name) values('阿飞');
参考技术A $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

本回答被提问者采纳
参考技术B 这个交给数据库处理就好了 用isexist 判断就好了
如果你非要在Java里面判断的话就这样写吧:
try
//查询goods_select 的代码
//如果goods_select 不存在会抛出异常
catch(Excetion e)
//这里就写你想要执行的操作
参考技术C 验重操作的原理就是在插入数据之前,
先查询一遍数据库,是否有重复的记录,如果有,就显示不能插入,如果没有,就显示插入成功。
select count(1) from 表 where 分类名称=‘阿飞’
在页面的调用后台程序,可以通过ajax无刷新调用,也可以form提交调用。

mysql 刚建的表格提示不存在,是啥原因?

想向表格插入一条insert into students values(NULL, "王刚", "男", 20, "13811371377");提示table doesn't exist。
而且我想把表格student,students中的student删除,用drop student命令删不了,提示出错。

你用的数据库不是之前创建表所在的数据库了,就会提示表不存在。 参考技术A USE `test`; DELIMITER $$ DROP TRIGGER IF EXISTS test.desktop_test_AFTER_INSERT$$ USE `test`$$ CREATE DEFINER = CURRENT_USER TRIGGER `test`.`desktop_test_AFTER_INSERT` AFTER INSERT ON `desktop_test` FOR EACH ROW begin set @tv=1000 ; set @newdate=new.cdate ; set @newh=new.h ; insert into check_log_test select cdate,h,(case when pv_pc<=@tv then 1 else 0 end),pv_pc from desktop_test where cdate=@newdate and h=@newh ; end; DELIMITER ;

以上是关于mysql 数据库插入之前判断数据是不是存在的主要内容,如果未能解决你的问题,请参考以下文章

mysql插入数据时,判断是不是存在,存在则替代,不存在则直接插入,需要能够批量处理。

关于向mysql数据库中插入数据时,判断是不是进行插入的问题

SQL 插入之前怎么判断数据库已经存在

mysql 添加数据判断是不是重复添加

如何判断某个mysql数据库是不是已存在

Python操作mysql,怎么样判断输入的值在数据表中是不是存在