fbpx

Liệt kê các bảng, các cột, kiểu dữ liệu của cột trong SQL Server

Cach liet ke tat ca cac bang, cac cot, kieu du lieu cua cot trong SQL Server de xu ly, phan tich du lieu_MasterMOS Education
Hàng ngày khi làm việc, có những yêu cầu mà chúng ta phải biết đến tên cột, độ dài tối đa, loại dữ liệu và liệu giá trị null có được chấp nhận cho từng cột có trong Cơ sở dữ liệu mình đang sử dụng hay không. Và kèm theo đó sẽ luôn có 1 câu hỏi, đó là làm thế nào để có thể liệt kê được lại tất cả các cột có trong mỗi bảng trong 1 cơ sở dữ liệu mình đang làm việc mà không phải mở từng bảng một trong Microsoft SQL Server Management Studio (SSMS) và sau đó ghi lại từng cột riêng lẻ ra Microsoft Excel. Các bạn hãy cùng MasterMOS Education tìm ra cách giải quyết bài toán đó qua bài viết này nhé.
Chia sẻ bài viết này

Mục lục bài viết

Giải pháp thực hiện

Hệ quản trị cơ sở dữ liệu SQL Server cung cấp cho người dùng 1 số danh mục rất hữu ích:

  • sys.tables
  • sys.all_columns
  • sys.types

sys.tables: Mỗi 1 bảng dữ liệu sẽ được hiển thị bằng dòng. Tại danh mục này sẽ cung cấp cho chúng ta biết các thông tin cơ bản nhất về 1 bảng dữ liệu. Như name (Tên bảng dữ liệu) , object_id (id của bảng dữ liệu), create_date (thời gian tạo ra bảng dữ liệu), modify_date (thời gian cuối chỉnh sửa bảng dữ liệu),…

sys.all_columns Tại đây sẽ liệt kê các bảng dữ liệu và từng cột tương ứng của bảng dữ liệu. Bao gồm các thông tin như: object_id(id của bảng dữ liệu) , name (Tên cột trong bảng dữ liệu), max_length (độ dài tối đa của bảng dữ liệu), is_nullable(có được phép null không),…

 

sys.types  Tại bảng dữ liệu này sẽ lưu trữ thông tin về định nghĩa các dạng lưu trữ, bao gồm: Name(tên kiểu dữ liệu), system_type_id, user_type_id (thông tin id về kiểu dữ liệu) , max_length (độ dài tối đa),…

 

Trong một hệ cơ sở dữ liệu chúng ta quản lý sẽ có rất nhiều Database khác nhau, chính vì thếkhi thực hiện truy vấn, kiểm tra thông tin chúng ta sẽ phải đặt trong đúng Database mà chúng ta muốn tìm kiếm.

Ví dụ minh họa

Chúng ta sẽ tìm kiếm tất cả các bảng dữ liệu có trong Database có tên HOCSQL 

 

USE HOCSQL;
SELECT OBJECT_SCHEMA_NAME(T.[object_id],DB_ID()) AS [Schema],
T.[name] AS [table_name], AC.[name] AS [column_name],
TY.[name] AS system_data_type, AC.[max_length],
AC.[precision], AC.[scale], AC.[is_nullable], AC.[is_ansi_padded]
FROM sys.[tables] AS T
INNER JOIN sys.[all_columns] AC ON T.[object_id] = AC.[object_id]
INNER JOIN sys.[types] TY ON AC.[system_type_id] = TY.[system_type_id] AND AC.[user_type_id] = TY.[user_type_id]
WHERE T.[is_ms_shipped] = 0
ORDER BY T.[name], AC.[column_id]

Cach liet ke tat ca cac bang, cac cot, kieu du lieu cua cot trong SQL Server de xu ly, phan tich du lieu_MasterMOS Education_2

Như vậy chúng ta đã nhìn thấy những thông tin cơ bản về các bảng dữ liệu đang có trong Database của mình, mà không cần phải show vào từng bảng. 

