PDA

View Full Version : Hỏi: Khi nào sử dụng bảng tạm và view?



nth4
30-01-2009, 10:29 PM
Cho mình hỏi khi nào thì sử dụng bảng tạm và view, và sự khác nhau giữa chúng?

Trước giờ mình toàn truy vấn trực tiếp không hà.

Cảm ơn các bạn đã quan tâm!

comeonbaby
30-01-2009, 11:29 PM
Chưa nghe thấy từ bảng tạm bao giờ còn view thì là bảng mà ta truy vấn trong bảng thực rồi đưa vào đó, nó tồn tại cùng với db nhưng có điểm khác biệt là các website về bảo mật cho chúng ta truy vấn dữ liệu trên view chứ không request thẳng vào db của họ. Nó không insert dữ liệu vào được. Khái quát là như thế.

huynguyen
31-01-2009, 01:18 PM
Bảng tạm là khái niệm ở trong database á, cho phép chúng ta tạo 1 table tạm trong đó từ 1 câu lệnh select nào đó, sau đó mọi truy vấn bên ngoài là truy vấn trên bảng tạm này. Dùng bảng tạm khi cần phân trang dữ liệu (vì MSSQL ko có cách nào lấy từng phân đoạn trong table ra nên phải dùng bảng tạm và thêm vào cột stt để mỗi lần lấy thì mình lấy theo top, đại khái là thế)

darkan
31-01-2009, 01:53 PM
Tự túc là hạnh phúc (:P)

http://searchsqlserver.techtarget.com/tip/0,289483,sid87_gci1267047_mem1,00.html?ShortReg=1&mboxConv=searchSQLServer_RegActivate_Submit&

Devilic
03-02-2009, 01:55 PM
Cho mình hỏi khi nào thì sử dụng bảng tạm và view, và sự khác nhau giữa chúng?

Trước giờ mình toàn truy vấn trực tiếp không hà.

Cảm ơn các bạn đã quan tâm!

Ví dụ bạn có câu truy vấn SELECT ... From .... được 1 kết quả trả về dưới dạng bảng.

Nhưng có thể kq này ko phải là kq cuối cùng mà bạn mong muốn. Còn phải qua một số bước update, insert hay select gì nữa mới ra kq cuối cùng.

Vậy mới có khái niệm biến bảng hoặc bảng tạm ( table variable và temp table ). Biến bảng hoặc bảng tạm sẽ dc sử dụng để lưu trữ các thông tin mà bạn muốn.

Bảng tạm thì khai báo có dấu # đằng trước.
VD Create Table #TempTable1
Bảng tự DROP khi kết thúc connect tới SQL Server
Hay dùng cho các ứng dụng có nhiều người truy xuất, tránh xung đột

Link của Darkan là so sánh Biến bảng và bảng tạm, khái niệm và cách sử dụng, tối ưu truy vấn.

View thì comeonbaby đã nói rồi. View thì bảo mật cao hơn, và cho phép ng sử dụng truy xuất những trường dc phép chứ ko phải toàn bộ.

Và tóm lại thì tự tìm hiểu vẫn là hiệu quả nhất

nth4
03-02-2009, 01:59 PM
Cảm ơn các bạn đã hướng dẫn