Hari ini, seorang teman bertanya kepada saya bagaimana cara mendapatkan nilai kembalian dari prosedur tersimpan di Blok Aplikasi Akses Data. Saya menemukan bahwa masalah ini tidak disebutkan dalam artikel yang saya tulis sebelumnya berikut:
1. Pertama buatlah prosedur tersimpan dengan nilai kembalian. Sebagai contoh, saya cukup membuat prosedur tersimpan sebagai berikut:
membuat tes proc
(
@id ke dalam
)
sebagai
deklarasikan @flag int
pilih * dari orang di mana id=@id
jika @@jumlah baris > 0
atur @bendera=1
kalau tidak
atur @flag=0
kembalikan @flag
Metode yang kami gunakan untuk mendapatkan nilai kembalian ini dalam program adalah sebagai berikut:
[Metode Tes]
kekosongan publik TestReturnValue()
{
Basis data db = DatabaseFactory.CreateDatabase();
DbCommand dbcomm = db.GetStoredProcCommand("test");
db.AddInParameter(dbcomm, "@id", DbType.Int32,1);
//Kuncinya ada di sini, tambahkan parameter bertipe ReturnValue
db.AddParameter(dbcomm, "@RETURN_VALUE", DbType.String, ParameterDirection.ReturnValue, "", DataRowVersion.Current, null);
db.ExecuteNonQuery(dbcomm);
int nilai tes = (int)dbcomm.Parameter["@RETURN_VALUE"].Nilai
;
}
Melalui kode di atas, kita bisa mendapatkan nilai kembalian dari prosedur yang tersimpan dalam program.
Mungkin masih banyak hal yang belum saya sebutkan pada artikel yang saya tulis sebelumnya, semoga lebih banyak teman yang bisa memberikan pendapatnya kepada saya.