Setuju dengan komentar SirRufo di sini. Jawaban yang benar untuk "bagaimana saya melakukannya?" adalah "jangan lakukan itu; itu cara yang salah."
Jika Anda memasukkan nilai langsung ke kueri seperti itu, peretas dapat menemukan cara untuk menempatkan sesuatu ke dalam kueri Anda yang ditafsirkan sebagai Perintah SQL. Ini dikenal sebagai injeksi SQL , dan bertanggung jawab atas kerusakan senilai miliaran dolar dalam beberapa dekade terakhir. (Tidak melebih-lebihkan.)
Cara yang tepat untuk melakukannya adalah dengan memisahkan kode SQL dari data Anda dengan rapi, dengan menggunakan parameter, seperti ini:
ADOQuery1.SQL.Clear;
//: before an identifier specifies a parameter
ADOQuery1.SQL.Add('SELECT tbl.emailAddress, tbljob.Time FROM '+
'dbwindowwash.tblclient, dbwindowwash.tbljob, dbwindowash.tbljobclientworker '+
'WHERE tbljobclientworker.jobID = tbljob.jobID AND '+
'tbljobclientworker.clientID = tblclient.clientID AND tbljob.Date = :date';
//parse the query and find parameter declarations
ADOQuery1.Prepare;
//set a value for the parameter
ADOQuery1.ParamByName['date'].AsDateTime := TodaysDate;
ADOQuery1.Open
Sintaks yang tepat untuk cara menyetel nilai parameter mungkin berbeda dari satu tipe set data ke tipe set data lainnya, tetapi itu akan memberi Anda ide dasarnya.