Solved

importing data from a csv file into a sybase table

Posted on 2004-10-14
8
782 Views
Last Modified: 2008-02-26
Can any one give me the import statement to import data from a csv file into a sybase table ?
0
Comment
Question by:Joserip
  • 4
  • 2
8 Comments
 
LVL 24

Expert Comment

by:Joe Woodhouse
ID: 12307320
Assuming carriage returns for the row delimiters:

bcp [database].[owner].[table] in [file] -U[user] -S[server] -c -t,

You could optionally add " -e [errorfile] " to produce a file where any failed rows will be logged.

You may have to enable the database option "select into" in the destination database depending on whether this table has indexes or triggers. (Enable if they do - this will be "fast bcp".)

The Utility Guide for Sybase has a good chapter on using bcp.

Joe
0
 

Author Comment

by:Joserip
ID: 12308578
Thanks ! if my .csv file is in C drive how will I give this comand
0
 
LVL 24

Expert Comment

by:Joe Woodhouse
ID: 12313362
The Sybase client must have been installed. You can run this from a DOS prompt or command line. You must supply the full path to the file, or be in its local directory.
0
Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

 

Author Comment

by:Joserip
ID: 12317317
Thanks ! I am running it through a query tool conntecting to the DB . I am able to select the records in the table etc .

If I run the select commnad this way it runs well select count(*) from tablename

so I am using the bcp command this way

bcp tablename  in 'c:\test.csv'  -U user1  -S servername  -c -t

but I am getting an error near the 'in'  area
0
 
LVL 24

Accepted Solution

by:
Joe Woodhouse earned 50 total points
ID: 12319368
Ah, I see a couple of problems in your command line.

#1: bcp must specify, at a minimum, the database you're loading into.
#2: You must put the comma after the "-t"... "-t" means "use this character for your column terminators", and you want to use a comma.

Your actual command line would be, including the final comma:

bcp  databasename..tablename  in  "c:\test.csv"  -Uuser  -Sserver  -c  -t,

Note the two dots between the database and table names. This is standard Sybase syntax, it is short for

database.owner.object

If the owner is the default "dbo" (database owner) then you can omit it, but you still need the dots on either side of it.

Let us know how that goes!
0
 
LVL 24

Expert Comment

by:Joe Woodhouse
ID: 12520749
Hi, how did you go with that?
0

Featured Post

Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

One of the biggest threats in the cyber realm pertains to advanced persistent threats (APTs). This paper is a compare and contrast of Russian and Chinese APT's.
Employees depend heavily on their PCs, and new threats like ransomware make it even more critical to protect their important data.
This Micro Tutorial demonstrates using Microsoft Excel pivot tables, how to reverse engineer competitors' marketing strategies through backlinks.
This video shows how to quickly and easily add an email signature for all users on Exchange 2016. The resulting signature is applied on a server level by Exchange Online. The email signature template has been downloaded from: www.mail-signatures…

785 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question