Bài viết này là một phần trong Series “Học SQL xử lý, phân tích dữ liệu cùng chuyên gia MasterMOS”. Bạn hãy vào click vào link để xem toàn bộ Series bài viết, dễ dàng làm chủ SQL để xử lý, phân tích dữ liệu lớn cùng chúng tôi nhé.

Tham dự Nhóm Học Phân tích dữ liệu cùng MasterMOS tại https://www.fb.com/groups/mastermosvn

Hotline: 086 680 2624 | Website: https://ptdl.vn  | Facebook: https://www.fb.com/mastermosvn 

Tác giả: Ngọc Chiến MasterMOS

  • Ngọc Chiến MasterMOS là chuyên gia đào tạo Phân tích dữ liệu và Tin học ứng dụng với các chứng chỉ Microsoft Technology Associate, Data Analyst Associate, MOS Master của Microsoft. Chi tiết chứng chỉ tại: https://ptdl.vn/ccgv

  • Anh có 15 năm kinh nghiệm trong lĩnh vực Digital Banking, Management Information System (MIS) – Business Intelligence (BI) – Data Analytics (DA) tại các ngân hàng, công ty hàng đầu Việt Nam.

  • Anh có kinh nghiệm đào tạo tại nhiều ngân hàng, công ty tài chính, chứng khoán, viễn thông lớn nhất Việt Nam với trên 12 lớp OFFLINE/ZOOM, và hàng nghìn học viên trên hệ thống ONLINE LMS.PTDL.VN. Chi tiết hình ảnh các lớp học tại link https://ptdl.vn/ahv

  • Các đơn vị tiêu biểu anh đã đào tạo:  Ngân hàng Vietcombank, BIDV, MB Bank, VIB, TPBank, LPBank, PVCombank, NCB, Oceanbank, công ty tài chính Mcredit, công ty chứng khoán SSI, công ty bảo hiểm MB Ageas Life, công ty viễn thông Viettel Hà Nội, công ty XNK Viettel Commerce, công ty VNPTNET, công ty chuỗi thực phẩm TH, công ty dược Lục tỉnh Delta, Hiệp hội ngân hàng Việt Nam VNBA, UBGroup và nhiều đối tác lớn khác…

  • Anh dày công xây dựng các khóa đào tạo để biến kiến thức tin học có tính kỹ thuật cao trở nên dễ tiếp thu. Anh được học viên yêu mến gọi là “Thầy dạy tin học ứng dụng dễ hiểu nhất Việt Nam“. Anh là Founder của MasterMOS Education.

ĐĂNG KÝ NHẬN THỦ THUẬT TIN HỌC
Chúng tôi sẽ gửi bạn Kiến thức cập nhật hàng tuần qua EMAIL/ZALO
Các bài viết liên quan
Ham VLOOKUP trong Excel, huong dan cach su dung - Anh bia - Ngoc Chien MasterMOS
Cách sử dụng các hàm tìm kiếm, tham chiếu
Hàm VLOOKUP trong Excel

Hàm VLOOKUP trong Excel tìm kiếm giá trị bạn chỉ định và trả về một giá trị phù hợp từ một cột khác, từ một vùng dữ liệu tham chiếu khác.

Lợi ích của SQL trong xử lý và phân tích dữ liệu lớn
Học SQL
Lợi ích của SQL trong xử lý và phân tích dữ liệu lớn

SQL được thiết kế để xử lý khối lượng dữ liệu lớn với hiệu suất cao. Với các hệ quản trị cơ sở dữ liệu như MySQL, PostgreSQL, SQL Server, và các hệ thống dữ liệu lớn như Hadoop, Spark SQL, SQL có thể truy vấn và phân tích hàng triệu, thậm chí hàng tỷ bản ghi dữ liệu chỉ trong vài giây

Cảm ơn bạn đã ghé thăm Website MasterMOS Education. Chúng tôi có quà tặng cho bạn, hãy đăng ký nhận nếu bạn thấy phù hợp nhé :)