Saya tahu ini pasti sederhana, tetapi bagaimana cara saya mendahului pembuatan fungsi dengan cek untuk melihat apakah sudah ada? Jika ada, saya ingin melepaskan dan membuatnya kembali.
tsql
sql-server-2000
DavidStein
sumber
sumber
Anda juga dapat mencari nama tersebut di sysobjects
Sebenarnya, jika fungsinya bisa menjadi fungsi tabel, Anda perlu menggunakan
sumber
Ini berfungsi untuk objek apa pun , bukan hanya fungsi:
lalu tambahkan rasa objek Anda, seperti di:
sumber
Anda memiliki dua opsi untuk melepaskan dan membuat ulang prosedur di SQL Server 2016.
Mulai dari SQL Server 2016 - gunakan
IF EXISTS
Mulai dari SQL Server 2016 SP1 - gunakan
OR ALTER
sumber
sumber
Saya biasanya menghindar dari kueri dari tabel tipe sys *, vendor cenderung mengubahnya di antara rilis, utama atau lainnya. Apa yang selalu saya lakukan adalah mengeluarkan
DROP FUNCTION <name>
pernyataan dan tidak khawatir tentang kesalahan SQL yang mungkin muncul kembali. Saya menganggap prosedur standar itu di ranah DBA.sumber
Dari
SQL Server 2016 CTP3
Anda dapat menggunakan pernyataan DIE baru, bukanIF
pembungkus besarSintaks:
Pertanyaan:
Info selengkapnya di sini
sumber
sumber
Inilah pendapat saya tentang ini:
sumber
Periksa JIKA Ada Untuk Fungsi
Periksa JIKA Ada untuk prosedur Tersimpan, Fungsi juga dengan mengklik tautan di bawah ini http://www.gurujipoint.com/2017/05/check-if-exist-for-trigger-function-and.html
sumber
Jika Anda ingin menggunakan SQL ISO standar INFORMATION_SCHEMA dan bukan khusus SQL Server
sysobjects
, Anda dapat melakukan ini:sumber