SQL 2005 Tips Bulk data transfer sample
CREATE PROC [dbo].[UP_EC_JOB_UpdateAddressType]
(
@Count INT
)
AS
BEGIN
SET NOCOUNT ON
DECLARE @TransactionNumber INT
DECLARE @Cursor CURSOR
SET @Cursor = CURSOR LOCAL STATIC FORWARD_ONLY READ_ONLY
FOR
SELECT TOP(@Count) TransactionNumber
from dbo.CustomerShippingInfo WITH(NOLOCK)
WHERE AddressType IS NULL
OPEN @Cursor
FETCH NEXT from @Cursor INTO @TransactionNumber
WHILE (@@FETCH_STATUS = 0)
BEGIN
UPDATE dbo.CustomerShippingInfo
SET AddressType = 1
WHERE TransactionNumber = @TransactionNumber
FETCH NEXT from @Cursor INTO @TransactionNumber
END
CLOSE @Cursor
DEALLOCATE @Cursor
END
相关文档:
本系列文章导航
[Oracle]高效的PL/SQL程序设计(一)--伪列ROWNUM使用技巧
[Oracle]高效的PL/SQL程序设计(二)--标量子查询
[Oracle]高效的PL/SQL程序设计(三)--Package的优点
[Oracle]高效的PL/SQL程序设计(四)--批量处理
[Oracle]高效的PL/SQL程序设计(五)--调用存储过程返回结果集
[Oracle]高效的PL/SQL程序设计(六)- ......
本系列文章导航
[Oracle]高效的PL/SQL程序设计(一)--伪列ROWNUM使用技巧
[Oracle]高效的PL/SQL程序设计(二)--标量子查询
[Oracle]高效的PL/SQL程序设计(三)--Package的优点
[Oracle]高效的PL/SQL程序设计(四)--批量处理
[Oracle]高效的PL/SQL程序设计(五)--调用存储过程返回结果集
[Oracle]高效的PL/SQL程序设计(六)- ......
1、循环插入测试数据:
SQL>
declare
maxrecords constant int:=100;
i int :=1;
Begin
for i in 1..maxrecords loop
--插入数据
Insert into TEST.EXAMPLE(name,phone,address) values('分页测试数据....','联系电话','联系地址');
end loop;
commit;
end;
此处EXAMPLE表定义为(ID number,name ......
等待类型 说明
ASYNC_DISKPOOL_LOCK
当尝试同步并行的线程(执行创建或初始化文件等任务)时出现。
ASYNC_IO_COMPLETION
当某任务正在等待 I/O 完成时出现。
ASYNC_NETWORK_IO
当任务被阻止在网络之后时出现在网络写入中。
BACKUP
当任务作为备份处理 ......