It looks like it's an issue with one of the varchar data columns.
You might want to look at the table variable -- maybe bust out the varchar 5/6 to sysname. Then try it again.
declare @format table
( rowId smallint identity primary key
, colName sysname not null
, terminator varchar(6) not null
, colOrder varchar(5) not null
, fileLength varchar(5) not null
);
I've got an update to this that I should post. I'll try to get it cleaned up and deliver it this weekend.
Let me know how it works.
--Paul Hunter