Saat kita menulis program otentikasi pengguna, mudah menggunakan ASP untuk memanggil pernyataan SQL untuk mengambil apakah ada catatan yang cocok dengan kondisi dalam tabel data, dan kemudian menggunakan ASP untuk melakukan pemrosesan terkait.
Semua jalan menuju ke Roma! Tentu saja, kita juga dapat menggunakan prosedur tersimpan di database SQL SERVER untuk mengimplementasikan fungsi ini dengan mudah. Meskipun relatif kompleks, peningkatan efisiensinya terlihat jelas, karena prosedur tersimpan adalah program yang telah dikompilasi dalam database, dan kita hanya perlu menggunakan ASP untuk meneruskan berbagai parameter yang digunakan dengan benar.
Artikel ini juga terutama ingin memperkenalkan kepada Anda cara memanggil prosedur tersimpan dengan parameter di ASP melalui contoh sederhana. Saya harap Anda bisa mendapatkan lebih banyak inspirasi darinya.
Langkah pertama adalah membuat tabel data userinfo
id int(4) bukan nol,
nama lengkap varchar(50) bukan nol,
kata sandi varchar(20) bukan nol,
nikename varchar(50) not null
Langkah kedua adalah membuat prosedur tersimpan usercheck
BUAT prosedur pemeriksaan pengguna
@nama lengkap varchar(50),
@kata sandi varchar(50),
@outcheck char(3) KELUARAN
sebagai
jika ada(pilih * dari info pengguna di mana nama lengkap=@nama lengkap dan kata sandi=@kata sandi )
pilih @outcheck='ya'
kalau tidak
pilih @outcheck='no'
Catatan: Prosedur tersimpan dengan tiga parameter dibuat di sini. Parameter pertama @infullname adalah parameter input (nama pengguna); parameter kedua @inpassword juga merupakan parameter input (kata sandi); parameter @outcheck, ini adalah parameter keluaran, (apakah pengguna ini ada), saat menentukan parameter keluaran, kata "OUTPUT" harus ditambahkan setelah tipe data.
Kemudian, kami mengambil dua parameter masukan pertama untuk mengetahui apakah ada pengguna yang memenuhi syarat dalam pernyataan SQL. Jika ada, nilai parameter keluaran adalah "ya", jika tidak maka "tidak".
Langkah ketiga adalah menulis program ASP dan memanggil prosedur tersimpan
<%
'Bendera penyerahan formulir
if request("ok")=1 maka
'Buat koneksi database
Setel Komunikasi=Server.CreateObject("ADODB.Command")
Comm.ActiveConnection="DSN=localserver;UID=sa;PWD=;Database=chaiwei"
'Buat koneksi prosedur tersimpan dengan objek comm, 4 berarti jenis koneksi adalah prosedur tersimpan
Comm.CommandText="pemeriksaan pengguna"
Comm.CommandType=4
'Buat metode parameter objek comm dengan p1 sebagai namanya. Tambahkan nama lengkap parameter pertama ke koleksi p1 'nama lengkap' Nama parameter pertama disebut '200 Tipe parameter tipe varchar '1 Aliran parameter ke masukan, masukan adalah 1, keluaran adalah 2
'50 panjang parameter 50
'request("nama lengkap") Tetapkan nilai awal parameter
Set p1=Comm.CreateParameter("nama lengkap",200,1,50,request("nama lengkap"))
Comm.Parameters.Tambahkan p1
'Buat metode parameter objek komunikasi dengan p1 sebagai namanya. Tambahkan kata sandi parameter kedua ke koleksi p1
'Spesifikasinya sama seperti di atas
Set p1=Comm.CreateParameter("password",200,1,20,request("password"))
Comm.Parameters.Tambahkan p1
'Buat metode parameter objek komunikasi dengan p1 sebagai namanya. Tambahkan pemeriksaan parameter ketiga ke koleksi p1
'129 Tipe parameter tipe karakter
'2 Aliran parameter ke keluaran
'3 Parameter panjang 3
Setel p1=Comm.CreateParameter("centang",129,2,3)
Comm.Parameters.Tambahkan p1
'Jalankan prosedur tersimpan
Comm.Execute
‘Usulkan hasilnya dan proseslah
jika comm("centang")="ya" maka
respon.tulis "Selamat datang di sistem! Nama pengguna:" & comm("nama lengkap") & "Kata Sandi:" & comm("kata sandi")
kalau tidak
respon.tulis "Maaf, Anda belum mendaftar!"
berakhir jika
'Lepaskan koneksi
Setel Komunikasi=tidak ada
lain
'bentuk bagian
%>