Arsip: buat stored procedure..
more 16 years ago
her1z_yu2n
maap kalo repost..
gini saya punya masalah..
uhmm saya pake database interbase..
ada tabel soal terus dari tabel soal itu saya mo mengeluarkan di dbgrid
itu udah bissa...
permasalahan saya di sini adalah bagaimana caranya supaya sayah bisa merandom record dari tabel soal kemudian dimasukkan ke dalam dbgrid..
nah itu dia..
mohon bantuannya :D
more 16 years ago
DelphiExpert
walah... ngga' sinkron antara post subject ama yg ditanyakan, tak jitak kowe!
-->> ya tinggal dirandom aja
Randomize;
// pastikan table soal menggunakan ID yg urut
IDX:= RandomRange(1, 100); // asumsi data soal ada 1 - 100
Query.SQL.Text:= 'SELECT * FROM SOAL WHERE SOAL_ID = :SOAL_ID';
Query.Params[0].AsInteger:= IDX;
Query.Open;
...
more 16 years ago
saysansay
Hak...hak..hak...Mau Protes ach sama @DE
Gimana Klu Record di Random berdasarkan RecordCount yang ada!!hak...hak..Rubah dikit ah kodingnya
Var
IDX : Integer;
Bagin
if not Query.Active then
begin
Randomize;
Query.Active:=True
IDX:= RandomRange(1, Query.RecordCount); // asumsi data soal ada 1 - 100
Query.Close;
Query.SQL.Text:= 'SELECT * FROM SOAL WHERE SOAL_ID = :SOAL_ID';
Query.Params[0].AsInteger:= IDX;
Query.Open;
end;
Setuju Mas Jitak...aja...hak..hak..hak..hak..
more 16 years ago
mat_koder
pertanyaan lanjutan yg tentunya relevan adalah : bagaimana mengurut 100 bank soal tsb secara random dalam DBGrid... dengan cara yg se-efisien mungkin.... apa harus dengan 100 kali query? atau lebih ? atau syukur-syukur bisa cuman 1 kali query.
... sebagai semacam pengisi waktu luang... ini kali bisa dijadiin kontes... mencari metoda yg paling efisien...
hayo..... siapa berani coba ...?
-
more 16 years ago
yayaretina
bisa juga langsung DB nya..
for example MySql.
Randomize satu record;
CREATE PROCEDURE soal_select()
NOT DETERMINISTIC
SQL SECURITY DEFINER
COMMENT ''
BEGIN
DECLARE Tot INT;
DECLARE TotInt INT;
SELECT COUNT(id_soal) INTO Tot
FROM soal;
SELECT FLOOR(1 + (RAND() Tot)) INTO TotInt;
SELECT
FROM
soal WHERE
id_soal=TotInt;
END;
Semua record dengan randomize :
CREATE PROCEDURE soal_selects()
NOT DETERMINISTIC
SQL SECURITY DEFINER
COMMENT ''
SELECT
*
FROM
soal a
ORDER BY RAND();
more 16 years ago
her1z_yu2n
//MOHON MAAF SOAL SUBJECT NYA YANG GA NYAMBUNG..
//SOALNYA KEMAREN SAYA ADA BERTANYA KE TEMEN KAYAKNYA NYELESEIN
//MASALAH INI ENAKNYA PAKE STORED PROCEDURE
//YANG SAYA JUGA BELUM BISA MAKENYA
//BERIKUT SOURCE CODE SAYA
//PERMASALAHAN SEKARANG KENAPA DI DBGRID SAYA BELUM MUNCUL LAGI
//UNTUK RECORDNYA??
//TETAPI NAMA FIELDNYA ADA DI DBGRID ITU
//RECORDNYA SAJA KOSONG
//KOMPONEN IBQUERYNYA UTK PROPERTIES SQL DI KOSONGKAN KAN??
//TERUS DI DB GRID ITU LANGSUNG MAKE DATASET YANG TELAH DIHUBUNGKAN
//KE KOMPONEN IBQUERY1 INI KAN??
//FIELD YANG AKAN DI RANDOM SUDAH SAYA UBAH KE TIPE INTEGER..
//MOHON PENCERAHAN DARI SAUDARA SEKALIAN....
procedure TForm6.Button1Click(Sender: TObject);
Var
IDX : Integer;
Begin
if Not FORM6.IBQuery1.Active then
begin
Randomize;
IDX := RandomRange(1,IBQuery1.RecordCount);
form6.IBQuery1.close;
form6.IBQuery1.SQL.Clear;
//asumsi data soal ada 1 - 100 Query.Close;
form6.IBQuery1.SQL.TEXT:='SELECT * FROM SEMENTARA WHERE ID_S = :ID_S';
form6.IBQuery1.Params[0].AsInteger:=IDX;
form6.IBQuery1.Open;
end;
end;
more 16 years ago
EkoIndri
buat mas her1z_yu2n
Silahkan kode program diatas diubah menjadi seperti ini
procedure AcakData(list : TStrings) ;
var
No: integer;
Indek: integer;
begin
Randomize;
for Indek := 0 to -1 + list.Count do
begin
No := Random(-Indek + list.Count) ;
list.Exchange(Indek, Indek + No) ;
end;
end;
procedure TForm6.Button1Click(Sender: TObject);
var
Temp : TStringList;
begin
Temp := TStringList.Create;
for indek := 1 to 100 do
Temp.Add(IntToStr(indek));
AcakData(Temp);
for indek := 1 to 100 do
begin
if Not FORM6.IBQuery1.Active then
begin
form6.IBQuery1.close;
form6.IBQuery1.SQL.Clear;
//asumsi data soal ada 1 - 100 Query.Close;
form6.IBQuery1.SQL.TEXT:='SELECT * FROM SEMENTARA WHERE ID_S = :ID_S';
form6.IBQuery1.Params[0].AsInteger := StrToInt(Temp[indek]);
form6.IBQuery1.Open;
end;
end;
end;
Semoga terselesaikan juga
more 16 years ago
yayaretina
ck..ck..ck..ck... semakin dilupakan...
http://pascal-id.org/thread/unknown/336/view-old-thread/
harus banyak2 permisi dulu nih..
more 16 years ago
her1z_yu2n
tanpa saya sadari saya telah melanggar beberapa peraturan forum...
semoga tida terulang lagi..
setelah saya liat2 lagi, ternyata codingan yang sebelumnya itu hanya untuk menampilkan satu record...
sedangkan yang saya sedang coba lakukan adalah merandom susunan record yang ada di tabel soal..
artinya apabila terdapat 20 record hanya susunannya yang random..
kalo SELECT * FROM SEMENTARA kan record yang muncul itu urut dari 1-20..
bagaimana jika saya ingin merandom susunan record yang akan muncul...
terima kasih
more 16 years ago
EkoIndri
[quote="yayaretina"]ck..ck..ck..ck... semakin dilupakan...
http://pascal-id.org/thread/unknown/336/view-old-thread/
harus banyak2 permisi dulu nih..[/quote]
Mungkin khilaf mas....
aku sendiri kemarin juga dapat teguran
aku pun juga tidak merasa melupakan ( dulu tidak lengkap bacanya... he...3x )
btw usul ma admin neh.... bagaimana lain kali klo negur itu lewat PM, mungkin lebih baik
@her1z_yu2n
Begini aja mas
lebih baik randomnya di database enginenya aja. Jadi tidak repot di delphi
more ...
- Pages:
- 1
- 2
reply |
Report Obsolete
Last Articles
Last Topic
- PascalTalk #6: (Podcast) Kuliah IT di luar negeri, susah gak sih?
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #5: UX: Research, Design and Engineer
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #4: Obrolan Ringan Seputar IT
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #2: Membuat Sendiri SMART HOME
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #3: RADically Fast and Easy Mobile Apps Development with Delphi
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #1: Pemanfaatan Artificial Intelligence di Masa Covid-19
by LuriDarmawan in Tutorial & Community Project more 3 years ago - Tempat Latihan Posting
by LuriDarmawan in OOT more 4 years ago - Archive
- Looping lagi...
by idhiel in Hal umum tentang Pascal Indonesia more 11 years ago - [ask] koneksi ke ODBC user Dsn saat runtime dengan ado
by halimanh in FireBird more 11 years ago - Validasi menggunakan data tanggal
by mas_kofa in Hal umum tentang Pascal Indonesia more 11 years ago
Random Topic
- Pertanyaan Mudah Tapi Sulit....
by juan81 in Multimedia & Graphic Enhancement more 17 years ago - Pilih Turbo Pascal/Delphi
by -BreWok- in OOT more 17 years ago - Situs Delphi
by fatahjunaidi in OOT more 18 years ago - menyimpan file gambar jpeg
by erwinkiting in Paradox more 19 years ago - bikin edit.text seperti tampilan password?
by adit4it in Hal umum tentang Pascal Indonesia more 17 years ago - Hitung bandwidth......
by EkoIndri in Hal umum tentang Pascal Indonesia more 17 years ago - insert multiselect record ke tabel
by riagil in MySQL more 13 years ago - Menentukan lama pinjam & diskon program rental
by ho2sly in Tip n Trik Pemrograman more 16 years ago - Range Check Error
by andriansah in MySQL more 16 years ago - cara bikin no id pasien buat program dokter
by rizu in Tip n Trik Pemrograman more 15 years ago