Bagaimana jika kita ingin memasukan dat ayang ada di Tabel 1 ke Tabel yang lain ? mungkin sudah ada yang tau tapi bagi yang belum tau silahkan simak Listing yang akan saya kasih dibawah ini. Ada yang bilang kalu mau memasukan seperti hal di atas rumusnya adalah Insert Into Tabel 2 values select*from tabel 1... kurang lebih seperti itu.. kalu Field" Tabel 1=Field" Tabel 2 mungkin saja bisa, tapi bagaimana jika beda.
Misal..
>Di Tabel 1 Field"y : [kode],[nama],[unit],[harga],[total]
>Di Tabel 2 Field"y : [NoREF],[kode],[nama],[unit],[harga],[total]
Mungkin ada berbagai cara untuk melakukan hal di atas (maksudnya dalam PerCodingannya) , tapi yang saya pake adalah sebagai berikut :
procedure TForm1.Button1Click(Sender: TObject);
Var
NF,KDB,NB,HG,UNT,DSK,VDSK,TTL : string;
Begin
Edit1.Text:=FormatDateTime('YYMMddHHnnss',now);
//Buka data tabel yang akan di inputkan ke tabel lain
with ADOFILTER do begin
Close;
sql.Clear;
sql.Add('select*from sementara');
Open;
end;
If not ADOFILTER.Eof then
Begin
ADOFILTER.First;
while not ADOFILTER.Eof do
BEGIN
NF:=Edit1.Text;
KDB:=ADOFILTER.FIELDBYNAME('kode').Value;
NB:=ADOFILTER.FIELDBYNAME('nama').Value;
HG:=ADOFILTER.FIELDBYNAME('harga').Value;
UNT:=ADOFILTER.FIELDBYNAME('unit').Value;
DSK:=ADOFILTER.FIELDBYNAME('Diskon').Value;
VDSK:=ADOFILTER.FIELDBYNAME('VDiskon').Value;
TTL:=ADOFILTER.FIELDBYNAME('Total').Value;
//simpan ke tabel detail (ke tabel lain)
with ADOdetailMaster do begin
Close;
sql.Clear;
sql.Add('insert into tbldetailMaster values('+quotedstr(NF)+','+
''+quotedstr(KDB)+','+quotedstr(NB)+','+HG+','+Unt+','+DSK+','+VDSK+','+TTL+')');
ExecSQL;
end;
ADOFILTER.Next;
END;
with ADOdetailMaster do begin
Close;
sql.Clear;
sql.Add('select*from tbldetailMaster');
Open;
end;
End;
end;
Ini hanya CONTOH yang saya Pake, anggap saja sebagai pencerahan kalau memang ada cara lain silahkan saja.
Contoh Screen:
Source Aplikasi : KLIK
Semoga membantu !!
nice share gan ,ane coba dulu
ReplyDeletemaaf gan numpang nanya misalnya menggabungkan record 2 table kedalam 1 tabel yang baru bisa gak ,,ya seperti table history gitu ..
ReplyDeletepake INNER JOIN gan, misal :
DeleteTabel 1 (Tsiswa) : ID,nama Alamat
Tabel 2 (Tabsen): ID,tanggal,jam,keterangan
Query Untuk menampilkan :
select SW.ID,SW.nama,SW.Alamat,AB.tanggal,AB.jam,AB.keterangan from TSiswa as SW inner join TAbsen as AB on SW.ID=AB.ID
MAKA HASILNYA MENJADI:
ID | Nama | Alamat | Tanggal | jam | Keterangan
maksih gan ,,saya coba dulu
Deletesaya mendapat kan pesan error seperi ini multiple-step generated errors, check each value
maksud nya giman gan ,,dan klo boleh solusi nya :)
Errornya ketika eksekusi apa itu gan ?
Deleteperasaan pernah ngalamin tapi lupa lagi dalam hal apa...
udah bisa gn kemarin dioatak atik ,,
Deletemaksih gan info nya sangat berguna