问题标签 [last-insert-id]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - 在一个查询中插入具有 ID 的人员?
我需要像这样将数据添加到 MySQL 数据库中:
Person:
pId, nameId, titleId, age
Name:
nameId, name
Title:
titleId, title
我不想在数据库中有任何名称或头衔,所以我没有看到解决方案LAST_INSERT_ID()
我的方法是这样的:
但我想这是一个相当肮脏的方法!?如果可能的话,我想通过一个查询添加多个人,并且在 db 中没有任何超过一次。这可能以一种很好的方式吗?谢谢!
php - LAST_INSERT_ID 在 UPDATE 上不起作用
如果我使用这个 SQL:
我将获得0
最后一个插入 ID。我正在使用 php mysqli_insert_id
,据说:
我的表formualre
有auto increment
列,所以我不知道问题出在哪里
php - MySQL Last_Insert_ID 语法
我有这个代码:
当我尝试执行代码时,我收到了这个 MySQL 错误:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SET @id = (SELECT LAST_INSERT_ID())INSERT INTO test_descriptions (test_id, descr' at line 2
不确定做错了什么,所有的语法似乎都是正确的。谢谢。
php - 使用从 php 中选择 last_insert_id() 不起作用
我有这个完全相同的问题,但是那个答案很旧,而且我读过其他地方,mysql_insert_id() 的使用已被贬低,应该在新代码中避免使用。
数据库是 InnoDB,该表的主键设置为 auto_increment。
谁能看到我在这里做错了什么?我应该注意我是一个初学者并且自学,所以我很抱歉这是显而易见的。
更新:我正在使用 mysqli。
php - 直接在下一个准备好的语句中使用时,Insert_id 为空
最后开始学习准备好的陈述。尝试运行一对简单的插入时,我遇到了一个令人发狂的错误:
给出了这个echo $pv_stmt->error;
错误:Column 'page_id' cannot be null
正如我确定您可以解释的那样,我正在尝试分配page_id
第insert_id
一个语句。我 100% 确定这个值是非空的,并返回一个整数值。我直接用这个测试了它:
输出?NEW ID: 13::1
我究竟做错了什么?当列不为空时,为什么我得到“列不能为空”?我可以在网上找到的唯一解决方案是涉及意外的空值。
sql-server - MSSQL 触发器 - 在 INSERT 上更新新插入的记录
CustomerContact
如果SELECT
语句返回大于 0,我希望对插入到我的表中的行进行修改(设置已删除 = 1) 。
我有以下内容,但尚未经过测试:
在我的IF
声明中,我使用FROM INSERTED
,假设这将返回插入创建的记录的新插入 id。
我对这个声明有两个问题:
这部分语句会执行
UPDATE
刚刚插入的记录CustomerContact
吗?UPDATE CustomerContact SET Deleted = 1 WHERE CustomerContactID IN (SELECT CustomerContactID FROM INSERTED);
根据语句的结果对刚刚插入的行进行更改是否被认为是正确的方式
SELECT
?
CustomerContactID
是一个自动递增的主键列。
sql - ident_current 显示错误的最后插入 id
我有问题。我使用 SQL Server 2008 Express。
当新行插入表中时,该IDENT_CURRENT
函数返回正确的值(最后插入的行 ID)。但是当最后插入的行被删除(DELETE FROM REPORT WHERE ID='last_inserted_id'
)时,该IDENT_CURRENT
函数返回被删除行的 id。它不更新。
我需要从表中返回最后一个 id。
php - sql LAST_INSERT_ID() 和 PHP insert_id 都返回 0
我一直在谷歌上搜索这个问题,但真的一无所获。人们只是继续在 last_insert_id 上复制 MySQL 文档,仅此而已。
我有一个关于 last_insert_id 的问题,因为对于这两种情况(php 和 sql)它都返回 0。
是:我设置了一个具有 AUTO_INCREMENT 值的 PRIMARY 和 UNIQUE 字段 是:我在否之前做了一些插入:使用 INSERT AND SELECT LAST... 进行双重查询不起作用。
我创建了一个类 Db 来维护连接和查询:
它不起作用。
php - 如果不存在则插入新行并获取新的或现有的 id
我想通过一个代码使用NOT EXISTS和last_insert_id()来执行以下操作。下面的代码满足了我的需求, Col1 是一个唯一键,如果它已经存在,代码将不会插入数据。如果插入新行或已存在新行,则代码总是返回相关行的 $id。
php - cakephp getLastInsertID()
这段代码:
返回:
p>应该返回:
p>我尝试使用
p>但返回“1,1”......所以我做错了什么?