Watch, Follow, &
Connect with Us
Public Report
Report From: InterBase/Interfaces/ODBC    [ Add a report in this area ]  
Report #:  116886   Status: Closed
ADO Update method results in "unknown column" error
Project:  InterBase Build #:  2009, XE3
Version:    11.0 Submitted By:   Damian Slanovic
Report Type:  Basic functionality failure Date Reported:  6/27/2013 6:53:06 AM
Severity:    Serious / Highly visible problem Last Updated: 7/16/2013 5:31:24 PM
Platform:    Windows 95/98/NT 4.0 on Intel Internal Tracking #:  
Resolution: Fixed (Resolution Comments) Resolved in Build: : 1.00.00.101
Duplicate of:  None
Voting and Rating
Overall Rating: No Ratings Yet
0.00 out of 5
Total Votes: None
Description
Embarcadero ODBC driver for interbase, version 1.00.00.100

The following code fails with "unknown column" error, but all columns exists in the table. There is some limitations on the columns name size?


    Dim l_rs_Grabar As ADODB.Recordset
    Dim l_s_stSql As String
    Set l_rs_Grabar = New ADODB.Recordset
    With l_rs_Grabar
        .Open "TIPOS_MOVIMIENTO_INVENTARIO", g_cn_ADOGlobal, adOpenDynamic, adLockOptimistic, adCmdTable
        .AddNew
        .Fields("TIPO_MOVIMIENTO_INVENTARIO_ID").Value = 0
        .Fields("TIPO_MOVIMIENTO_INVENTARIO_COD").Value = txtCodigo.Text
        .Fields("TIPO_MOVIMIENTO_INVENTARIO_NOMBRE").Value = txtNombre.Text
        .Fields("TIPO_MOVIMIENTO_INVENTARIO_DESC").Value = IIf(txtDescripcion.Text = "", Null, txtDescripcion.Text)
        .Fields("flag_activo").Value = C_SI
        .Fields("signo").Value = 1
        .Fields("numero_version").Value = 0
        .Update

        .Close

    End With

    Set l_rs_Grabar = Nothing




Table definition is:
CREATE TABLE "TIPOS_MOVIMIENTO_INVENTARIO"
(
  "TIPO_MOVIMIENTO_INVENTARIO_ID"
INTEGER NOT NULL,
  "TIPO_MOVIMIENTO_INVENTARIO_COD"
VARCHAR(10) NOT NULL,
  "TIPO_MOVIMIENTO_INVENTARIO_NOMBRE"
VARCHAR(80) NOT NULL,
  "TIPO_MOVIMIENTO_INVENTARIO_DESC"
VARCHAR(150),
  "FLAG_APLICA_MATP"
"BOOLEAN_DEFAULT_SI",
  "FLAG_APLICA_ART"
"BOOLEAN_DEFAULT_SI",
  "FLAG_ACTIVO"
"BOOLEAN_DEFAULT_SI",
  "NUMERO_VERSION"
"NUMERO_VERSION_DEFAULT_1",
  "OBJETO_TIPO"
VARCHAR(50),
  "SIGNO"
SMALLINT NOT NULL,
  "FLAG_PANTALLA"
"BOOLEAN_DEFAULT_SI",
CONSTRAINT "TIPOS_MOVIMIENTO_INVENTARIO_PK" PRIMARY KEY ("TIPO_MOVIMIENTO_INVENTARIO_ID")
);
Steps to Reproduce:
The attached contains the application tested.

Execute it. In the first form, click on the button with blank page icon. This will open another form.
In this second form, fill the fields, and press the button with the disk icon.
Workarounds
None
Attachment
116886.zip
Comments

Damian Slanovic at 6/27/2013 7:08:40 AM -
Tested with:
Interbase Server 2009
Embarcadero ODBC Driver version 1.00.00.100
Microsoft ADO 2.8

Files in the attached zip file:
Source code of the application
The executable file of the application
An image for you to see the DSN created
A log file from the ODBC trace

quinn wildman at 6/28/2013 11:07:24 AM -
The specific issue here that the the ODBC driver does not support meta data names (field names, table names, stored procedure names, view names) longer than 31 characters. It should support up to 67 characters.

Damian Slanovic at 7/8/2013 11:28:03 AM -
Do you have any news? Have an estimated date for the fix?

Tomohiro Takahashi at 7/8/2013 5:49:54 PM -
If possible, please contact technical support service.
http://support.embarcadero.com/

Damian Slanovic at 7/10/2013 9:23:54 AM -
What for? To create a case? Or to login in Product Support?

Tomohiro Takahashi at 7/10/2013 11:07:27 PM -
As you know, QualityCentral is just for reporting issue.
So, if you need official reply from Embarcadero, please contact technical support service or Sales rep. Sorry for the inconvenience.

Sriram Balasubramanian at 7/16/2013 3:09:48 PM -
Resolved in version 1.00.00.101. Please download from http://cc.embarcadero.com/item/28975

Server Response from: ETNACODE01