Re: TStringField.Size
Luca Olivetti via fpc-pascal <[email protected]>
| Newsgroups | gmane.comp.compilers.free-pascal.general |
|---|---|
| Message-ID | <[email protected]> |
El 14/7/25 a les 14:30, Michael Van Canneyt via fpc-pascal ha escrit: > > > On Mon, 14 Jul 2025, Luca Olivetti via fpc-pascal wrote: > >> Hello, >> >> In a project I'm using both an sql server database (TMSSQLConnection) >> and a postgresql one (TPQConnection). >> One of the TStringField is defined as size 100, but in the sql server >> it has been changed to to 200. >> Even without changing the TStringField.Size in the program I can get >> values longer than 100 characters. >> I did a test with the TPQConnection and if I change the size of a >> field, the TStringField is truncated according to its size. >> Why the difference between the two database connectors? Shouldn't it >> depend exclusively on the TField implementation? > > No, the field size is calculated by the connection component and whether or > not it uses UTF8 for the character set. That's not what the documentation says https://www.freepascal.org/docs-html/fcl/db/tstringfield.size.html (emphasis mine) "it is the declared *maximum* size of the string (in *characters*) and is used to calculate the size of the dataset buffer." In any case I would expect the same behaviour regardless of the database connector used. Bye -- Luca _______________________________________________ fpc-pascal maillist - [email protected] https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal