Muhammad Sudrajat
Tue, 29 Dec 2009 02:22:23 -0800
Saya biasa pake fungsi di bawah ini.., tempatkan di sebuah module (bukan di form), agar bisa "dipanggil" berulang-ulang
Public Function FormatSQL(StrFieldVal As String) As String
Dim ChrPos As Long, PosFound As Long
Dim WrkStr As String
For ChrPos = 1 To Len(StrFieldVal)
PosFound = InStr(ChrPos, StrFieldVal, "'")
If PosFound > 0 Then
WrkStr = WrkStr & Mid(StrFieldVal, ChrPos, PosFound - ChrPos + 1) &
"'"
ChrPos = PosFound
Else
WrkStr = WrkStr & Mid(StrFieldVal, ChrPos, Len(StrFieldVal))
ChrPos = Len(StrFieldVal)
End If
Next ChrPos
FormatSQL = WrkStr
End Function
Cara pakenya (contoh) :
insert into tbl_nya(field_nim,field_nama) values('" & val_nim & "','" &
formatsql(val_nama) & "')
Semoga membantu...
Rgds,
Drajat
----- Original Message -----
From: kazhu yoo
To: ilkom_usu@yahoogroups.com
Sent: Tuesday, December 29, 2009 9:02 AM
Subject: RE: [ilkom_usu] program
terimakasih ya mas.. atas pencerahan nya.. biar saya coba dulu..
--- On Mon, 12/28/09, Muhammad Alvin <mhdal...@gmail.com> wrote:
From: Muhammad Alvin <mhdal...@gmail.com>
Subject: RE: [ilkom_usu] program
To: ilkom_usu@yahoogroups.com
Date: Monday, December 28, 2009, 4:07 AM
Kalo menurut saya, itu akibat tanda apostrophe (‘) yg menjadikan
query SQL berantakan.
Anggaplah ada code berikut:
Dim strNama, strNim, strJurusan
strNama = ‘Muhammad Alvin’
strNim = ‘061401088’
strJurusan = ‘S1 Ilmu Komputer USU’
Dim strSQL
strSQL = ‘INSERT INTO tbl_mahasiswa (nim, nama, jurusan) VALUES (‘’’
& strNim & ‘’’, ‘’’ & strNama & ‘’’, ‘’’, & strJurusan & ‘’’)’
Dengan data di atas, maka strSQL akan bernilai:
INSERT INTO tbl_mahasiswa (nim, nama, jurusan) VALUES (‘061401088’,
‘Muhammad Alvin’, ‘S1 Ilmu Komputer’)
Untuk kasus strNama = Fa’iz, tentu saja strSQL akan bernilai:
INSERT INTO tbl_mahasiswa (nim, nama, jurusan) VALUES (‘012345678’,
‘Fa’iz’, ‘jurusan’)
Lihat kesalahan di ‘Fa’iz’
Solusinya, setiap karakter apostrophe pada strNama harus di-replace
jadi double apostrophe. Ada fungsi Replace di VB6, yaitu Replace(string,
search, replace) yg akan mencari <search > dalam string <string> lalu direplace
jadi <replace>. Contoh penggunaannya:
strSQL = ‘INSERT INTO tbl_mahasiswa (nim, nama, jurusan) VALUES (‘’’
& strNim & ‘’’, ‘’’ & Replace(strNama, ‘’’’, ‘’’’’’) & ‘’’, ‘’’, & strJurusan &
‘’’)’
sehingga menghasilkan:
INSERT INTO tbl_mahasiswa (nim, nama, jurusan) VALUES (‘012345678’,
‘Fa’’iz’, ‘jurusan’)
Catatan:
Seingat saya, utk membuat apostrophe di VB harus dibuatkan double
apostrophe (bukan quotataion mark).
Maaf ya sample nya jadi susah dibaca, banyak kali apostrophe nya.
Tapi saya yakin kamu ngerti kok. Maaf juga kalo ada yg salah dengan VB6 nya,
soalnya saya udah lama gk pake VB6 (terakhir kira2 4 tahun yg lalu). Sekarang
saya programmer PHP di perusahaan software swasta di kota medan.
Regards,
Muhammad Alvin - www.alvin.web. id
From: ilkom_...@yahoogrou ps.com [mailto:ilkom_ u...@yahoogroups.
com] On Behalf Of SUKRON SAMOSIR
Sent: Monday, December 28, 2009 8:15 AM
To: ilkom_...@yahoogrou ps.com
Subject: Bls: [ilkom_usu] program
Coba ganti
Properties Form menjadi
KeyPreview = True
dan tambahkn kode berikut
Private Sub Form_KeyPress( KeyAscii As Integer)
If KeyAscii = Asc("'") Then KeyAscii = Asc("`")
End Sub
About me :
http://babiat. multiply. com/
http://profiles. friendster. com/30759605
http://www.facebook .com/people/ Sukron-Samosir/ 1398614688
--- Pada Sab, 26/12/09, kazhu yoo <kazhu_...@yahoo. com>
menulis:
Dari: kazhu yoo <kazhu_...@yahoo. com>
Judul: [ilkom_usu] program
Kepada: ilkom_...@yahoogrou ps.com
Tanggal: Sabtu, 26 Desember, 2009, 10:50 AM
ass....
dear friends all..
aku ada buat program Biodata siswa memakai visual basic
6.0 dan database sql server 2000
**aku ada kasus**
ketika aku input biodata dengan nama siswa( FA'IZ)setelah
selesai lalu aku klik tombol simpan kemudian muncul pesan error seperti yang
di bawah ini:
run-time error '2147217900( 80040e14) ';
line 1; Incorrect Syntax near 'IZ'.
bagi para-para master aku mohon pencerahan-a donzk!!!
----------------------------------------------------------------------
Dapatkan nama yang Anda sukai!
Sekarang Anda dapat memiliki email di @ymail.com dan @rocketmail. com.