Lệnh kiểm tra xem table có tồn tại trong sql, trong database hay không

Thảo luận trong 'Kiến thức lập trình SQL & MySQL' bắt đầu bởi admin, 7/3/14.

  1. admin

    admin Phạm Công Sơn Thành viên BQT

    Tham gia ngày:
    22/5/13
    Bài viết:
    3,741
    Đã được thích:
    716
    Điểm thành tích:
    113
    Giới tính:
    Nam
    Lệnh kiểm tra xem table có tồn tại trong sql, trong database hay không
    Cấu trúc lệnh:
    Mã:
    IF  EXISTS(SELECT * FROM INFORMATION_SCHEMA.TABLES Where Table_Schema = '[Schema name]' AND Table_Name ='Tabel_Name')
    BEGIN
         --thuc thi lệnh
    END
    
    VD: kiểm tra table tb_SanPham có tồn tại hay chưa, nếu tồn tại rồi thì xóa table này đi thì bạn làm như sau
    Mã:
    IF  EXISTS(SELECT * FROM INFORMATION_SCHEMA.TABLES Where Table_Schema = 'dbo'  AND Table_Name ='tb_SanPham')
    BEGIN
         drop table tb_SanPham
    END
    
    Chúc các bạn làm thành công.
     
    Cảm ơn đã xem bài:

    Lệnh kiểm tra xem table có tồn tại trong sql, trong database hay không

    Last edited by a moderator: 28/1/16
    Đang tải...
  2. taibl89

    taibl89 Thành Viên Mới

    Tham gia ngày:
    27/1/16
    Bài viết:
    13
    Đã được thích:
    0
    Điểm thành tích:
    1
    Giới tính:
    Nam
    Không biết admin cho em xin code kiểm tra table có tồn tại hay không trong C# không em đang cần cái này!
     
  3. phamcongson

    phamcongson

    Police

    Tham gia ngày:
    3/6/13
    Bài viết:
    481
    Đã được thích:
    97
    Điểm thành tích:
    28
    Giới tính:
    Nam
    VD: Có rất nhiều cách để kiểm tra bạn nhé, mình chỉ bạn 1 cách vô cùng đơn giản như sau
    Mã:
    //code trong stored procedure trong SQL hoặc bạn select trực tiếp.
    // Bạn sẽ truyền vào code 1 giá trị mang tên table cần tìm VD: @CheckTable
    IF  EXISTS(SELECT * FROM INFORMATION_SCHEMA.TABLES Where Table_Schema = 'dbo'  AND Table_Name =@CheckTable)
        BEGIN
             // nếu table tổn tại bạn trả về 1 giá trị nào đó VD: @return
             // hoặc cách đơn giản hơn bạn select giá trị là số bao nhiêu đó để khi lấy ra ở C# bạn hiểu, vd giống code tiếp
             select '1' as giatri //bảng tồn tại
        END
    ELSE
       BEGIN
              select '1' as giatri  // bảng không tồn tại
       END
    
    • Tiếp theo trong code #C bạn lấy giá trị ra.
    Mã:
    ...
    
    Kết nối cơ sở dữ liệu
    ....
    DataTable tbl = ds.Tables["BangKiemTra"];
    DataRow dr = tbl.Rows[0];
    if(dr[giatri]=='1')
    {
        //bảng tồn tại
    }
    else
    {
       //bảng không tồn tại
    }
    
    Còn nhiều cách đơn giản hơn, nhưng sợ chỉ bạn không hiểu code, còn cái trên là cách đơn giản mà ai học stored procedure trong sql cũng hiểu và làm được.
     
    taibl89 thích bài này.
  4. taibl89

    taibl89 Thành Viên Mới

    Tham gia ngày:
    27/1/16
    Bài viết:
    13
    Đã được thích:
    0
    Điểm thành tích:
    1
    Giới tính:
    Nam
    Cám ớn bạn nhiều, mình sẽ tìm hiểu áp dụng. Mà không biết bạn biết về ghi dữ liệu ra XML không, mình xem trên forum mà không thấy chuyên mục này
     
  5. admin

    admin Phạm Công Sơn Thành viên BQT

    Tham gia ngày:
    22/5/13
    Bài viết:
    3,741
    Đã được thích:
    716
    Điểm thành tích:
    113
    Giới tính:
    Nam
    Chỉnh sửa cuối: 30/1/16


Like và Share ủng hộ ITSEOVN