一表中有一字段USERMS,我想用SQL语句往表里插一条记录,如果该用户不存在就新增一条,

时间:2021-07-30 15:12:35
一表中有一字段USERMS,我想用SQL语句往表里插一条记录,如果该用户不存在就新增一条,如果存在就不填了。

7 个解决方案

#1


看你用的数据库,有些支持有些不支持。我记得sql server好像支持。oracle不行。

不过不肯定。供参考。

#2


我用的是mysql

#3


mysql不支持存储过程了

先取在没有相应用户的记录
没有就添加

#4


只能先查后插了。。。

#5


怎么查怎么写能写个例子吗?

#6


可以先UPDATE,看有没有影响到的记录数,如果没有影响到的话就INSERT一条。

#7


首先看看数据库的约束有没有做好,如果做好了,可以直接插,捕获抛出异常,从异常判断一下是否有数据存在。
如果没有约束的话,那么你可以按上面各位的方式来进行编码,可以先搜索,不过搜索策略最好设计一下,如果返回ResultSet记录集,然后扫描自然可行,但如果表中数据行过大,效率恐怕太慢。找一找规律,比如返回记录集时只返回一部分可能的等等。

#1


看你用的数据库,有些支持有些不支持。我记得sql server好像支持。oracle不行。

不过不肯定。供参考。

#2


我用的是mysql

#3


mysql不支持存储过程了

先取在没有相应用户的记录
没有就添加

#4


只能先查后插了。。。

#5


怎么查怎么写能写个例子吗?

#6


可以先UPDATE,看有没有影响到的记录数,如果没有影响到的话就INSERT一条。

#7


首先看看数据库的约束有没有做好,如果做好了,可以直接插,捕获抛出异常,从异常判断一下是否有数据存在。
如果没有约束的话,那么你可以按上面各位的方式来进行编码,可以先搜索,不过搜索策略最好设计一下,如果返回ResultSet记录集,然后扫描自然可行,但如果表中数据行过大,效率恐怕太慢。找一找规律,比如返回记录集时只返回一部分可能的等等。