[freetds] Problem with freebcp and fixed text output [NC]

Konrad J Hambrick konrad at payplus.com
Thu Aug 6 18:03:28 EDT 2009


hmmm ...

I wonder if that same FORMAT File works in Windows
using BCP.EXE ?

I'm fairly certain it would with the extra columns
I described below.

Not so sure it would work without the 'placeholders'.

-- kjh


Cedric ROUVRAIS wrote:
> Well, not in sybase for sure. This is an app that is running in production
> on Sybase and that we are moving to SQL Server.
> 
> So I modified bcp.c as follows:
> 
>       /** Cedric: support for none mapped columns, Sybase style. */
>       if (whichcol == TAB_COLNUM) {
>                   ci->tab_colnum = 0;
>                   whichcol = NO_MORE_COLS;
>       }
>       /** /Cedric */
>       if (whichcol == NO_MORE_COLS)
>             return (TRUE);
>       else
>             return (FALSE);
> 
> And tada it works for :o)
> 
> a++ Cedric
> 
> 
> 
> |------------------------------                                            
> |            Konrad J Hambrick                                             
> |            <konrad at payplus.c                                             
> |            om>                                                           
> |            Sent by:                                                      
> |            freetds-bounces at l                                             
> |            ists.ibiblio.org                                              
> |                                                                          
> |                                                                          
> |            08/06/2009 05:53                                              
> |            PM                                                            
> |                                                                          
> |                                                                          
> |            Please respond to                                             
> |            konrad at payplus.co                                             
> |            m; Please respond                                             
> |                   to                                                     
> |                 FreeTDS                                                  
> |            Development Group                                             
> |            <freetds at lists.ib                                             
> |               iblio.org>                                                 
> |                                                                          
> |                                                                          
>                                                                            
>                                                                            
>                                                                         To 
>                                                FreeTDS Development Group   
>                                                <freetds at lists.ibiblio.org> 
>                                                                         cc 
>                                                                            
>                                                                    Subject 
>                                                Re: [freetds] Problem with  
>                                                freebcp and fixed text      
>                                                output [NC]                 
>                                                                            
>                                                                            
>                                                                            
>                                                                            
>                                                                            
>                                                                            
> 
> 
> 
> 
> 
> Hmmm ...
> 
> Does the FORMAT file not need an explicit 0 (zero)
> in Column 6 of the 2nd row of the FORMAT file to
> skip DB Table Column 2 ?
> 
> I believe this is so in MS SQLServer.
> 
> -- kjh
> 
> 
> Cedric ROUVRAIS wrote:
>> Hi,
>>
>> Say you have a file with 100 columns and a table with 10 colums (case for
>> one of our apps), how do you selectively bcp in the file? With Sybase you
>> simply do not specify TAB_COLNUM and that column in the file is ignored.
>>
>> Sample format file (incomplete)
>>
>> 10.0
>> 182
>> 1 SYBCHAR 0 20 ";" 1 id
>> 2 SYBCHAR 0 20 ";"
>> 3 SYBCHAR 0 20 ";" 2 gop
>>
>> freebcp chokes on the second column (2 SYBCHAR 0 20 ";") and exits
> whereas
>> Sybase knows that it just needs to ignore this data, so I am modifying
>> bcp.c to accomodate this behaviour.
>>
>> If I understand what you mean
>>
>> 2 SYBCHAR 0 20 ";" 0
>>
>> would be the appropriate format file and then freebcp would ignore this
>> field but still bcp the file in?
>>
>> a++ Cedric
>>
>>
>>
>> |------------------------------
> 
>> |            "James K. Lowden"
> 
>> |            <jklowden at freetds
> 
>> |            .org>
> 
>> |            Sent by:
> 
>> |            freetds-bounces at l
> 
>> |            ists.ibiblio.org
> 
>> |
> 
>> |
> 
>> |            08/06/2009 05:39
> 
>> |            PM
> 
>> |
> 
>> |
> 
>> |            Please respond to
> 
>> |                 FreeTDS
> 
>> |            Development Group
> 
>> |            <freetds at lists.ib
> 
>> |               iblio.org>
> 
>> |
> 
>> |
> 
> 
> 
> To
>>                                                FreeTDS Development Group
> 
> <freetds at lists.ibiblio.org>
> cc
> 
> Subject
>>                                                Re: [freetds] Problem with
> 
>>                                                freebcp and fixed text
> 
>>                                                output [NC]
> 
> 
> 
> 
> 
> 
> 
>>
>>
>>
>> Cedric ROUVRAIS wrote:
>>> The issue one of my teams reported is that if there is a column in the
>>> file that does not get imported into the table, then it fails. The
>>> faulty procedure is _bcp_readfmt_colinfo which fails because TAB_COLNUM
>>> is not present in that case.
>>>
>>> Any ideas before I start implementing a fix?
>> I don't know what you mean by "not present", Cedric.  It's an integer; it
>> has to be present.
>>
>> It looks OK to me.  The dbproc->hostfileinfo->host_columns array points
> to
>> a memory allocated with calloc(3) in bcp_columns().  By default, then,
>> ci->tab_colnum should be zero, meaning the field in the file is ignored.
>>
>> HTH.
>>
>> --jkl
>> _______________________________________________
>> FreeTDS mailing list
>> FreeTDS at lists.ibiblio.org
>> http://lists.ibiblio.org/mailman/listinfo/freetds
>>
>>
>>
>> *************************************************************************
>> This message and any attachments (the "message") are confidential,
> intended
>> solely for the addressee(s), and may contain legally privileged
> information.
>> Any unauthorised use or dissemination is prohibited.  E-mails are
> susceptible
>> to alteration.  Neither SOCIETE GENERALE nor any of its subsidiaries or
>> affiliates shall be liable for the message if altered, changed or
> falsified.
>> *************************************************************************
>>
>> _______________________________________________
>> FreeTDS mailing list
>> FreeTDS at lists.ibiblio.org
>> http://lists.ibiblio.org/mailman/listinfo/freetds
>>
> _______________________________________________
> FreeTDS mailing list
> FreeTDS at lists.ibiblio.org
> http://lists.ibiblio.org/mailman/listinfo/freetds
> 
> 
> 
> *************************************************************************
> This message and any attachments (the "message") are confidential, intended 
> solely for the addressee(s), and may contain legally privileged information.  
> Any unauthorised use or dissemination is prohibited.  E-mails are susceptible 
> to alteration.  Neither SOCIETE GENERALE nor any of its subsidiaries or 
> affiliates shall be liable for the message if altered, changed or falsified.
> *************************************************************************
> 
> _______________________________________________
> FreeTDS mailing list
> FreeTDS at lists.ibiblio.org
> http://lists.ibiblio.org/mailman/listinfo/freetds
> 


More information about the FreeTDS mailing list