写一个存储过程吧:大概如下 -------------------------- CREATE PROCEDURE [cp_update_owner] AS DECLARE @car_num varchar(30), @car_owner varchar(30) DECLARE abc CURSOR FOR SELECT car_num FROM table_1 WHERE car_owner is null OPEN abc FETCH NEXT FROM abc INTO @car_num WHILE (@@FETCH_STATUS=0) BEGIN IF EXISTS(SELECT car_owner FROM table2 WHERE car_num=@car_num) BEGIN SELECT @car_owner=car_owner FROM table2 WHERE car_num=@car_num UPDATE table1 SET car_owner=@car_owner WHERE car_num=@car_num END FETCH NEXT FROM abc INTO @car_num ENDCLOSE abc DEALLOCATE abc
eg:
select * from northwind.dbo.orders
http://www.csdn.net/expert/topic/658/658443.xml?temp=.1761591
--------------------------
CREATE PROCEDURE [cp_update_owner]
AS
DECLARE @car_num varchar(30),
@car_owner varchar(30)
DECLARE abc CURSOR FOR SELECT car_num FROM table_1 WHERE car_owner is null
OPEN abc
FETCH NEXT FROM abc INTO @car_num
WHILE (@@FETCH_STATUS=0)
BEGIN
IF EXISTS(SELECT car_owner FROM table2 WHERE car_num=@car_num)
BEGIN
SELECT @car_owner=car_owner FROM table2 WHERE car_num=@car_num
UPDATE table1 SET car_owner=@car_owner WHERE car_num=@car_num
END FETCH NEXT FROM abc INTO @car_num
ENDCLOSE abc
DEALLOCATE abc
[databaseName].dbo.tableName
如上面的:datebase1.dbo.table1
database2.dbo.table2