Các Store procedure hệ thống mà developer cần biết

Các Store procedure hệ thống mà developer cần biết

Nếu bạn là developer thì chắc chắn rằng bạn phải biết SQLServer ! (Hiện tại SQLServer đã có đến phiên bản SQLServer 2008). Tuy nhiên ứng với phiên bản SQLServer nào Microsoft đều đưa ra các store procedure hệ thống (System stored procedures)

>> Giới thiệu các hàm xử lý chuỗi trong SQL 2005 VÀ SQL 2008

>> Non-Relational (NoRel) là gì, kiến trúc, phân loại?

>>Giải pháp SESSION TIMEOUT trong ASP.NET

>>Danh sách bài tập thực hành

Bài viết này mình đề cập đến 5 store procedure hệ thống theo mình nghĩ là mỗi developer khi làm việc với SQLServer đều phải biết.

1. sp_help

a. Mục đích

Đây là store procedure hệ thống giúp bạn tra cứu nhanh về thông tin của các đối tượng (objects) có trong database. Như là: xem cấu trúc của 1 bảng, xem bảng này có phụ thuộc bảng nào, xem bảng này có Primary Key là Foregin Key của table nào, …..

b. Cú pháp

  • sp_help : để lấy tất cả các thông tin về tất cả các đối tượng trong Database
  • sp_help <tên của đối tượng> : để lấy tất cả các thông tin cụ thể của đối tượng (thông số tên đối tượng truyền vào) trong Database

c. Ví dụ

  • sp_help —> Khi đó bạn sẽ thấy giống màn hình sau:
  • sp_help ‘TB_TacGia’—> Khi cần lấy thông tin của table TB_TacGia trong Database: QuanLyThuVien.

2. sp_helptext

a. Mục đích

Đây là store procedure hệ thống giúp bạn tra cứu định nghĩa các đối tượng: store procedure hệ thống, store procedure do người dùng định nghĩa, hàm do người dùng định nghĩa, trigger, ….

b. Cú pháp

  • sp_helptext  <tên của đối tượng> : để lấy định nghĩa của đối tượng (thông số tên đối tượng truyền vào) trong Database

c. Ví dụ

  • sp_helptext ‘dbo.spTB_TacGia_TruyVan’: để lấy định nghĩa của store procedure do người dùng định nghĩa: spTB_TacGia_TruyVan trong Database: QuanLyThuVien. Khi đó bạn sẽ thấy màn hình như sau

Các Store procedure hệ thống mà developer cần biết

3. sp_MSforeachtable

a. Mục đích

Đây là store procedure hệ thống giúp bạn duyệt qua tất cả các table trong Database. Khi đó bạn dùng kí tự ? để làm kí tự đại diện cho table. Ví dụ cơ bản nhất khi dùng store procedure hệ thống này là đếm số dòng của tất cả các bảng trong Database

b. Cú pháp

  •  sp_MSforeachtable <Câu lệnh SQL> —> Câu lệnh SQL bắt buộc phải chứ kí tự ? làm kí tự đại diện cho tên table

c. Ví dụ

  •  sp_MSforeachtable ‘SELECT ”?”, COUNT(*) FROM ?’ : Đếm số dòng của tất cả các table trong Database: QuanLyThuVien. Khi đó bạn sẽ thấy màn hình như sau

 

4. sp_depends 

a. Mục đích

 Đây là store procedure hệ thống giúp bạn liệt kê các Views, store procedure do người dùng định nghĩa, hàm do người dùng định nghĩa, trigger, … có phụ thuộc vào tên đối tượng truyền vào

b. Cú pháp

  •  sp_depends <tên của đối tượng>  –> tìm các đối tượng khác có phụ thuộc với tên đối tượng được của thông số truyền vào

c. Ví dụ

  •  sp_depends ‘Person.Address’  -> tìm các đối tượng khác phụ thuộc vào table: TB_TacGia trong Database: QuanLyThuVien. Khi đó ta sẽ thấy như màn hình sau

5. sp_spaceused

a. Mục đích

 Đây là store procedure hệ thống giúp bạn lấy kích thước của Database hoặc kích thước của một đối tượng trong Database.

b. Cú pháp

  •  sp_spaceused —> lấy kích thước của Database (là Database mà ta đang thực thi store procedure hệ thống này)
  • sp_spaceused <tên của đối tượng> —> lấy kích thước của 1 đối tượng cụ thể được truyền vào từ thông số tên đối tượng

c. Ví dụ

  •  sp_spaceused —> lấy kích thước của Database: QuanLyThuVien . Khi đó bạn sẽ thấy màn hình như sau

sp_spaceused ‘Person.Address’ —> lấy kích thước của table: TB_TacGia trong Database: QuanLyThuVien Khi đó bạn sẽ thấy màn hình như sau

Và cuối cùng, bạn hãy thực hiện lệnh sau

sp_MSforeachtable ‘execute sp_spaceused @objname = ”?” ‘

Nó là sự kết hợp của 2 lệnh: sp_MSforeachtable, sp_spaceused mình vừa giới thiệu ở trên và cho biết nó làm mục đích gì ?

Chúc bạn thành công
Tags: 
Bạn thấy bài viết này như thế nào?: 
Average: 10 (1 vote)
Ảnh của Tommy Tran

Tommy Tran owner Express Magazine

Drupal Developer having 9+ year experience, implementation and having strong knowledge of technical specifications, workflow development. Ability to perform effectively and efficiently in team and individually. Always enthusiastic and interseted to study new technologies

  • Skype ID: tthanhthuy
  • Phone/Zalo: (+84) 944 225 212
  • WhatsApp: (+84) 944 225 212
  • Line Messenger: (+84) 944 225 212
  • Email: [email protected]
  • Telegram Messenger: https:/t.me/tommytran0401

Bình luận (0)

 

Add Comment

Plain text

  • No HTML tags allowed.
  • Các địa chỉ web và email sẽ tự động được chuyển sang dạng liên kết.
  • Tự động ngắt dòng và đoạn văn.
CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.
12 + 1 =
Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.

Quảng cáo việc làm

 

Thích hợp các bạn nữ mảng thợ may làm việc tại nước NGA

Đơn hàng Tuyển dụng 100 Thợ may đi Nga(đợt 1 tháng 3.2021, đợt 2 tháng 5.2021). Lương thực lãnh 800 USD, bao ăn ở, vé máy bay và visa, phí xuất cảnh(1800 USD)trả khi đi làm có lương. Bạn có thể liên hệ CÔNG TY qua Phone/Zalo: (+84) 944 225 212. Công ty sẽ tư vấn cho bạn.

Xem chi tiết: >>> https://bit.ly/3o9NOfR

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
Timeline Facebook thử nghiệm bố trí mới của ảnh cover

Timeline Facebook thử nghiệm bố trí mới của ảnh cover

Có vẻ như sắp tới giao diện Timeline của Facebook lại có chút thay đổi.

D8FTW: DIC Core Without Killing Kittens

D8FTW: DIC Core Without Killing Kittens

The upcoming Drupal 8 includes many changes large and small that will improve the lives of site builders, site owners, and developers. In a series we're calling, "D8FTW," we look at some of these improvements in more detail, including and especially the non-obvious ones.

Các cách để save a node in Drupal

Các cách để save a node in Drupal

Every day, millions of nodes are saved. It happens every time content is created, migrated, or updated. It's probably the most common content management task in Drupal.

BLOG POSTS

 

Wordpress Freelancer

 

Wordpress Freelancer