declare @all_customers as table( CustNum int);
/* --you can insert dummy data for testing purposes like so:
insert into @all_customers select 5, 1 union select 2, 1 --*/
while (0 < (select count(*) from @all_customers))
begin
declare @current_customer int = (select top 1 CustNum from @all_customers);
declare @balance money = (select acct_balance from [crrsql].[dbo].[Customer] where CustNum = @current_customer);
update [crrsql].[dbo].[Customer] set Acct_balance = 0;
INSERT INTO [crrsql].[dbo].[AR_Transactions] (cashier_ID, CustNum, Balance) VALUES (100199, user, abs(@balance));
delete @all_customers where customernumber = @current_customer;
end
我是否需要字表更改为实际的表名的第一线......或者是一个关键字,如果是的话我如何指定Customers表 基本上我需要通过[DBO]环[客户]表这是什么SQL循环做
从技术上讲,它是一个表变量,而不是临时表,http://blogs.msdn.com/b/sqlserverstorageengine/archive/2008/03/30/sql-server-table-variable-vs-local-temporary- table.aspx – 2011-05-24 19:01:27
但增量在哪里...喜欢这个循环如何知道什么时候停止 – Trace 2011-05-24 19:04:53
@Shan D'哦 - 谢谢,修正。 – Rup 2011-05-24 19:05:35