Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Apakah ada cara untuk mengambil definisi tampilan dari SQL Server menggunakan ADO biasa?

Versi SQL Server yang mana?

Untuk SQL Server 2005 dan yang lebih baru, Anda dapat memperoleh skrip SQL yang digunakan untuk membuat tampilan seperti ini:

select definition
from sys.objects     o
join sys.sql_modules m on m.object_id = o.object_id
where o.object_id = object_id( 'dbo.MyView')
  and o.type      = 'V'

Ini mengembalikan satu baris berisi skrip yang digunakan untuk membuat/mengubah tampilan.

Kolom lain dalam tabel menceritakan tentang opsi yang ada pada saat tampilan dikompilasi.

Peringatan

  • Jika tampilan terakhir diubah dengan ALTER VIEW, maka skrip akan menjadi pernyataan ALTER VIEW daripada pernyataan CREATE VIEW.

  • Script mencerminkan nama seperti yang dibuat. Satu-satunya waktu itu diperbarui adalah jika Anda menjalankan ALTER VIEW, atau menjatuhkan dan membuat ulang tampilan dengan CREATE VIEW. Jika tampilan telah diubah namanya (mis., melalui sp_rename ) atau kepemilikan telah ditransfer ke skema yang berbeda, skrip yang Anda dapatkan kembali akan mencerminkan pernyataan CREATE/ALTER VIEW asli:skrip tidak akan mencerminkan nama objek saat ini.

  • Beberapa alat memotong output. Misalnya, alat baris perintah MS-SQL sqlcmd.exe memotong data pada 255 karakter. Anda dapat melewati parameter -y N untuk mendapatkan hasil dengan N karakter.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Permintaan SQL untuk menemukan gaji tertinggi ke-N dari tabel gaji

  2. Memahami Pernyataan DROP TABLE di SQL Server

  3. kesalahan 'datetime2' saat menggunakan kerangka kerja entitas di VS 2010 .net 4.0

  4. Dapatkan Info Kolom untuk Tabel atau Tampilan di SQL Server (T-SQL:sp_columns)

  5. Permintaan SQL Server untuk menemukan semua izin/akses untuk semua pengguna dalam database