Cách check xem bảng dữ liệu có tồn tại trên SQL Server hay không – How to check if a Table exists in SQL Server

Cach check xem bang du lieu co ton tai tren SQL Server hay khong_MasterMOS Education
Trong quá trình làm việc với dữ liệu trong SQL Server, sẽ có những lúc bạn cần xóa bảng dữ liệu đi, sau đó tạo lại bảng dữ liệu đó. Thông thường, đó sẽ là những bảng dữ liệu tạm sinh ra để tính toán, dạng _tmp hoặc #Temp hoặc ##Temp. Làm thế nào để xác định xem bảng dữ liệu có đang thật sự tồn tại trong cơ sở dữ liệu, làm thế nào để xóa bảng dữ liệu mà không bị lỗi câu lệnh dẫn đến gián đoạn chương trình chạy dữ liệu. Bạn hãy cùng MasterMOS Education tìm hiểu trong bài viết sau nhé.
Chia sẻ bài viết này

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

Cách 1: Kiểm tra xem bảng dữ liệu có tồn tại hay không sử dụng OBJECT_ID

Trong cách làm này, chúng ta kiểm tra xem bảng dữ liệu trong SQL Server có tồn tại hay không bằng cách sử dụng OBJECT_ID. Câu lệnh ví dụ như sau:

USE [HOCSQL]

GO

IF OBJECT_ID(‘dbo.A_DuNo’, ‘U’) IS NOT NULL

BEGIN

  PRINT ‘Bang du lieu ton tai’

END

ELSE

BEGIN

PRINT ‘Bang du lieu khong ton tai’

END

Kết quả như ảnh dưới đây

Cach check xem bang du lieu co ton tai tren SQL Server hay khong_MasterMOS Education_1

Cách 2: Kiểm tra xem bảng dữ liệu có tồn tại hay không sử dụng mệnh đề EXISTS

Trong cách làm này, chúng ta kiểm tra xem bảng dữ liệu trong SQL Server có tồn tại hay không bằng cách sử EXISTS. Câu lệnh ví dụ như sau:

 

USE [SQLTEST]

GO

IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.TABLES

           WHERE TABLE_NAME = N’Employees’)

BEGIN

  PRINT ‘Table Exists in SQL Test Database’

END

ELSE

BEGIN

PRINT ‘Table Does not Exists’

END

 

Kết quả như ảnh dưới đây

Cach check xem bang du lieu co ton tai tren SQL Server hay khong_MasterMOS Education_2

Cách 3: Sử dụng EXISTS với phiên bản SQL Server từ 2016 trở lên

Ví dụ: Muốn xóa 1 bảng dữ liệu mà bạn không biết chắc là nó có tồn tại hay không tồn tại trong cơ sở dữ liệu, bạn có thể dùng câu lệnh sau, với phiên bản SQL Server 2016 trở lên.

DROP TABLE IF EXISTS HOCSQL.dbo.A_DuNo1

Nếu không dùng IF mà bảng dữ liệu không tồn tại thì SQL Server sẽ báo lỗi.

Kết quả như ảnh dưới đây

Cach check xem bang du lieu co ton tai tren SQL Server hay khong_MasterMOS Education_3

Tham dự Nhóm thảo luận về Nghề Phân tích Dữ liệu tại https://www.fb.com/groups/ngheda

Tham dự Nhóm thảo luận về Tin học văn phòng tại https://www.fb.com/groups/mastermosvn

Tham dự Cộng đồng học viên MasterMOS tại https://www.fb.com/groups/congdonghocvienmastermos

Website MasterMOS : https://m.edu.vn  | Facebook: https://www.fb.com/NgocChienCN

Hotline/Zalo: 086 680 2624

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://m.edu.vn/ccgv

  • Anh có 12 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 80 lớp OFFLINE/ZOOM, và hàng nghìn học viên trên hệ thống ONLINE UB.NET. Chi tiết hình ảnh các lớp học tại link https://m.edu.vn/ahv

  • Các đơn vị tiêu biểu anh đã đào tạo: các ngân hàng VCB, MBB, LienVietPostBank, NCB, OCB,  công ty viễn thông Viettel Hà Nội, công ty tài chính MCredit, công ty chứng khoán SSI, công ty dược phẩm Delta…

  • 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 hiện là giám đốc 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

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é :)