电脑技术学习

将一个表分开导出成不同文件的实用方法

dn001

关于将一个表分开导出成不同文件的办法

假设有如下表:


select * from wjz

结果为:

OrderID ProductID UnitPrice Quantity Discount

10252 20 64.80 40 0.05

10268 29 99.00 10 0

10272 20 64.80 6 0

10290 29 99.00 15 0

10292 20 64.80 20 0

10305 29 99.00 25 0.1

10329 38 210.80 20 0.05

10351 38 210.80 20 0.05

10353 38 210.80 50 0.2

10354 29 99.00 4 0

10360 29 99.00 35 0

10360 38 210.80 10 0

10369 29 99.00 20 0

10372 20 64.80 12 0.25

10372 38 210.80 40 0.25

10382 29 99.00 14 0

10384 20 64.80 28 0

10400 29 99.00 21 0

10417 38 210.80 50 0

10420 9 77.60 20 0.1

10424 38 210.80 49 0.2

10440 29 99.00 24 0.15

10465 29 99.00 18 0.1

10479 38 210.80 30 0

10510 29 123.79 36 0

10514 20 81.00 39 0

10515 9 97.00 16 0.15

10516 18 62.50 25 0.1

10517 59 55.00 4 0

10518 38 263.50 15 0

10523 20 81.00 15 0.1

10531 59 55.00 2 0

10535 59 55.00 15 0.1

10537 51 53.00 6 0

10540 38 263.50 30 0

10541 38 263.50 4 0.1

10549 51 53.00 48 0.15

10555 51 53.00 20 0.2

10558 51 53.00 20 0

10561 51 53.00 50 0

10566 18 62.50 18 0.15

10567 51 53.00 3 0

10567 59 55.00 40 0.2

10575 59 55.00 12 0

10583 29 123.79 10 0

10588 18 62.50 40 0.2

10593 20 81.00 21 0.2

10601 59 55.00 35 0

10605 59 55.00 20 0.05

10616 38 263.50 15 0.05

10617 59 55.00 30 0.15

10624 29 123.79 6 0

10629 29 123.79 20 0

10634 18 62.50 50 0

10634 51 53.00 15 0

10639 18 62.50 8 0

10644 18 62.50 4 0.1

10645 18 62.50 20 0

10660 20 81.00 21 0

10663 51 53.00 20 0.05

10665 51 53.00 20 0

10665 59 55.00 1 0

10666 29 123.79 36 0

10672 38 263.50 15 0.1

10679 59 55.00 12 0

10687 9 97.00 50 0.25

10687 29 123.79 10 0

10691 29 123.79 40 0

10693 9 97.00 6 0

10694 59 55.00 25 0

10698 29 123.79 12 0.05

10701 59 55.00 42 0.15

10703 59 55.00 35 0

10706 59 55.00 8 0

10709 51 53.00 28 0

10716 51 53.00 7 0

10719 18 62.50 12 0.25

10727 59 55.00 10 0.05

10731 51 53.00 30 0.05

10745 18 62.50 24 0

10745 59 55.00 45 0

10749 59 55.00 6 0

10750 59 55.00 25 0.15

10756 18 62.50 21 0.2

10757 59 55.00 7 0

10762 51 53.00 28 0

10772 29 123.79 18 0

10772 59 55.00 25 0

10776 51 53.00 120 0.05

10783 38 263.50 5 0

10787 29 123.79 20 0.05

10789 18 62.50 30 0

10791 29 123.79 14 0.05

10799 59 55.00 25 0

10800 51 53.00 10 0.1

10801 29 123.79 20 0.25

10802 51 53.00 30 0.25

10803 59 55.00 15 0.05

10805 38 263.50 10 0

10816 38 263.50 30 0.05

10817 38 263.50 30 0

10821 51 53.00 6 0

10823 59 55.00 40 0.1

10828 20 81.00 5 0

10828 38 263.50 2 0

10831 38 263.50 8 0

10834 29 123.79 8 0.05

10835 59 55.00 15 0

10838 18 62.50 25 0.25

10841 59 55.00 50 0

10843 51 53.00 4 0.25

10848 9 97.00 3 0

10851 59 55.00 42 0.05

10853 18 62.50 10 0

10857 29 123.79 10 0.25

10860 51 53.00 3 0

10861 18 62.50 20 0

10865 38 263.50 60 0.05

10870 51 53.00 2 0

10877 18 62.50 25 0

10878 20 81.00 20 0.05

10889 38 263.50 40 0

10892 59 55.00 40 0.05

10893 29 123.79 24 0

10897 29 123.79 80 0

10912 29 123.79 60 0.25

10927 20 81.00 5 0

10935 18 62.50 4 0.25

10947 59 55.00 4 0

10948 51 53.00 40 0

10953 20 81.00 50 0.05

10956 51 53.00 8 0

10964 18 62.50 6 0

10964 38 263.50 5 0

10965 51 53.00 16 0

10971 29 123.79 14 0

10977 51 53.00 10 0

10981 38 263.50 60 0

10985 18 62.50 8 0.1

10986 20 81.00 15 0

10993 29 123.79 50 0.25

10994 59 55.00 18 0.05

10995 51 53.00 20 0

10999 51 53.00 15 0.05

11005 59 55.00 10 0

11006 29 123.79 2 0.25

11007 29 123.79 10 0

11017 59 55.00 110 0

11018 18 62.50 10 0

11021 20 81.00 15 0

11021 51 53.00 44 0.25

11026 18 62.50 8 0

11026 51 53.00 10 0

11028 59 55.00 24 0

11030 29 123.79 60 0.25

11030 59 55.00 100 0.25

11032 38 263.50 25 0

11032 59 55.00 30 0

11036 59 55.00 30 0

11045 51 53.00 24 0

11053 18 62.50 35 0.2

11055 51 53.00 20 0

11077 20 81.00 1 0.04

要求:我想分产品号将该表导出成不同的文件,文件名以P_产品号.txt来命名,导出到E盘根目录。

一、创建一个存储过程,以便允许参数输入


Create proc exp1


@productid int


As


Select * from wjz where productid=@productid


Go


二、生成调用该过程的SQLCMD命令,并利用构造语句

Select distinct 'sqlcmd -U sa -P 123 -S wangjingzheng -d wjz -Q"exec exp1 '


+convert(varchar(5),productid)+'" -o e:P_'+convert(varchar(5),productid)+'.txt'


from wjz

三、将生成的语句粘出到DOS命令提示符下执行即可