Baru-baru ini, setelah melihat dua artikel tentang CSDN tentang "Mengakses file JPEG ke SQLServer di Delphi", saya merasa bahwa metode yang dijelaskan di dalamnya diinginkan, tetapi cukup memakan waktu. Dapat diandalkan, saya tidak berani menikmatinya sendiri, saya bersedia menerbitkannya dan membaginya dengan semua orang. Tes dilewati di Delphi7.0+Win2000+Sqlserver 2000 dan berjalan dengan baik.
Larutan:
1. Kuncinya adalah untuk mengonversi file JPEG terbuka secara dinamis menjadi objek TbitMap dan menampilkannya di objek Timage;
2. Kirimkan gambar yang ditampilkan ke database.
Dalam contoh ini, tabel contoh tes didirikan di SQLServer2000: Ujian (XM Char (10), gambar foto);
Kode Sumber Program:
unit savePic;
antarmuka
penggunaan
Windows, pesan, sysutils, varian, kelas, grafik, kontrol, formulir,
Dialog, extdlgs, extctrls, dbctrls, grids, dbgrids, db, adodb, tombol,
Stdctrls, jpeg;
jenis
Tform1 = class (tform)
Speedbutton1: tspeedbutton;
Adoconnection1: tadoconnection;
Table1: tadotable;
DataSource1: tDataSource;
Dbgrid1: tdbgrid;
Dbimage1: tdbimage;
Gambar1: timage;
Speedbutton2: tspeedbutton;
OpenPicturedialog1: topenpicturedialog;
Label1: tlabel;
Label2: tlabel;
Edit1: tedit;
Speedbutton3: tspeedbutton;
Prosedur SpeedButton2Click (pengirim: TOBJEK);
Prosedur SpeedButton1Click (pengirim: Tobject);
Prosedur SpeedButton3Click (pengirim: TOBJEK);
Pribadi
{Deklarasi Pribadi}
publik
{Deklarasi Publik}
akhir;
var
Form1: tform1;
Pelaksanaan
{$ R *.dfm}
Prosedur TFORM1.SPEEDBUTTON2CLICK (Pengirim: Tobject);
var
BMP1: tbitmap;
jpg1: tjpegimage;
Mulai
OpenPicturealog1.Defaultext: = Graphicextension (tjpegimage);
Jika OpenPicturedialog1.Eksecute maka
Mulai
bmp1: = tbitmap.create;
jpg1: = tjpegimage.create;
mencoba
jpg1.loadFromFile (openpicturedialog1.filename);
bmp1.assign (jpg1);
Image1.picture.bitmap.assign (BMP1);
Akhirnya
jpg1.free;
BMP1.Free;
akhir;
akhir;
akhir;
Prosedur TFORM1.SPEEDBUTTON1CLICK (Pengirim: Tobject);
Mulai
Table1.open;
Table1.insert;
Table1.FieldByName ('XM'). Asstring: = Edit1.Text;
Table1.FieldbyName ('Foto'). Tetapkan (gambar1.picture);
Table1.post;
Table1.Refresh;
akhir;
akhir.