1

我正在使用多视图索引来插入新闻详细信息。在第一个视图中,用户可以输入新闻的详细信息,然后单击下一步按钮将其插入到数据库中,第二个视图让用户添加该新闻的图像(只允许 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();

}
4

2 回答 2

2

单独的 SQL 语句

SELECT SCOPE_IDENTITY()

OUTPUT 子句

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

编辑:

  • 更改您的插入语句以匹配我的
  • 将 .ExecuteNonQuery() 更改为 blah = xxx.ExecuteScalar()
于 2011-05-11T09:59:02.523 回答
0

作为 INSERT 语句的一部分(进入第一个 News 表),在它运行后,执行

SELECT SCOPE_IDENTITY()

并将NewsId值返回给调用者。

参考

于 2011-05-11T09:57:31.553 回答