[freetds] Column Lengths 30 characters...

Thomas, Christopher (LLU) cwthomas at llu.edu
Mon Jun 8 13:51:11 EDT 2009


I've had this problem in the past. It was because FreeTDS was
communicating with the servers with the 4.2 protocol version. This
version is limited to only 30 chars for column names. I solved the
problem by changing the protocol version to 8.0 and the problems went
away.

Chris

> -----Original Message-----
> From: freetds-bounces at lists.ibiblio.org [mailto:freetds-
> bounces at lists.ibiblio.org] On Behalf Of Jacque, Alfred
> Sent: Monday, June 08, 2009 10:23 AM
> To: freetds at lists.ibiblio.org
> Subject: [freetds] Column Lengths 30 characters...
> 
> Hello,
> 
> I have a table in a SQL Server 2005 database where the name of the
> column has a length of 30 characters. However, when viewing the table
> from my 11g database running on Linux, only the first 29 characters
are
> displayed and this generates problems when trying to access that
table.
> >From what I have read, the limitation for column names is 30
characters,
> but in this case it appears to be 29 characters. Is there a setting
that
> can be changed to allow the use of 30 character field names? The
column
> name in question here is Designated_Point_Longitude_DMS.
> 
> 
> Table on SQL Server
> 
> Name                                      Null?    Type
>  ----------------------------------------- --------
> ----------------------------
>  Designated_Point_Id                       NOT NULL NUMBER(10)
>  FIR_Airspace_Id                                    NUMBER(10)
>  Dsgntr_Type_Code                          NOT NULL VARCHAR2(5)
>  Significant_Point_Position_Id             NOT NULL NUMBER(10)
>  Designated_Point_Code                     NOT NULL VARCHAR2(5)
>  Designated_Point_Latitude_DMS             NOT NULL VARCHAR2(20)
>  Designated_Point_Longitude_DMS             NOT NULL VARCHAR2(20)
>  Designated_Point_Name                              VARCHAR2(60)
>  ADMS_Record_Id                                     VARCHAR2(20)
>  Last_Updated_Date                         NOT NULL DATE
>  Effective_Date                            NOT NULL DATE
>  Expiry_Date                                        DATE
> 
> 
> Table view from Oracle
> 
> SQL> desc DESIGNATED_POINT at mssql
>  Name                                      Null?    Type
>  ----------------------------------------- --------
> ----------------------------
>  Designated_Point_Id                       NOT NULL NUMBER(10)
>  FIR_Airspace_Id                                    NUMBER(10)
>  Dsgntr_Type_Code                          NOT NULL VARCHAR2(5)
>  Significant_Point_Position_Id             NOT NULL NUMBER(10)
>  Designated_Point_Code                     NOT NULL VARCHAR2(5)
>  Designated_Point_Latitude_DMS             NOT NULL VARCHAR2(20)
>  Designated_Point_Longitude_DM             NOT NULL VARCHAR2(20)
>  Designated_Point_Name                              VARCHAR2(60)
>  ADMS_Record_Id                                     VARCHAR2(20)
>  Last_Updated_Date                         NOT NULL DATE
>  Effective_Date                            NOT NULL DATE
>  Expiry_Date                                        DATE
> 
> When trying to query the table in Oracle I get the following error
> message:
> 
> select * from DESIGNATED_POINT at mssql
> *
> ERROR at line 1:
> ORA-28500: connection from ORACLE to a non-Oracle system returned this
> message:
> [FreeTDS][SQL Server]Statement(s) could not be prepared.[FreeTDS][SQL
> Server]Incorrect syntax near
> 'Designated_Point_Longitude_DM'.[FreeTDS][SQL
> Server]Unclosed quotation mark after the character string
> 'Designated_Point_Longitude_DM'.
> ORA-02063: preceding 2 lines from MSSQL
> 
> 
> Thanks,
> Alfred
> 
> 
> 
> _______________________________________________
> FreeTDS mailing list
> FreeTDS at lists.ibiblio.org
> http://lists.ibiblio.org/mailman/listinfo/freetds



More information about the FreeTDS mailing list