- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
<分区>
在 MySql 中,我想使用 SQL @@IDENTITY 的等价物,我找到了这个 LAST_INSERT_ID()。我在搜索中发现,即使存在不同的 session ,它也能正常工作。我想在当前 session 中找到最后一个 ID。我正在使用以下代码。
public static void main(String[] args) {
try {
Class.forName("com.mysql.jdbc.Driver");
Connection conn = null;
conn = DriverManager.getConnection("jdbc:mysql://localhost/fuel","root", "");
System.out.print("Database is connected !\n");
Statement st = conn.createStatement();
String response = "<food>";
String insertQuery = "INSERT INTO transactions(user_input,fuel_response,execution_time)"+
"VALUES(?,?,?)";
PreparedStatement prepareStatementObj = conn.prepareStatement(insertQuery);
prepareStatementObj.setString(1, "I drank a babyfood juice apple.");
prepareStatementObj.setString(2, response);
prepareStatementObj.setInt(3, 4500);
prepareStatementObj.execute();
String queryForId = "SELECT LAST_INSERT_ID() FROM transactions";
ResultSet rs2 = st.executeQuery(queryForId);
if (!rs2.isBeforeFirst() ) {
System.out.println("No data");
} else {
while ( rs2.next() ) {
int id = rs2.getInt("id");
System.out.println("Last id of this session was..."+id);
}
}
conn.close();
} catch(Exception e) {
System.out.print("Do not connect to DB - Error:"+e);
}
}
代码正在为插入工作,但我没有得到最后插入的 ID。它给出了以下异常。
未找到列“id”。如果您能提供帮助,我将不胜感激。
这个问题在这里已经有了答案: Easy mysql question regarding primary keys and an insert (4 个答案) 关闭 9 年前。 所以我想用公共(pu
我环顾四周,仍然对如何获取最后插入的 ID 感到困惑。我在正在执行的 mysql 语句末尾添加了语句 SELECT LAST_INSERT_ID();。我将值存储在 prID = Convert.To
所以我有如下 3 个表。 TOPICS TOPIC_TAGS Tags topic_id tag_id tag_id topic_data topic_id
$stmt2 = $db->prepare("INSERT INTO usertabbrige(`tabId`,`uId`)
我使用 PDO 在 PHP/MySql 上运行。 假设我有一个这样的查询。 $OrderId 在“Orders”表中自动递增。我可以使用 LAST_INSERT_ID() 在“Orders”和“Bou
CREATE FUNCTION `getSequenceNumber` ( company_id INTEGER, sequence_name varchar(255)) RETURNS INT(10
更新2:如果我手动将下面的EXECUTE代码示例替换为要执行的实际SQL代码,它工作得非常好,这告诉我这个问题已经厌倦了PREPARE、EXECUTE和DEALLOCATE PREPARE。 更新 1
我有以下代码。问题在于 SELECT LAST_INSERT_ID() 这总是返回最后插入的行。如果在获取最后一行之前实际插入了一行,我是否可以使用 INSERT IGNORE 检查,或者我是否可以简
我看不出我做错了什么,请帮忙。我正在学习 Select Last_Insert_Id,但我已经被困了几天了。 $result2 = $mysqli1->query("SELECT LAST_INSER
我有 3 个表: Words { wordId, name } WordGroups { wordGroupId, type} WordSets { wordSetId, wordId, wordGr
在 mysql 中创建线程安全序列时,我遇到了 mysql 文档 - https://dev.mysql.com/doc/refman/5.6/en/information-functions.htm
是否可以在插入查询中使用 LAST_INSERT_ID()? INSERT INTO mytable (col1, col2) VALUES ('val1', null), ('val2', LAST
我看过 official documentation但我还是有点困惑。 假设我有一个程序,它运行并执行插入,然后我请求 LAST_INSERT_ID(),我是从我的程序实例运行的插入中获取最后一个插入
我有一个包含三个查询的 mysql 事务 在第三个查询中,我试图从前两个查询中提取 last_insert_id 值。 VALUES ('".$result1[last_id]."','".$resu
我在 mysql 中有一个存储过程,它正在更新很多行然后插入一个(具体来说是分层数据结构)。除了我设置 @insert_id 变量的最后一段代码外,不要看太多代码。 CREATE DEFINER=`r
例如,如果我有插入查询: INSERT INTO user(username) VALUES('admin'); 然后用获取插入记录的id LAST_INSERT_ID(); 看起来找到了,但是如果在
我有两个表格,问题 和答案。answers 包含一个键 *question_id* 当我创建一个问题时,我将一条记录插入到questions 表中,并将几条记录插入到answers 表中。是否可以使用
我有这个问题:我有一个存储过程,它将行插入到具有自动递增列 a 的表 A,然后将一行插入到表 B,该表具有到列 A.a 的外键 b。我正在使用 LAST_INSERT_ID 获取列新插入行的值。但是
假设我们有 2 个数据库:a 和 b,以及表 a.test1 和 b.test2. 如果我需要在表a.test1中插入一行,并返回LAST_INSERT_ID()插入到b.test2中,将LAST_I
如果我有以下两个功能: int AccessDb::InsertColValue(string tableName, string col, string val) { try {
我是一名优秀的程序员,十分优秀!