Saya telah diberikan akun pengguna ke database SQL Server yang hanya memiliki hak istimewa untuk menjalankan prosedur tersimpan. Saya menambahkan file jar JTDS SQL Server JDBC ke SQL Developer dan menambahkannya sebagai driver JDBC Pihak Ketiga. Saya berhasil masuk ke database SQL Server. Saya diberikan sintaks ini untuk menjalankan prosedur:
EXEC proc_name 'paramValue1' 'paramValue2'
Ketika saya menjalankan ini sebagai pernyataan atau skrip, saya mendapatkan kesalahan ini:
Error starting at line 1 in command:
EXEC proc_name 'paramValue1' 'paramValue2'
Error report:
Incorrect syntax near the keyword 'BEGIN'.
Saya mencoba membungkus pernyataan itu BEGIN/END
, tetapi mendapatkan kesalahan yang sama. Apakah mungkin untuk memanggil prosedur dari Pengembang SQL? Jika demikian, sintaks apa yang harus saya gunakan?
Kamu hilang
,
sumber
EXEC proc_name
dan lihat apakah itu meminta Anda untuk parameter kedua ... maka setidaknya Anda tahu sytax Anda benar..jika tidak berhasil berarti Anda benar-benar tidak punya nama proc yang tersimpan dengan benar ... coba nama yang memenuhi syarat penuh ..Anda perlu melakukan ini:
sumber
sumber
Jika tujuan Prosedur Tersimpan adalah untuk melakukan
INSERT
pada tabel yang memiliki bidang Identitas dideklarasikan, maka bidang, dalam skenario ini@paramValue1
, harus dideklarasikan dan hanya melewati nilai 0, karena itu akan menjadi peningkatan otomatis.sumber
Saya tahu ini yang lama. Tetapi ini dapat membantu orang lain.
Saya telah menambahkan fungsi panggilan SP antara BEGIN / END. Berikut ini skrip yang berfungsi.
sumber
Jika Anda hanya perlu keluar dari prosedur tersimpan Anda
proc_name 'paramValue1' , 'paramValue2'...
pada saat yang sama Anda menjalankan lebih dari satu permintaan seperti satu permintaan pilih dan prosedur tersimpan Anda harus menambahkanselect * from tableName EXEC proc_name paramValue1 , paramValue2...
sumber
Prosedur yang tersimpan dapat dijalankan dalam alat pengembang sql menggunakan sintaks di bawah ini
BEGIN procedureurameame (); AKHIR;
Jika ada parameter maka harus dilewati.
sumber
sumber