如何编辑数据库中的最新行。我只知道这是最后一个。我不知道它的ID。编辑数据库中的最新行?
回答
我不知道您正在使用哪种语言,在PHP的MySQL的功能,你可以使用
在我所知的每一个mySQL客户端库中都有类似的功能。
此外,还有一个native mySQL function!
LAST_INSERT_ID()(无参数) 返回由最 最近执行的INSERT语句用于 AUTO_INCREMENT列设置为 第一自动 生成的值影响这样的列。例如, 插入产生 一个AUTO_INCREMENT值的行之后,就可以得到 这样的值:
的MySQL> SELECT LAST_INSERT_ID(); - > 195
当然,使用AUTO_INCREMENT的主键需要这些功能才能正常工作。
对于一个AUTO_INCREMENT id字段的表:
UPDATE tbl SET col1 = 'val1' WHERE id = MAX(id);
不保证,如果有多个用户/线程 – duffymo 2010-01-05 23:07:27
如果这是一行已插入到您的脚本(您想从中更新它的同一脚本)并且您的表上有一个auto_increment列,则可以使用函数(如这些,对于PHP:
应该有可能用于应用程序的任何语言的等效语言。
如果您试图从另一个脚本执行更新,而不是执行插入操作,并且仍然有auto_increment列,则最好的方法可能是更新具有最大值的行该列:
update your_table
set your_column = ...
where id = max(id)
或者,在两个步骤(不知道它会在一个工作):
select max(id) as id from your_table
update your_table set your_column = ... where id = [what you got with thr first query]
男人男人的男人......你的PHP简单的答案最好的。 :) – 2010-01-05 22:32:31
即使这个问题没有指定“php”,我仍然给出一个与PHP相关的答案 - 好吧,PHP经常使用,它可能适用于这里;;谢谢 :-) – 2010-01-05 22:33:59
您还可以使用UPDATE table SET ... WHERE id=LAST_INSERT_ID()
(suppos最后一个插入位于要查询的表上)。
我不会使用两个步骤来找到最后一个插入ID,只是因为可以同时添加一条新记录。
根据你的版本,你应该可以调用$ handle-> last_id();或$ handle - > {mysql_insertid};
克里斯
- 1. 更新/编辑数据库
- 2. 编辑数据库中的一行
- 3. PHP - 更新/编辑数据库表中的数据/记录
- 4. 编辑更新DatagridView VB.Net(无数据库)
- 5. 无法更新/编辑数据库
- 6. 用户更新数据库编辑
- 7. Django的编辑和更新现有的数据在数据库
- 8. django从数据库中提取数据进行编辑
- 9. 在运行时编辑datagridview并更新数据库
- 10. 更新数据库,编辑gridview的使用后的交易中
- 11. CSV数据库列编辑
- 12. 编辑数据库PHP HTML
- 13. 添加编辑按钮到html表中的每一行,编辑数据库
- 14. 以编程方式编辑SQLite数据库中的数据
- 15. 重新编辑数据库时保留连接表数据
- 16. 编辑wpf数据网格中整行的最佳方式?
- 17. 编辑数据库元数据
- 18. Oracle:如何仅更新oracle数据库中的最新行
- 19. 如何在R中编辑数据库?
- 20. TableView在javafx中编辑数据库表
- 21. 将编辑行中的值传递到数据库
- 22. 最好的Oracle数据库管理器/编辑器?
- 23. 编辑/查看SQL Server 2008数据库的最佳工具
- 24. 编辑数据网格行
- 25. 编辑mysql数据库表中的预先存在的数据
- 26. PHP MySQL的编辑数据库条目
- 27. BSON数据库的简单编辑器
- 28. 的Django当编辑从数据库
- 29. 使用mysql中最旧行的数据更新最新一行
- 30. 从剃刀视图中的数据库编辑数据
+1的原生MySQL的方法是正确的,太 - 从来没有想过一个^^ – 2010-01-05 22:34:49