标签: insert-id

如何在JDBC中获取插入ID?

我希望INSERT在Java中使用JDBC中的数据库(在我的情况下是Microsoft SQL Server)中的记录.同时,我想获取插入ID.如何使用JDBC API实现此目的?

java sql insert-id jdbc

366
推荐指数
5
解决办法
26万
查看次数

MySQL ON DUPLICATE KEY - 最后一次插入ID?

我有以下查询:

INSERT INTO table (a) VALUES (0)
  ON DUPLICATE KEY UPDATE a=1
Run Code Online (Sandbox Code Playgroud)

我想要插入或更新的ID.通常我会运行第二个查询以获取此信息,因为我认为insert_id()只返回'inserted'ID而不是更新的ID.

有没有办法INSERT/UPDATE并检索行的ID而不运行两个查询?

mysql insert-id

125
推荐指数
2
解决办法
7万
查看次数

mysql_insert_id替代postgresql

是否有替代mysql_insert_id()PostgreSQL的PHP​​函数?大多数框架通过查找ID中使用的序列的当前值来部分解决问题.但是,有时主键不是串行列....

php postgresql insert-id

22
推荐指数
2
解决办法
2万
查看次数

在Mysql中插入日期和时间

我想在mysql datetime字段中插入日期和时间.当用户选择日期和时间时,它将生成两个POST变量.我搜索过互联网,但仍不确定如何做到这一点.

我的代码.

//date value is 05/25/2010
//time value is 10:00

$date=$_POST['date'];
$time=$_POST['time'];

$datetime=$date.$time
Run Code Online (Sandbox Code Playgroud)

如果我将$ datetime插入mysql,则日期显示为0000-00-00:00:00:00

如果有人能帮助我,我感激不尽.谢谢.

php mysql datetime insert-id date

11
推荐指数
1
解决办法
4万
查看次数

MySQL:使用插入语句本身插入的行的id

我正在尝试这样的事情:

INSERT INTO dir_pictures SET filename=CONCAT(picture_id,'-test');
Run Code Online (Sandbox Code Playgroud)

picture_id是我的主键,自动增量.基本上我正在尝试将此insert语句的id放在语句本身中.

我确信可以使用一些额外的PHP代码或使用多个语句来完成,但我想知道是否有一种快速简便的方法可以一次性完成.

PS.上面的陈述总是把'0测试'

php mysql sql insert-id

7
推荐指数
1
解决办法
2531
查看次数

zend框架使用execute获取多行插入的最后一个插入id

如何使用multirow插入获取最后插入的ID?这是我的代码:

$sql='INSERT INTO t (col1, col2, col3) VALUES (1, 2, 3), (4, 5, 6), (7, 8, 9)'; // example
$stmt = $contactsTable->getAdapter()->prepare($sql);
$stmt->execute(); 
$rowsAdded=$stmt->rowCount(); // mysql_affected_rows
$lastId=$stmt->lastInsertId();
echo '<br>Last ID: '.$lastId;
Run Code Online (Sandbox Code Playgroud)

另外,ZF中是否有一个方法可以在插入之前获取下一个插入ID?

谢谢

zend-framework insert-id

5
推荐指数
1
解决办法
2万
查看次数

Codeigniter insert_id()函数正确检索最后一个插入ID?

我在3〜4年前编程,我记得在2005年的一本关于使用mysql_insert_id检索last_inser_id的安全性的php安全书.

在书中说如果同时向服务器发出多个请求(数千个),则可能使得last_insert_id的检索错误,以用户的id指向其他用户结束.

现在我们在2013年,你们有什么要说的,特别是使用codeigniter insert_id().

pd:我试图在其他地方找到关于我的问题的相关信息,但我没有找到具体的东西.

php codeigniter insert-id

5
推荐指数
1
解决办法
4730
查看次数

按插入顺序检索核心数据实体

我可以在NSSortDescriptor中使用内部ID变量或时间戳来按插入顺序检索Core Data实体吗?

如果有更清洁的方式,我宁愿不必创建这样的属性,但如果没有其他选择,显然会这样做.

sorting timestamp insert-id core-data

4
推荐指数
1
解决办法
4273
查看次数

MySQL current_insert_id()?(不是last_insert_id())

我正在插入一个带有char列的行,用于基于(除其他外)行的自动id之外的哈希.

我知道我可以插入它,获取insert_id,计算哈希值并更新它.

有没有人知道在单个查询中执行此操作的方法?插入时需要插入行insert_id.那是完全不可能的,还是有类似current_insert_id()的东西......

谢谢!

mysql insert-id auto-increment

3
推荐指数
1
解决办法
3399
查看次数

Postgresql和PHP:在多用户应用程序中,currval是一种检索最后一行插入id的有效方法吗?

我想知道我用来检索postgresql表中插入的最后一行的id的方式是有效的..

显然,它可以工作,但是当我有许多用户同时在同一个表中添加行时,引用串行序列currval值可能会有问题.

我的实际方式是:

$pgConnection = pg_connect('host=127.0.0.1 dbname=test user=myuser password=xxxxx')or die('cant connect');

$insert = pg_query("INSERT INTO customer (name) VALUES ('blabla')");
$last_id_query = pg_query("SELECT currval('customer_id_seq')");
$last_id_results = pg_fetch_assoc($last_id_query);
print_r($last_id_results);
pg_close($pgConnection);
Run Code Online (Sandbox Code Playgroud)

好吧,它只是一个测试atm.但无论如何,我可以用这种方式看到3个问题:

  1. 引用customer_id_seq,如果两个用户在同一时间做同样的事情,可能会发生他们都从那个方式获得相同的id ......或者不是?
  2. 必须知道表的序列名称.知道pg_get_serial_sequence不适用于我(在postgresql上我是新手,可能是配置问题)

有什么建议/更好的方法吗?

ps:我不能使用PDO,因为似乎缺少事务保存点; 我不会使用zend,最后,我更喜欢使用php pg_*函数(也许我最终会构建我的类)

编辑:

@SpliFF(他们删除了他的回答):这会更好吗?

$pgConnection = pg_connect('host=127.0.0.1 dbname=test user=myuser password=xxxxx')or die('cant connect');

pg_query("BEGIN");

$insert = pg_query("INSERT INTO customer (name) VALUES ('blabla')");

$last_id_query = pg_query("SELECT currval('customer_id_seq')");

$last_id_results = pg_fetch_assoc($last_id_query);

print_r($last_id_results);

//do somethings with the new customer id

pg_query("COMMIT");

pg_close($pgConnection);
Run Code Online (Sandbox Code Playgroud)

php postgresql insert-id

3
推荐指数
1
解决办法
6775
查看次数

我如何处理mysql表中的并发插入并获取正确的插入ID

我正在使用adodb for PHP库.

为了获取插入记录的id,我使用此函数

"$db->Insert_ID()"

我想知道是否有多个同时插入数据库表,这个方法会为每个插入的记录返回正确的插入ID吗?

我问这个的原因是因为我使用这个最后一个插入id来进一步处理其他记录并在相关表中进行后续输入.

这种方法是否足够安全,或者我错过了什么.

请帮我为此制定一个正确的工作计划,以便我可以使用最后一个插入ID进一步插入到另一个表中,而不必弄乱现有数据.

谢谢

php insert-id adodb lastinsertid

3
推荐指数
1
解决办法
3847
查看次数