读书人

如何来更新需要的数据

发布时间: 2012-02-02 23:57:14 作者: rapoo

怎么来更新需要的数据?
有张数据库a表
商品编码 商品名称 标志 数量 单价 总价 日期
00100 数码相机 0 2 2500 5000 2007-02-01
00200 U盘 0 3 200 600 2007-01-01
00500 U盘 0 1 300 300 2007-01-01

c盘里有个a.txt文件,里面有如下数据:(商品编码、名称、价格和备注)
"110100 ", "数码相机 ",2500, " "
"20200 ", "U盘 ",200, " "

现在要把c盘a.txt里的商品编码作为判断条件来更新a表里的标志,a表要实现的结果:
商品编码 商品名称 标志 数量 单价 总价 日期
00100 数码相机 1 2 2500 5000 2007-02-01
00200 U盘 1 3 200 600 2007-01-01
00500 U盘 0 1 300 300 2007-01-01

测试环境
Create Table A
(商品编码 Char(5),
商品名称 Nvarchar(10),
标志 Bit,
数量 Int,
单价 Int,
总价 Int,
日期 Varchar(10))

Insert A Select '00100 ', N '数码相机 ', 0, 2, 2500, 5000, '2007-02-01 '
Union All Select '00200 ', N 'U盘 ', 0, 3, 200, 600, '2007-01-01 '


Union All Select '00500 ', N 'U盘 ', 0, 1, 300, 300, '2007-01-01 '

怎么来建临时表更新呢?


[解决办法]
Create ProceDure SP_TEST
As
Begin
Create Table #T(商品 Char(5),名 Nvarchar(10), 格 Int, Nvarchar(100))

BULK Insert #T
From 'C:\A.txt '
WITH (
FIELDTERMINATOR = ', ',
ROWTERMINATOR = '\n '
)

Update A Set = 1 From A Inner Join #T B On A.商品 = B.商品

Drop Table #T
End
GO
EXEC SP_TEST
Select * From A

读书人网 >SQL Server

热点推荐