DBEXPRESS x ORACLE 10G
URGENTE!
Vejam o que está acontecendo comigo. Parece que o DBEXPRESS endoidou!
Utilizo a seguinte configuração:
Delphi 2010
Banco de dados: ORACLE 10G
Componentes de Conexão: DBEXPRESS
LibraryName = 'dbxora.dll'
VendorLib = 'oci.dll'
TSQLConnection->TSQLQuery->TDataSetProvider->TClientDataSet->TDataSource->TDBGrid
tudo normal a priori na visualização dos dados no DBGRID, como por exemplo quando
acesso a seguinte tabela:
SQL> desc cr;
Nome Nulo? Tipo
----------------------------------------- -------- ------------
CODIGOCR NOT NULL NUMBER(4)
GRPCR NOT NULL NUMBER(2)
NOMECR NOT NULL VARCHAR2(50)
ATIVOCR VARCHAR2(1)
SQL> select count(*) from cr;
COUNT(*)
----------
12
Tudo beleza! AGORA!!! Quando ACESSO A SEGUINTE TABELA:
SQL> DESC ITEMPROJ;
Nome Nulo? Tipo
----------------------------------------- -------- -------------
CRITEMPROJ NOT NULL NUMBER(4)
CENARIOITEMPROJ NOT NULL NUMBER(2)
PROJETOITEMPROJ NOT NULL NUMBER(6)
CODIGOITEMPROJ NOT NULL VARCHAR2(16)
NOMEITEMPROJ VARCHAR2(100)
INDFINITEMPROJ NUMBER(14)
NIVELITEMPROJ VARCHAR2(1)
TIPOITEMPROJ NOT NULL VARCHAR2(1)
BDIITEMPROJ NUMBER(6,2)
QTDITEMPROJ NUMBER(11,3)
QTDCORITEMPROJ NUMBER(11,3)
PRCUNITVENDAITEMPROJ NUMBER(16,5)
PRCREAJVENDAITEMPROJ NUMBER(16,5)
PRCUNITCUSTOITEMPROJ NUMBER(16,5)
UNDITEMPROJ VARCHAR2(4)
CODIGOPAIITEMPROJ VARCHAR2(16)
CODIGOORGAOITEMPROJ VARCHAR2(16)
CUSTOITEMPROJ NUMBER(6,2)
CRONSPITEMPROJ VARCHAR2(1)
CALENDARIOITEMPROJ NUMBER(2)
CALCULOITEMPROJ VARCHAR2(1)
CODIGORELITEMPROJ VARCHAR2(16)
SQL> SELECT COUNT(*) FROM ITEMPROJ;
COUNT(*)
----------
6420
SIMPLESMENTE O DBGRID MOSTRA OS DADOS DOIDOS, ALGUNS CARACTERES MALUCOS,
MOSTRA COLUNAS TROCADAS, ISTO É, MISTURA AS COISAS E NÃO MOSTRA OS
DADOS CORRETAMENTE. ALGUÉM JÁ SE DEPAROU COM ISSO?
TESTE:
object Form2: TForm2
Left = 384
Top = 158
Caption = 'Form2'
ClientHeight = 466
ClientWidth = 862
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 13
object DBGrid1: TDBGrid
Left = 264
Top = 24
Width = 569
Height = 425
DataSource = DataSource1
TabOrder = 0
TitleFont.Charset = DEFAULT_CHARSET
TitleFont.Color = clWindowText
TitleFont.Height = -11
TitleFont.Name = 'Tahoma'
TitleFont.Style = []
Columns = <
item
Expanded = False
FieldName = 'CODIGOITEMPROJ'
Visible = True
end
item
Expanded = False
FieldName = 'NOMEITEMPROJ'
Visible = True
end>
end
object BitBtn1: TBitBtn
Left = 32
Top = 312
Width = 75
Height = 25
Caption = 'BitBtn1'
DoubleBuffered = True
ParentDoubleBuffered = False
TabOrder = 1
OnClick = BitBtn1Click
end
object SQLConnection1: TSQLConnection
ConnectionName = 'OracleConnection'
DriverName = 'Oracle'
GetDriverFunc = 'getSQLDriverORACLE'
LibraryName = 'dbxora.dll'
LoginPrompt = False
Params.Strings = (
'DriverName=Oracle'
'DataBase=XE'
'User_Name=SGO'
'Password=OGS'
'RowsetSize=2000'
'BlobSize=-1'
'ErrorResourceFile='
'LocaleCode=0000'
'IsolationLevel=ReadCommitted'
'OS Authentication=False'
'Multiple Transaction=False'
'Trim Char=False'
'Decimal Separator=.')
VendorLib = 'oci.dll'
Connected = True
Left = 48
Top = 24
end
object SQLQuery1: TSQLQuery
MaxBlobSize = -1
Params =
SQL.Strings = (
'SELECT * '
'FROM ITEMPROJ'
'ORDER BY CODIGOITEMPROJ')
SQLConnection = SQLConnection1
Left = 48
Top = 72
end
object DataSetProvider1: TDataSetProvider
DataSet = SQLQuery1
Left = 48
Top = 128
end
object ClientDataSet1: TClientDataSet
Active = True
Aggregates =
Params =
ProviderName = 'DataSetProvider1'
Left = 72
Top = 376
end
object DataSource1: TDataSource
DataSet = ClientDataSet1
Left = 152
Top = 376
end
end
Vejam o que está acontecendo comigo. Parece que o DBEXPRESS endoidou!
Utilizo a seguinte configuração:
Delphi 2010
Banco de dados: ORACLE 10G
Componentes de Conexão: DBEXPRESS
LibraryName = 'dbxora.dll'
VendorLib = 'oci.dll'
TSQLConnection->TSQLQuery->TDataSetProvider->TClientDataSet->TDataSource->TDBGrid
tudo normal a priori na visualização dos dados no DBGRID, como por exemplo quando
acesso a seguinte tabela:
SQL> desc cr;
Nome Nulo? Tipo
----------------------------------------- -------- ------------
CODIGOCR NOT NULL NUMBER(4)
GRPCR NOT NULL NUMBER(2)
NOMECR NOT NULL VARCHAR2(50)
ATIVOCR VARCHAR2(1)
SQL> select count(*) from cr;
COUNT(*)
----------
12
Tudo beleza! AGORA!!! Quando ACESSO A SEGUINTE TABELA:
SQL> DESC ITEMPROJ;
Nome Nulo? Tipo
----------------------------------------- -------- -------------
CRITEMPROJ NOT NULL NUMBER(4)
CENARIOITEMPROJ NOT NULL NUMBER(2)
PROJETOITEMPROJ NOT NULL NUMBER(6)
CODIGOITEMPROJ NOT NULL VARCHAR2(16)
NOMEITEMPROJ VARCHAR2(100)
INDFINITEMPROJ NUMBER(14)
NIVELITEMPROJ VARCHAR2(1)
TIPOITEMPROJ NOT NULL VARCHAR2(1)
BDIITEMPROJ NUMBER(6,2)
QTDITEMPROJ NUMBER(11,3)
QTDCORITEMPROJ NUMBER(11,3)
PRCUNITVENDAITEMPROJ NUMBER(16,5)
PRCREAJVENDAITEMPROJ NUMBER(16,5)
PRCUNITCUSTOITEMPROJ NUMBER(16,5)
UNDITEMPROJ VARCHAR2(4)
CODIGOPAIITEMPROJ VARCHAR2(16)
CODIGOORGAOITEMPROJ VARCHAR2(16)
CUSTOITEMPROJ NUMBER(6,2)
CRONSPITEMPROJ VARCHAR2(1)
CALENDARIOITEMPROJ NUMBER(2)
CALCULOITEMPROJ VARCHAR2(1)
CODIGORELITEMPROJ VARCHAR2(16)
SQL> SELECT COUNT(*) FROM ITEMPROJ;
COUNT(*)
----------
6420
SIMPLESMENTE O DBGRID MOSTRA OS DADOS DOIDOS, ALGUNS CARACTERES MALUCOS,
MOSTRA COLUNAS TROCADAS, ISTO É, MISTURA AS COISAS E NÃO MOSTRA OS
DADOS CORRETAMENTE. ALGUÉM JÁ SE DEPAROU COM ISSO?
TESTE:
object Form2: TForm2
Left = 384
Top = 158
Caption = 'Form2'
ClientHeight = 466
ClientWidth = 862
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 13
object DBGrid1: TDBGrid
Left = 264
Top = 24
Width = 569
Height = 425
DataSource = DataSource1
TabOrder = 0
TitleFont.Charset = DEFAULT_CHARSET
TitleFont.Color = clWindowText
TitleFont.Height = -11
TitleFont.Name = 'Tahoma'
TitleFont.Style = []
Columns = <
item
Expanded = False
FieldName = 'CODIGOITEMPROJ'
Visible = True
end
item
Expanded = False
FieldName = 'NOMEITEMPROJ'
Visible = True
end>
end
object BitBtn1: TBitBtn
Left = 32
Top = 312
Width = 75
Height = 25
Caption = 'BitBtn1'
DoubleBuffered = True
ParentDoubleBuffered = False
TabOrder = 1
OnClick = BitBtn1Click
end
object SQLConnection1: TSQLConnection
ConnectionName = 'OracleConnection'
DriverName = 'Oracle'
GetDriverFunc = 'getSQLDriverORACLE'
LibraryName = 'dbxora.dll'
LoginPrompt = False
Params.Strings = (
'DriverName=Oracle'
'DataBase=XE'
'User_Name=SGO'
'Password=OGS'
'RowsetSize=2000'
'BlobSize=-1'
'ErrorResourceFile='
'LocaleCode=0000'
'IsolationLevel=ReadCommitted'
'OS Authentication=False'
'Multiple Transaction=False'
'Trim Char=False'
'Decimal Separator=.')
VendorLib = 'oci.dll'
Connected = True
Left = 48
Top = 24
end
object SQLQuery1: TSQLQuery
MaxBlobSize = -1
Params =
SQL.Strings = (
'SELECT * '
'FROM ITEMPROJ'
'ORDER BY CODIGOITEMPROJ')
SQLConnection = SQLConnection1
Left = 48
Top = 72
end
object DataSetProvider1: TDataSetProvider
DataSet = SQLQuery1
Left = 48
Top = 128
end
object ClientDataSet1: TClientDataSet
Active = True
Aggregates =
Params =
ProviderName = 'DataSetProvider1'
Left = 72
Top = 376
end
object DataSource1: TDataSource
DataSet = ClientDataSet1
Left = 152
Top = 376
end
end
Hélio Marques
Curtidas 0
Respostas
Hélio Marques
22/02/2010
Interessante que faço este mesmo exemplo no delphi 7 e funciona normalmente, sem nenhum problema, mostra no DBGRID todas os dados em cada coluna normalmente, sem nenhum problema.
Agora no DELPHI 2010 mostra tudo baldeiado.
Agora no DELPHI 2010 mostra tudo baldeiado.
GOSTEI 0
Hélio Marques
22/02/2010
em algumas colunas do DBGRID ao invés de mostrar o conteúdo do campo apresenta a mensagem "BCD OVERFLOW".
Peguei este mesmo exemplo coloquei no delphi 7 e funcionou perfeitamente.
Peguei este mesmo exemplo coloquei no delphi 7 e funcionou perfeitamente.
GOSTEI 0