Ajutați la aducerea fișierului

Ajutați la aducerea fișierului * .txt în baza de date

Bună ziua. programatori. Am avut o întrebare despre introducerea fișierelor în baza de date. Nu există nicio întrebare cu imaginile, dar au apărut fișiere text. Într-un fișier text de 20 până la 50 de linii, cu siguranță aș putea crea un câmp în baza de date cu o dimensiune de aproximativ 2.000 de caractere, dar cred că aceasta este o decizie greșită. Dacă cineva vă poate ajuta, te rog ajută. Mulțumită în avans!







> [0] Vladimir Volobuev # xA0; (22.06.07 13:12)
> Eu cu siguranță aș putea crea un câmp într-un DB cu o dimensiune de aproximativ 2
> 000 de caractere, dar cred că aceasta este o decizie greșită

Este doar textul fișierului sau există vreo imagine? Este fișierul unicode sau nu?
Dacă numai textul fără unicode - vedeți textul de tip text
Dacă numai textul din Unicode - vedeți tipul de date ntext
Dacă meta-fișierul - vedeți imaginea de tip de date

Deși puteți face fără varchar (8000)

Mulțumesc că mi-ai dat timp.

Dacă nu există nicio problemă cu imaginile, atunci unde sunt problemele cu textul, nu există nicio diferență între ele.

Textul este text. Un binar este un binar. Pentru text, fie varchar (dacă este mai mic de 8000 de caractere), fie text.
Pentru binare - doar imagine și nimic altceva.

Cred că este diferită întrebarea. Cum se încarcă arhiva RAR în baza de date.


> Vladimir Volobuev # xA0; (22.06.07 15:03) [6]
> Am încărcat imaginea prin DBImage și nu există niciun fișier pentru încărcarea fișierului
> component.

Aici. acest lucru. Este timpul să citiți o carte.


> și nu există nicio componentă care să încarce fișierul

Apropo, pentru a descărca un fișier text, există un astfel de campanento TDBMemo, faceți clic pe e-mail.








> # xA0; s-au gândit poate că știu aici :(

Ei bine, bine. O altă "plăcere".

Ei bine, în principiu știu, doar pentru a spune ceea ce este descris mai întâi în cărți / documentație, lenea și, în al doilea rând, conferința nu este aceeași.


> Am scris "Fișier". Aceasta înseamnă fișiere de tipuri diferite de date.

Vino de la bun început.
Care este sarcina dvs.? arhiva de fișiere? Sau ce?

PS: Cărți care au trecut prin "manualul complet SQL" descriu tipurile de date, dar cum să înscrie aceeași imagine - nu este scrisă. "Interogări SQL pentru muritorii obișnuiți" - care, de asemenea, nu există și "Delphi 6-7 și SQL". Nu stiu cine citeste aici kamasutra, dar in acest forum nu ar trebui sa fie data asta.

Și câmpurile BLOB / Image / Memo din aceste cărți nu sunt, de asemenea, descrise?

Uitați-vă la exemplele Delphi de lucru cu TBlobStream, TFileStream și totul va deveni clar. Deschideți textul (și orice altul) utilizând TFileStream, copiați-l în TBlobStream.

Mai leneș, pentru memorie pe care nu o pot picta.

> Deschideți textul (și orice altceva) utilizând fișierul
> TFileStream, copiați la TBlobStream.

Și TFileStream la ce e aici? Destul de LoadFromFile obișnuit.


> Și TFileStream la ce e aici? Destul de LoadFromFile obișnuit.

Normal - acest lucru este cu siguranță bun, dar aș vrea să știu ce clasă este.

> Normal - acest lucru este cu siguranță bun, dar aș vrea să știu ce
> clasați-l.

Aceasta este o metodă a clasei TMemoryStream din care TBlobStream este moștenit;)

smirnov # xA0; (23.06.07 19:43) [18]
TBlobField

Ei bine, atunci îmi pare rău.
Am ceva pe TBlobStream blocat.

Șters de moderator
Notă: există moderatori aici, nu este nevoie de vizitatori

Pentru orice tip de date:
Query1.Sql.Text: =
# xA0; "INSERT IN testblob" +
# xA0; "(" +
# xA0; " # xA0; fBlob "+
# xA0; ")" +
# xA0; "VALUES" +
# xA0; "(" +
# xA0; ": ParamBlobField" +
# xA0; ")";
Query1.ParamByName ("ParamBlobField") .DataTip: = ftBlob;
Query1.ParamByName ("ParamBlobField") ParamType: = ptInput;
Query1.ParamByName ("ParamBlobField"); LoadFromFile ("MyFile", ftBlob);
Query1.ExecSql;

Mulțumesc. Mă voi ocupa de cod.

Încă mai așteaptă un freebie.







Trimiteți-le prietenilor: