首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

如何来更新需要的数据

2012-02-02 
怎么来更新需要的数据?有张数据库a表商品编码商品名称标志数量单价总价日期00100数码相机02250050002007-0

怎么来更新需要的数据?
有张数据库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

热点排行
Bad Request.