Announcement

Collapse
No announcement yet.

Cách kiểm tra bảng trong csdl có tồn tại hay không?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • [C#] Cách kiểm tra bảng trong csdl có tồn tại hay không?

    Mình đang làm về tồn kho như sau:
    Trên form tồn kho có 2 nút lệnh xem, lưu và 2 combobox để chọn tháng và năm.
    Ví dụ mình chọn tháng 12 năm 2012. Khi bấm nút xem thì dữ liệu tồn kho của tháng 12/2012 được hiện lên datagridview.(cái này mình đã làm được)
    Khi bấm nút lưu thì lưu dữ liệu tồn kho của tháng 12/2012 vào csdl, mình muốn làm thế này nhưng chưa bik cách nào để làm mong mọi người góp ý dùm mình với:
    B1: kiểm tra xem trong csdl có bảng tonkhoT12_2012 chưa? nếu có thì làm bước 2 ngược lại làm bước 3( bước này mình chưa làm được mong giúp đỡ)
    B2: update dữ liệu tồn kho trên datagridview vào bảng tonkhoT12_2012(bước này mình làm được)
    B3: Thông báo bảng tonkhoT12_2012 không tồn tại hỏi họ có muốn tạo bảng tonkhoT12_2012 ko? nếu có tạo bảng tonkhoT12_2012 trong csdl, tạo xong thông báo thành công và hỏi họ có muốn lưu dữ liệu không?nếu có thì insert dữ liệu trên datagridview vào bảng tonkhoT12_2012( cái này lệnh thì mình viết được nhưng sắp xếp mấy cái IF sao cho hợp lý thì mình chưa làm được)
    Mọi người giúp mình cái kiểm tra xem bảng có tồn tại hay không và cách sắp xếp mấy cái IF với!!
    Cảm ơn nhiều!!

  • #2
    Câu hỏi bất chợt: Sao không lưu tất cả dữ liệu vào 1 bảng, có thêm cột ngày tháng cho dễ quản lý mà phải tạo mỗi tháng 1 bảng?
    - Muốn làm cho dễ thì tạo 1 cái bảng chứa dữ liệu cho biết trong database đã có bảng dữ liệu đến tháng mấy rồi, nếu thiếu thì thêm vào. Còn cách nữa là dùng SQL để truy vấn ra xem đối tượng bảng như tên mình cần đã được tạo ra hay chưa (cách kiểm tra thì bạn có thể tra trên google, dùng sys.objects hoặc là INFORMATION_SCHEMA hay sao á).
    Chưa....

    Comment


    • #3
      Muốn biết có bảng nào đó hay không thì dùng system.objects nha bạn. Nó là 1 bảng và bạn có thể truy vấn nó với type="TT" cùng với tên table.
      Xem thêm ở http://msdn.microsoft.com/en-us/library/ms190324.aspx
      Waiting for the day my nickname get painted black and underlined ...!

      Comment


      • #4
        Giờ mình truy vấn
        Code:
        SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES
        thì nó cho ra tất cả các bảng trong database của mình!! Giờ làm sao để so sánh tên bảng trong database với tên bảng mình cần so sánh (code trong C# đó)

        Comment


        • #5
          Originally posted by betapcode
          her her kho' wa' hok bjk lun , minh` chi? gop' y' la` bn ne^n hoc stored procedure vs trigger trong sql rui` hay~ hoi? tjp nhe' , kien thuc can bn? sql con chua nam' ro~ thi code C# cung~ chua dc dau .:sogood:
          Thế bạn nghĩ kiến thức căn bản sql thì phải như thế nào thì đc gọi là đã nắm rõ!! Hỏi 1 câu thử xem ?:doubt:

          Comment


          • #6
            Originally posted by haucanpop6590 View Post
            Mình đang làm về tồn kho như sau:
            Trên form tồn kho có 2 nút lệnh xem, lưu và 2 combobox để chọn tháng và năm.
            Ví dụ mình chọn tháng 12 năm 2012. Khi bấm nút xem thì dữ liệu tồn kho của tháng 12/2012 được hiện lên datagridview.(cái này mình đã làm được)
            Khi bấm nút lưu thì lưu dữ liệu tồn kho của tháng 12/2012 vào csdl, mình muốn làm thế này nhưng chưa bik cách nào để làm mong mọi người góp ý dùm mình với:
            B1: kiểm tra xem trong csdl có bảng tonkhoT12_2012 chưa? nếu có thì làm bước 2 ngược lại làm bước 3( bước này mình chưa làm được mong giúp đỡ)
            B2: update dữ liệu tồn kho trên datagridview vào bảng tonkhoT12_2012(bước này mình làm được)
            B3: Thông báo bảng tonkhoT12_2012 không tồn tại hỏi họ có muốn tạo bảng tonkhoT12_2012 ko? nếu có tạo bảng tonkhoT12_2012 trong csdl, tạo xong thông báo thành công và hỏi họ có muốn lưu dữ liệu không?nếu có thì insert dữ liệu trên datagridview vào bảng tonkhoT12_2012( cái này lệnh thì mình viết được nhưng sắp xếp mấy cái IF sao cho hợp lý thì mình chưa làm được)
            Mọi người giúp mình cái kiểm tra xem bảng có tồn tại hay không và cách sắp xếp mấy cái IF với!!
            Cảm ơn nhiều!!
            Lỗi thiết kế cơ sở dữ liệu

            Select * From ... Where Year(2012) And Month(12)

            Comment


            • #7
              Originally posted by 09520147 View Post
              Lỗi thiết kế cơ sở dữ liệu

              Select * From ... Where Year(2012) And Month(12)
              Vãi chưởng đọc ở đâu ra vô phán 1 câu xanh rờn thế!! Sai j mà sai người ta làm được rùi nek!! Có mún xem không :canny:

              Comment

              LHQC

              Collapse
              Working...
              X