Sign in Join
Wiki copytemporary

Database field type/fr: what changed

Revision 2 to 3. Removed lines have a minus sign; added lines have a plus sign.

OldNewLine
1----
2-[[Portal:Databases|**Portail de la base de données**]]
3-Références:
4-
5- * [[Databases/fr|Information générale]]
6- * [[Database libraries/fr|Bibliothèques]]
7- * Types de champ
8- * [[Data Controls tab/fr|Contrôles]]
9- * [[Lazarus DB Faq/fr|FAQ]]
10- * [[SqlDBHowto/fr|Comment faire en SQL ?]]
11- * [[Working With TSQLQuery/fr|Travailler avec TSQLQuery]]
12- * [[How to write in-memory database applications in Lazarus/FPC/fr|Applications de base de données en mémoire]]
13-
14-Tutoriels/articles pratiques :
15-
16- * [[Lazarus Database Overview/fr|Vue d'ensemble]]
17- * [[SQLdb Tutorial0/fr|0 - Configuration de la base de données]]
18- * [[SQLdb Tutorial1/fr|1 - Commençons]]
19- * [[SQLdb Tutorial2/fr|2 - Edition]]
20- * [[SQLdb Tutorial3/fr|3 - Requêtes]]
21- * [[SQLdb Tutorial4/fr|4 - Modules de données]]
22- * [[SQLdb Programming Reference/fr|Référence de programmation SQLdb]]
23-
24-Bases de données
25-
26- [[Advantage Database Server/fr|Advantage]] \- [[MySQLDatabases/fr|MySQL]] \- [[mssqlconn/fr|MSSQL]] \- [[postgres/fr|Postgres]] \- [[Firebird/fr|Interbase]] \- [[Firebird/fr|Firebird]] \- [[Oracle/fr|Oracle]] \- [[ODBCConn/fr|ODBC]] \- [[TParadox/fr|Paradox]] \- [[SQLite/fr|SQLite]] \- [[Lazarus Tdbf Tutorial/fr|dBASE]] \- [[MS Access/fr|MS Access]] \- [[Zeos tutorial/fr|Zeos]]
27-
28-## Contents
29-
30- * 1 Vue d'ensemble
31- * 2 Types
32- * 3 Size, DataSize et Unicode
33- * 4 Définition des types dans votre DataSet
34- * 5 Affectation et récupération de valeurs
35- * 6 Voir aussi
36-
371## Vue d'ensemble
382
39-Les champs de base de données FCL-DB peuvent avoir différents types de données. Dans les datasets, un sous-ensemble de ces types est disponible. Les types pris en charge diffèrent selon le type de dataset.
3+Les champs de base de données FCL-DB peuvent avoir différents types de données. Dans les datasets, un sous-ensemble de ces types est disponible. Les types pris en charge diffèrent selon le type de dataset.
404
415## Types
426
43-Actuellement, Les types de champ suivant sont définis : Voir [Documentation sur le type de champ de la FCL](<http://lazarus-ccr.sourceforge.net/docs/fcl/db/tfieldtype.html>). A faire : Ajouter l'information sur l'affectation, (p.exe. pouvez-vous utiliser .AsString) et des information supplémentaires au dessous.
7+Actuellement, Les types de champ suivant sont définis : Voir [Documentation sur le type de champ de la FCL](http://lazarus-ccr.sourceforge.net/docs/fcl/db/tfieldtype.html). A faire : Ajouter l'information sur l'affectation, (p.exe. pouvez-vous utiliser .AsString) et des information supplémentaires au dessous.
448
45-Type de champ | Description
46----|---
47-ftADT |
48-ftArray | Représente un type de donnée Array de Interbase 6/Firebird (tableau de simple type de donnée comme varchar ou integer). Toutefois, SQLDB ne prends pas en charge le type de donnée Array actuellement.
49-ftAutoInc | Un champ entier avec incrémentation automatique.
50-ftBCD | Une valeur en [Décimal codé binaire (BCD)](<https://fr.wikipedia.org/wiki/D%C3%A9cimal_cod%C3%A9_binaire>).
51-ftBlob | Un objet binaire large (BLOB), destiné à stocker des données binaires arbitraires.
52-ftBoolean | Une valeur binaire (True/False).
53-ftBytes | Un nombre fixé d'octets stockés tels quels. La propriété Size doit être définie pour fonctionner.
54-ftCurrency | Un format pour précisément stocker des valeurs monétaires.
55-ftCursor |
56-ftDataSet | Sans doute destiné à stocker un DataSet entier (peut-être pour implémenter une table maître/détail).
57-ftDate | Une date sans information d'heure.
58-ftDateTime | Information date et heure.
59-ftDBaseOle | Probablement destiné à stocker des objets OLE dans les bases de données DBase. La propriété Size doit être définie pour fonctionner.
60-ftFMTBcd | Une forme de champ numérique Décimal codé binaire (BCD). La propriété Size doit être définie pour fonctionner.
61-ftFixedChar | Un champ caractères en taille fixe, semblable au type Pascal ShortString. La propriété Size doit être définie pour fonctionner.
62-ftFixedWideChar | a fixed width multibyte character field. Needs to have its Size property set to work.
63-ftFloat | Un type numérique en virgule flottante.
64-ftFmtMemo | Mémo formatté (spécifique Paradox). La propriété Size doit être définie pour fonctionner.
65-ftGraphic | Pour stocker une image. La propriété Size doit être définie pour fonctionner.
66-ftGuid | Un champ pour stocker un identificateur global unique (GUID, _Globally Unique Identifier_). Dans le code actuel, la taille de ce champ doit être mise à 38.
67-ftIDispatch |
68-ftInteger | Pour des valeurs entières.
69-ftInterface |
70-ftLargeint | Un entier de plus grande taille avec une étendue plus large aussi.
71-ftMemo | Stocke une chaîne/un texte en taille variable, ne demande pas à ce que la propriété Size soit définie.
72-ftOraBlob | Probablement pour stocker des BLOB Oracle.
73-ftOraClob | Probablement pour stocker des CLOB Oracle : un type de données Oracle qui peut tenir jusqu'à 4 Go de donnée [[1]](<http://www.orafaq.com/wiki/CLOB>)
74-ftParadoxOle | Probablement pour destiné à contenir des objets OLE dans une base de données Paradox.
75-ftReference |
76-ftSmallint | Un type entier de plus petite taille que ftInteger.
77-ftString | Stocke de la donnée chaîne ; la propriété Size doit être définie en précisant le nombre maximal de caractères possibles dans le champ.
78-ftTime | Stocke de la donnée horaire seulement.
79-ftTimeStamp | Stocke de la donnée date/heure. Sans doute équivalent.
80-ftTypedBinary | Une forme de champ comme blob ?
81-ftUnknown |
82-ftVarBytes | Probablement destiné à enregistrer de la donnée Variant en taille variable.
83-ftVariant | Probablement destiné à enregistrer de la donnée Variant.
84-ftWideMemo | Un mémo avec des caractères de type widestring (UTF16).
85-ftWideString | Un champ ftString avec des caractères de type widestring (UTF16).
86-ftWord | Probablement pour stocker un valeur entière.
87-
88-Remarque : Un certain nombre de ces types de champ provient du monde Paradox et n'ont pas d'équivalent dans d'autres bases. Delphi les proposait à l'origine du fait de sa forte relation aux BDE.
9+| Type de champ | Description |
10+|----|----|
11+| ftADT | |
12+| ftArray | Représente un type de donnée Array de Interbase 6/Firebird (tableau de simple type de donnée comme varchar ou integer). Toutefois, SQLDB ne prends pas en charge le type de donnée Array actuellement. |
13+| ftAutoInc | Un champ entier avec incrémentation automatique. |
14+| ftBCD | Une valeur en [Décimal codé binaire (BCD)](https://fr.wikipedia.org/wiki/D%C3%A9cimal_cod%C3%A9_binaire). |
15+| ftBlob | Un objet binaire large (BLOB), destiné à stocker des données binaires arbitraires. |
16+| ftBoolean | Une valeur binaire (True/False). |
17+| ftBytes | Un nombre fixé d'octets stockés tels quels. La propriété Size doit être définie pour fonctionner. |
18+| ftCurrency | Un format pour précisément stocker des valeurs monétaires. |
19+| ftCursor | |
20+| ftDataSet | Sans doute destiné à stocker un DataSet entier (peut-être pour implémenter une table maître/détail). |
21+| ftDate | Une date sans information d'heure. |
22+| ftDateTime | Information date et heure. |
23+| ftDBaseOle | Probablement destiné à stocker des objets OLE dans les bases de données DBase. La propriété Size doit être définie pour fonctionner. |
24+| ftFMTBcd | Une forme de champ numérique Décimal codé binaire (BCD). La propriété Size doit être définie pour fonctionner. |
25+| ftFixedChar | Un champ caractères en taille fixe, semblable au type Pascal ShortString. La propriété Size doit être définie pour fonctionner. |
26+| ftFixedWideChar | a fixed width multibyte character field. Needs to have its Size property set to work. |
27+| ftFloat | Un type numérique en virgule flottante. |
28+| ftFmtMemo | Mémo formatté (spécifique Paradox). La propriété Size doit être définie pour fonctionner. |
29+| ftGraphic | Pour stocker une image. La propriété Size doit être définie pour fonctionner. |
30+| ftGuid | Un champ pour stocker un identificateur global unique (GUID, *Globally Unique Identifier*). Dans le code actuel, la taille de ce champ doit être mise à 38. |
31+| ftIDispatch | |
32+| ftInteger | Pour des valeurs entières. |
33+| ftInterface | |
34+| ftLargeint | Un entier de plus grande taille avec une étendue plus large aussi. |
35+| ftMemo | Stocke une chaîne/un texte en taille variable, ne demande pas à ce que la propriété Size soit définie. |
36+| ftOraBlob | Probablement pour stocker des BLOB Oracle. |
37+| ftOraClob | Probablement pour stocker des CLOB Oracle : un type de données Oracle qui peut tenir jusqu'à 4 Go de donnée [1](http://www.orafaq.com/wiki/CLOB) |
38+| ftParadoxOle | Probablement pour destiné à contenir des objets OLE dans une base de données Paradox. |
39+| ftReference | |
40+| ftSmallint | Un type entier de plus petite taille que ftInteger. |
41+| ftString | Stocke de la donnée chaîne ; la propriété Size doit être définie en précisant le nombre maximal de caractères possibles dans le champ. |
42+| ftTime | Stocke de la donnée horaire seulement. |
43+| ftTimeStamp | Stocke de la donnée date/heure. Sans doute équivalent. |
44+| ftTypedBinary | Une forme de champ comme blob ? |
45+| ftUnknown | |
46+| ftVarBytes | Probablement destiné à enregistrer de la donnée Variant en taille variable. |
47+| ftVariant | Probablement destiné à enregistrer de la donnée Variant. |
48+| ftWideMemo | Un mémo avec des caractères de type widestring (UTF16). |
49+| ftWideString | Un champ ftString avec des caractères de type widestring (UTF16). |
50+| ftWord | Probablement pour stocker un valeur entière. |
8951
52+Remarque : Un certain nombre de ces types de champ provient du monde Paradox et n'ont pas d'équivalent dans d'autres bases. Delphi les proposait à l'origine du fait de sa forte relation aux BDE.
53+
9054## Size, DataSize et Unicode
9155
92-Reamrquez que pour les champs de type chaîne, la propriété Size indique le nombre de caractères qui peuvent être enregistrés. Comme indiqué dans [[FPC Unicode support/fr|FPC Unicode support/fr#Introduction]], FPC jusqu'à la version 2.6 incluse, traite avec des chaînes de caractères simples **ANSI/ASCII** ; il ne supporte pas les caractères Unicode/UTF8/UTF16/Unicodestring.
56+Reamrquez que pour les champs de type chaîne, la propriété Size indique le nombre de caractères qui peuvent être enregistrés. Comme indiqué dans [[FPC Unicode support/fr|FPC Unicode support/fr#Introduction]], FPC jusqu'à la version 2.6 incluse, traite avec des chaînes de caractères simples **ANSI/ASCII** ; il ne supporte pas les caractères Unicode/UTF8/UTF16/Unicodestring.
9357
94-La propriété DataSize en lecture seule indique la taille du champ en octets.
58+La propriété DataSize en lecture seule indique la taille du champ en octets.
9559
96-Si vous utilisez des caractères à octets multiples (_multibyte characters_ , p.ex. encodés en UTF8 ou UTF16/Unicodestring), DataSize et Size ne signifie pas la même chose. Si vous utilisez des caractères ANSI/ASCII, DataSize et Size signifie la même chose.
60+Si vous utilisez des caractères à octets multiples (*multibyte characters*, p.ex. encodés en UTF8 ou UTF16/Unicodestring), DataSize et Size ne signifie pas la même chose. Si vous utilisez des caractères ANSI/ASCII, DataSize et Size signifie la même chose.
9761
9862## Définition des types dans votre DataSet
9963
100-_A faire : ecrivez-moi. Expliquer les diverses façons de faire des choses (TFieldDef, TFields) et quel DataSet supporte quelle méthodes._
64+*A faire : ecrivez-moi. Expliquer les diverses façons de faire des choses (TFieldDef, TFields) et quel DataSet supporte quelle méthodes.*
10165
10266## Affectation et récupération de valeurs
10367
104-Une fois que vous avez défini les champs dans votre DataSet, vous pouvez affecter et récupérer de la donnée de cette façon - supposons que vous avez un DataSet appelé FTestDataset :
105-```
106-FTestDataset.Open; //Open for viewing/editing/inserting
107- FTestDataset.Append;
108- FTestDataset.Fieldbyname('YourFieldName').Asstring := 'This is my field data'; //Suppose field YourFieldName is a memo field
109- FTestDataset.Post; //"Commit"/save changes in the record to the dataset.
110- writeln('YourFieldName has data:' + FTestDataset.Fieldbyname('YourFieldName').Asstring
111- { Retrieve the field value of the current record. Because we haven't moved the record, we should get what we just entered }
68+Une fois que vous avez défini les champs dans votre DataSet, vous pouvez affecter et récupérer de la donnée de cette façon - supposons que vous avez un DataSet appelé FTestDataset :
69+
70+``` pascal
71+ FTestDataset.Open; //Open for viewing/editing/inserting
72+ FTestDataset.Append;
73+ FTestDataset.Fieldbyname('YourFieldName').Asstring := 'This is my field data'; //Suppose field YourFieldName is a memo field
74+ FTestDataset.Post; //"Commit"/save changes in the record to the dataset.
75+ writeln('YourFieldName has data:' + FTestDataset.Fieldbyname('YourFieldName').Asstring
76+ { Retrieve the field value of the current record. Because we haven't moved the record, we should get what we just entered }
11277```
11378
114-Pour les champs texte/mémo, utilisez la méthode AsString. Pour les champs date/heure, utilisez la méthode AsDateTime.
79+Pour les champs texte/mémo, utilisez la méthode AsString. Pour les champs date/heure, utilisez la méthode AsDateTime.
11580
11681## Voir aussi
11782
118- * [[Databases/fr|Bases de données]]
83+- [[Databases/fr|Bases de données]]
11984
12085---
121-*From the Free Pascal wiki, page "Database field type/fr", as the Internet Archive kept it on 2023-03-31. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*
86+*From the Free Pascal wiki, page "Database field type/fr", as it stood on 2020-02-12 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history