[delphi/ado/access] Spontane spaties in veldwaarde

Pagina: 1
Acties:

  • AdLentis
  • Registratie: Mei 2000
  • Laatst online: 27-10-2025

AdLentis

Gadget Inspector

Topicstarter
Ik heb hier in delphi via ADO een connectie met een MSAccess database. In deze database maak ik via SQL tabellen aan. Als ik vervolgens records aan deze tabel toevoeg worden alle tekstvelden aangevuld met spaties, tot de maximale veldlengte. Eerst dacht ik dat dit aan het uitstaan van de unicode compressie lag (bij CREATE TABLE SQL staat dat std uit, bij aanmaken in Access zelf std aan |:( ) maar dit bleek niet zo te zijn. Het probleem is dat bij het uitlezen van de velden al die spaties meekomen. En het is nogal een berg werk om overal Trim() toe te voegen.

Hellup! :?

Zo maak ik de tabel aan:
code:
1
2
3
4
5
6
7
8
9
CREATE TABLE OBJECT (
Id         COUNTER PRIMARY KEY,
Creator     CHAR(50) WITH COMP NOT NULL,
CreationDate     DATETIME NOT NULL,
Modifier       CHAR(50) WITH COMP NULL,
ModificationDate DATETIME NULL,
FileName       CHAR(255) WITH COMP NOT NULL,
OriginalFileName CHAR(50) WITH COMP NULL,
Comment     MEMO WITH COMP NULL)

En zo voeg ik een record toe:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
  tb := OpenTable('OBJECT');
  with tb do
  try
    Append;
    FieldByName('FileName').Value := sFileName;
    FieldByName('OriginalFileName').Value := ExtractFileName(sFileName);
    FieldByName('Comment').Value := sComment;
    FieldByName('Creator').Value := FUser;
    FieldByName('CreationDate').Value := Now;
    Post;
    result := FieldByName('Id').Value;
  finally
    Free;
  end;

Anyone any idea hoe die spaties erin komen?

Ik ben tenminste niet altijd hypocriet!


Verwijderd

Je moet VARCHAR gebruiken ipv CHAR.

  • AdLentis
  • Registratie: Mei 2000
  • Laatst online: 27-10-2025

AdLentis

Gadget Inspector

Topicstarter
Sh*t! Natuurlijk!!!!!!

|:( |:( |:( |:( |:( |:( |:( |:(

Stom stom stom stom! Dit kon ik weten!

Bedankt :D

Ik ben tenminste niet altijd hypocriet!