.net/mysql相关,执行更新插入时的优化方法

表1:
id type name status
1 1 张三 1
2 1 李四 0
3 1 王五 1

表2:
id type name status
1 1 张三 0
2 1 李四 0
3 1 王五 1
4 1 老六 1

有啥效率高点的程序执行办法,把表1的数据改成表2吗?

表2在插入数据时,判断了一下是否存在记录,
存在,则update期望的status状态,
如果不存在,执行insert

(备注:表1、表2 指的是 一张表 在 执行完操作以后的2个状态)

本质上,在底层,更新操作也是删除+插入新字段实现的,只是数据库底层完成的,并且原子化了。
所以你写一个存储过程,把判断插入和修改放在里面,被主程序调用,就是最高效的了。

存储过程是比较高效的。可以在存储过程中写两条语句,一条语句是通过连接查询来更新,一条语句是通过连接查询来插入。