Solved

MS SQL Bulk Insert problem

Posted on 2011-02-16
5
371 Views
Last Modified: 2012-08-13
Hi All

Time to page the FOAK once again.

I'm having trouble with a bulk insert statement - hope someone can help me out here!

The sql is as follows:-

BULK INSERT  dbo.gbinfo FROM  'I:/pages/gb/pass/monthly.txt' WITH(FIELDTERMINATOR = '|',ROWTERMINATOR = '\n')

I have some 750k rows all looking like:-

1|2002-12-01|12|2.71|0.00|271.00|C010002|OXF|Central|1
3|2002-12-01|12|30.51|0.00|3051.00|C010005|*N|*N|1
4|2002-12-01|12|1.67|0.00|167.00|C010007|UN |Scotland|1
5|2002-12-01|12|7.09|0.00|709.00|C010008|OXF|Central|1

and so on

Until I can get an import I've set all the columns in the table to nvarchar and there is no index column.

It's chucking up this error:-

Auto-attach to process '[2340] [SQL] GRANTB' on machine 'GRANTB' succeeded.
The thread 'GRANTB\SQLEXPRESS [53]' (0x17a8) has exited with code 0 (0x0).
The thread 'GRANTB\SQLEXPRESS [53]' (0x17a8) has exited with code 0 (0x0).
The program '[2340] [SQL] GRANTB: GRANTB\SQLEXPRESS' has exited with code 0 (0x0).

Many thanks in advance!

Best regards

Grant
0
Comment
Question by:Buzby58
  • 2
  • 2
5 Comments
 
LVL 142

Accepted Solution

by:
Guy Hengel [angelIII / a3] earned 500 total points
Comment Utility
could it be that your 750K rows result in 2G (sql express 2000/2005) or 4GB (sql express 2008) of data?
that would explain it, eventually ...
0
 

Author Comment

by:Buzby58
Comment Utility
Thanks for uber prompt response!

Sorry I'm newsish to MS SQL

The txt file is 28mb and am using SQL express 2008 - load works like a dream in MySql but that options not open to me!

I've just discovered this:-

Msg 4866, Level 16, State 1, Line 1
The bulk load failed. The column is too long in the data file for row 1, column 10. Verify that the field terminator and row terminator are specified correctly.
Msg 7399, Level 16, State 1, Line 1
The OLE DB provider "BULK" for linked server "(null)" reported an error. The provider did not give any information about the error.
Msg 7330, Level 16, State 2, Line 1
Cannot fetch a row from OLE DB provider "BULK" for linked server "(null)".

Not sure about the field terminator and there's no nulls in there as far as can see - nulls are allowed in the receiving table.

Thanks

Grant

0
 
LVL 12

Expert Comment

by:Paul_Harris_Fusion
Comment Utility
Since the error is that the last value in the first row is too long, my guess is that the row terminator is at fault and the import has interpreted the entire remainded of the file as the contents of row1, column 10.

0
 
LVL 12

Expert Comment

by:Paul_Harris_Fusion
Comment Utility
Try
ROWTERMINATOR = '/r'

More Info on row terminators here:

http://msdn.microsoft.com/en-us/library/ms191485.aspx
0
 

Author Comment

by:Buzby58
Comment Utility
Tried a good combination of row terminators - still no go - just can't see why it won't work :-/
0

Featured Post

Top 6 Sources for Identifying Threat Actor TTPs

Understanding your enemy is essential. These six sources will help you identify the most popular threat actor tactics, techniques, and procedures (TTPs).

Join & Write a Comment

When you hear the word proxy, you may become apprehensive. This article will help you to understand Proxy and when it is useful. Let's talk Proxy for SQL Server. (Not in terms of Internet access.) Typically, you'll run into this type of problem w…
Ever needed a SQL 2008 Database replicated/mirrored/log shipped on another server but you can't take the downtime inflicted by initial snapshot or disconnect while T-logs are restored or mirror applied? You can use SQL Server Initialize from Backup…
Using examples as well as descriptions, and references to Books Online, show the documentation available for date manipulation functions and by using a select few of these functions, show how date based data can be manipulated with these functions.
Viewers will learn how to use the INSERT statement to insert data into their tables. It will also introduce the NULL statement, to show them what happens when no value is giving for any given column.

762 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

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now