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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.