,mysqli_insert_id需要lock表吗?

用户投稿 150 0

关于“mysql_insert_id_php7”的问题,小编就整理了【4】个相关介绍“mysql_insert_id_php7”的解答:

mysqli_insert_id需要lock表吗?

mysqli_insert_id是在连接是会话(SESSION)中获取的,其它用户同时有插入,或者你插入后再插入,你们两个用户都能各自获取正确的插入ID,无需锁定表。mysqli_insert_id语句事实上不进行数据库IO,可以理解为插入的当时就返回了值,保存在连接会话的变量中的,调用此函数只是从内存里面获取数据。

mysql怎么获取insert的id?

useGeneratedKeys="true" 可以获取自增长的ID 只支持具有自增长方式的那种数据库(mysql, mssql 等 但 oracle 就不支持了 ) 所以可以使用selectKey来获取

PHP的在线考试系统,做每一题都可以返回前一题修改答案,如何实现?

先把你上一题做答的数据会存到数据库,然后mysql_insert_id(),获取当前插入的ID ,同过把id传到下一个页面,取出数据就好了。

MySQL数据库INSERT、UPDATE、DELETE以及REPLACE语句的用法详解?

不知道你什么数据库.如果是 Oracle 数据库的话。如果要 改变 INSERT, UPDATE那么用 BEFORE FOR EACH ROW 的触发器。通过在触发器里面, 修改 :new 中的数据, 实现 更改 INSERT UPDATE 的数据。

举个例子来说,就是 插入的时候,数据是1的, 你触发器把1修改成2,最后写到数据库中,结果是2。DELETE 触发器没法 改变, 因为数据是删除的。至于要 取消INSERT, UPDATE以及DELETE语句只需要在触发器中, 抛出异常, 就会自动导致事务回滚,从而取消操作。

例如在 INSERT, UPDATE以及DELETE 的触发器中,只有这么一行-- 错误代码允许的范围是 -20,000~20,999RAISE_APPLICATION_ERROR(-20000, '触发器取消了操作!');那么最后对这个表的所有的 INSERT, UPDATE以及DELETE 操作,都直接因为出错,而无法更新数据库表了。

到此,以上就是小编对于“mysql_insert_id_php7”的问题就介绍到这了,希望介绍关于“mysql_insert_id_php7”的【4】点解答对大家有用。

抱歉,评论功能暂时关闭!