Improve company productivity with a Business Account.Sign Up

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 2240
  • Last Modified:

TSQL To export to a CSV file

Hi

I need to import data from a CSV in to a table, alter the table, add some info and then export it back into a CSV again.  I can do all up to exporting it back into a CSV useing the Script below:-

Create Table EANUPLOAD
(EAN Varchar (20),
COLOUR varchar (8),
SIZE Varchar(8),
SPITNO Varchar (20))

go

Bulk insert BrassoLat.dbo.[EANUPLOAD]
From '\\BANKFUTURA\Futura\UploadFiles\EANUPLOAD.csv'
WITH
      (
         FIELDTERMINATOR = ','
      )

ALTER TABLE EANUPLOAD ADD FuturaBC int
GO

update EANUPLOAD

set EANUPLOAD.FuturaBC =  FuturERS.dbo.ARTIKEL.ART_REFNUMMER

FROM  dbo.EANUPLOAD INNER JOIN  FuturERS.dbo.ARTIKEL ON
dbo.EANUPLOAD.COLOUR = FuturERS.dbo.ARTIKEL.ART_EIGENSCHAFT
AND dbo.EANUPLOAD.[SIZE]= FuturERS.dbo.ARTIKEL.ART_EINHEIT
AND dbo.EANUPLOAD.SPITNO = FuturERS.dbo.ARTIKEL.ART_LFID_NUMMER

Go

Can any one help

Cheers

Si
0
brasso_42
Asked:
brasso_42
  • 2
  • 2
1 Solution
 
nmcdermaidCommented:
To export to CSV in T-SQL its probably easiest to use something like this:

EXEC master.dbo.xp_cmdshell 'BCP BrassoLat.dbo.EANUPLOAD OUT D:\EANUPLOAD.csv -Slocalhost -T'


which uses the xp_cmdshell (elevated rights required) stored procedure to run BCP.

BCP is a command line tool used tom import and export data.


The BCP command line may need a little work, your best bet is to open a command prompt and experiment with it and get it working, then substitute it into the xp_cmdshell statement.
0
 
brasso_42Author Commented:
Hi When I run this it comes up with

        output
1      NULL
2      Enter the file storage type of field EAN [char]:

Any Ideas??


Cheers
0
 
nmcdermaidCommented:
Forgot a parameter


EXEC master.dbo.xp_cmdshell 'BCP BrassoLat.dbo.EANUPLOAD OUT D:\EANUPLOAD.csv -Slocalhost -T -N'


-N means use native data types - don't ask for a format file.

0
 
brasso_42Author Commented:
Hi

Geat That worked a treat .... well needed a bit of tweeking. Had to use FQDN and change the outupt type so it opened nicely in excel.  The script I used in the end was


EXEC master.dbo.xp_cmdshell 'BCP BrassoLat.dbo.EANUPLOAD OUT \\BANKFUTURA\Futura\UploadFiles\EANCHECK.csv -Slocalhost -T -w'


Thanks for your help


Si
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

What Kind of Coding Program is Right for You?

There are many ways to learn to code these days. From coding bootcamps like Flatiron School to online courses to totally free beginner resources. The best way to learn to code depends on many factors, but the most important one is you. See what course is best for you.

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now