当前位置: 首页 > 面试题库 >

如何获取插入到表中的最后一行的主键

阳修永
2023-03-14
问题内容

我正在使用多视图索引来插入新闻详细信息。在第一个视图中,用户可以输入新闻的详细信息,然后单击下一步按钮将其插入db。第二个视图中,用户可以添加新闻的图像(仅允许3张图像),

我遇到的问题是,第一个视图将数据插入具有主键newsID的表dbo.newsdetail中,而第二个视图应使用刚刚添加到newsimages表中的新闻的newsId添加受尊重的图像。我只是不知道如何获取在第一个视图中添加的详细信息的newsID,因为新闻ID用作两个表的外键。任何帮助或建议,将不胜感激。

 static public void insertNews(string newsDescription, string newsImage, string newsTitle)
{
    SqlConnection conn = new SqlConnection(ConnectionString);
    conn.Open();
    SqlCommand insertNews = new SqlCommand("Insert INTO caravanNews(newsDescription, newsImage, newsTitle) VALUES ('" + newsDescription + "', '" + newsImage + "' , '" + newsTitle + "')",conn);
    insertNews.ExecuteNonQuery();
    conn.Close();

}

问题答案:

单独的SQL语句

SELECT SCOPE_IDENTITY()

或OUTPUT子句

INSERT MyTable (...=
OUTPUT INSERTED.KeyCol
VALUES (...) --Or SELECT ... FROM Another table)

编辑:

  • 更改您的插入语句以匹配我的
  • 将.ExecuteNonQuery()更改为blah = xxx.ExecuteScalar()


 类似资料:
  • 问题内容: 我正在使用PHP中的mvc结构,我想检索最后插入的行ID。 我创建了以下sql代码: 但不幸的是我遇到了这个错误: 我也尝试过此堆栈链接,但不适用于我,因此如果您能帮助我获取ID,我将非常高兴。 我也在这里共享我的controller.php文件。 问题答案: 你快到了。 如果您查看lastInsertId的手册页,则会在数据库句柄上调用它- 您当前正在语句中对其进行调用。 您只需要致

  • 问题内容: 我想获取表中最后一个ID插入的值。我该怎么做? 问题答案: 好吧,我使用的解决方案是: 这将从插入数据库的最后一行获取id列:)

  • 问题内容: 我有一个经常插入新数据的表。我需要获取表的最后一个ID。我怎样才能做到这一点? 类似于吗? 问题答案: 如果您使用的是PDO,请使用。 如果您使用的是Mysqli,请使用。 如果您仍在使用Mysql: 请不要在新代码中使用函数。它们不再维护,已正式弃用。看到 红色框了 吗?了解 准备的语句 来代替,并使用 PDO 或库MySQLi -本文将帮助你决定哪些。如果您选择PDO,这是一个很好

  • 这是我的密码 我想获取特定记录的最后一个插入id。我试过使用雄辩的ORM。但它不起作用。 任何帮助都将不胜感激。 非常感谢。

  • 问题内容: 我将主键设置为自动递增。 我正在执行多个查询,我需要检索该主键值以用作另一个表()中的外键。 当我执行插入查询时,是否有任何优雅的方法来获取主键值?现在,我正在重新查询并获得该列中的最高价值,这似乎真的很棘手。 有什么建议? 问题答案: 通过scope_identity()获得新的PK

  • 我插入批量插入laravel 5像这样: 知道如何获取最后一个插入的id吗?