Breaking News
Loading...
13/03/2013

Lấy nhanh thông tin về nhiều đối tượng trong Database

I. VẤN ĐỀ
  • Là 1 người quản trị Database, khi cần, tôi muốn nhanh chóng lấy tất cả thông tin về những Object trong 1 database nào đó, ví dụ như:
- Danh sách tất cả Table trong Database - Danh sách tất cả các Primary Key trong Database - Danh sách tất cả Store Procedure, hay các View do người dùng định nghĩa
  • Một ví dụ khác, tôi bàn giao Database cho 1 đồng nghiệp phụ trách, và anh ta viết ứng dụng truy xuất dữ liệu trên Database này, tôi muốn biết trong vòng 1 tháng trở lại đây, anh ta đã sửa những Table, những Store Procedure nào của tôi.
Vậy làm thế nào để có được những thông tin đó?
II. GIẢI PHÁP Để giải quyết những vấn đề trên, câu trả lời là dùng View sys.objects Xin cho vài ví dụ được thực hiện trên SQL Server 2008:
  • Lấy danh sách tất cả Table trong 1 Database, ngày tạo, ngày chỉnh sửa gần nhất:
select name, create_date, modify_date from sys.objects where type='U'
Kết quả khi chạy trên Database của tôi:
  • Lấy danh sách tất cả Store Procedure trong 1 Database, ngày tạo, ngày chỉnh sửa gần nhất:
select name, create_date, modify_date from sys.objects where type='P'
Kết quả khi chạy trên Database của tôi: Lưu ý: trong 2 ví dụ trên tôi đã truyền vào tham số là type, trong sys.object có rất nhiều type, đại diện cho các Object khác nhau trong Database, ví dụ: C = CHECK constraint D = DEFAULT (constraint or stand-alone) P = SQL Stored Procedure U = Table (user-defined) V = View Để biết thêm chi tiết, các bạn có thể tham khảo trên MSND
Quang Vinh mai.quangvinh@sqlvn.com

0 comments:

Post a Comment

 
Toggle Footer