java – 如何同时插入和选择mysql

我有一个要求,我需要在mysql中插入手机号码,当且仅当数字不存在时.为此我首先检查mysql中是否存在使用select查询的数字.如果数字不存在则插入.以下是我的代码
PreparedStatement pt1=con.prepareStatement("select * from registerSmsUsers where mobile='"+mobile+"'");
PreparedStatement pt=con.prepareStatement("insert into registerSmsUsers values(?,?,?)");
pt.setString(1, name);
pt.setString(2, email);
pt.setString(3, mobile);
ResultSet rs1=pt1.executeQuery();
if(rs1.next())
{pt.executeUpdate();}
我不知道这是否是一种有效的方法.请给我一个更好的方法
解决方法:
可能是mysql中最简单的方法是:
insert ignore into registerSmsUsers values(?,?,?)
假设您在移动设备上拥有唯一密钥
你可以在这里查看:How to ‘insert if not exists’ in MySQL?
或者在这里:http://dev.mysql.com/doc/refman/5.6/en/insert.html