从需要更新的数据库中提取数据的最佳方法是什么?

问题描述:

我需要使用查询像这样的插入数据到数据库中:从需要更新的数据库中提取数据的最佳方法是什么?

INSERT INTO Table1 
    (aID) 
VALUES 
    (select aID from Table2 where aID="aID")) 

的问题是,如果表2没有帮助下我需要它来更新它并提取新创建的ID。有没有自动执行它的SQL命令?

+0

您正在使用哪种DBMS和版本? SQL Server 2008,Oracle等。 如果table2没有aID,那么您如何确定要更新哪一行? – 2009-10-15 23:59:31

你的问题有点儿在地图上... 问题是,如果Table2没有aID,我需要用它来更新它 - 这是什么意思?

如果它不存在,你必须插入它......正确?

说了这么多,你需要写一个存储过程来实现你的目标...,也可以设置“援助” ...是一个自增,播种标识符列型

让我知道如果您需要详细说明

假设您在实际查询中添加了更多的列,因为此刻它没有任何意义,您只需要在整个事件中包含一列。

假设您想要将表2中的其他列插入到表1中,然后将表1中的新ID更新到表2中,那么没有一个命令会为您执行此操作。

喜欢的东西(在SQL Server) DECLARE @newId INT 插入到表1(..列..)从表2的值选择(..columns ..),援助= “援助”) 选择@ NEWID = scope_identity() update table2 set foreign_key_column_to_table_1 = @ newId其中aID =“aID”