Thursday , 26 December 2024
HOT

My Blog

Sự khác nhau giữa delete và truncate

SQL Server cung cấp 2 phương pháp để xóa dữ liệu, DELETE và TRUNCATE. Cú pháp của hai lệnh này như sau: DELETE DELETE dbo.Tblxxx WHERE... hoặc DELETE a FROM dbo.Tblxxx a WHERE... Khi cần xóa dữ liệu với điều kiện liên quan đến bảng khác: DELETE a FROM dbo.Tblxxx a JOIN dbo.Tblyyy b ON a.Col1 = b.Col1 hoặc: DELETE ... Read More »

Lợi ích của index trong sql server

Index là phương tiện rất mạnh để tăng hiệu năng thực hiện của câu lệnh. Bài post này sẽ cung cấp một ví dụ cho bạn thấy bên trong SQL Server sử dụng index để  tăng hiệu năng như thế nào. Ở đây tôi dùng database AdventureWork là database mẫu đi kèm với SQL Server (bạn có thể dowload database ... Read More »

Sử dụng index trong sql server một cách hiệu quả

Trong một câu lệnh SQL, một điều kiện tìm kiếm ở mệnh đề WHERE được gọi là sargable (viết tắt từ Search Argument-Able) nếu index có thể được sử dụng khi thực hiện câu lệnh (giả sử cột tương ứng có index). Ví dụ, với câu lệnh sau: SELECT * FROM dbo.Customer WHERE CustomerID = 1234 thì điều kiện “CustomerID ... Read More »

Reset identity trong sql server

Khi bạn TRUNCATE bảng, trường IDENTITY sẽ được reset trở về giá trị ban đầu (khi tạo bảng). Tuy nhiên có những trường hợp bạn không thể dùng TRUNCATE . Ví dụ bạn muốn đặt lại giá trị của trường IDENTITY trong bảng dbo.TableName về 1, bạn có thể dùng lệnh này: DBCC CHECKIDENT ('dbo.TableName', RESEED, 1) Read More »

Giảm dung lượng file log của SQL Server

Vào một ngày đẹp trời, bạn nhận thấy rằng file LOG của mình quá lớn, chiếm gần hết ổ cứng và không thể thực hiện bất kì một thao tác nào trên dữ liệu. Hay bạn thấy, trong khi dữ liệu của mình chỉ có vài GB, mà file LOG lên đến tận hàng trăm GB. Phải làm thế nào ... Read More »

ROW_NUMBER trong sql server

Hàm ROW_NUMBER được đưa vào từ bản 2005, dùng để trả về một con số tuần tự gắn với mỗi bản ghi (do đó có tên như vậy, số của bản ghi). Hàm này giúp giải quyết một số bài toán dễ dàng hơn. Bài viết này giới thiệu hai ứng dụng của hàm ROW_NUMBER, nếu bạn có sử dụng ... Read More »

Các Loại Ràng Buộc Trong SQL Server

Ràng buộc trong SQL Server được dùng để duy trì tính nhất quán của dữ liệu, đảm bảo dữ liệu phù hợp với các qui định theo yêu cầu của bài toán. Ví dụ một database về bán hàng đòi hỏi mỗi bản ghi phải có ID sản phẩm hợp lệ, số lượng bán phải là một số nguyên và ... Read More »

Tạo Linked Server trong sql server

Linked Server là cơ chế cho phép kết nối từ một SQL Server tới một database server khác (có thể là SQL Server hoặc các hệ thống khác). Nó giúp việc truy vấn hoặc cập nhật dữ liệu từ một server ở xa rất thuận tiện. Tạo Linked server Để tạo linked server, trong Management Studtio 2008 bạn mở rộng ... Read More »

Thống kê trong sql server bằng pivot table

Trong quá trình lấy số liệu, thiết lập bảng biểu và báo cáo, một trường hợp thường gặp là bạn phải hiển thị dữ liệu từ dạng dòng chuyển thành cột. Kiểu truy vấn như vậy gọi là Crosstab-Query. Từ phiên bản SQL Server 2000 trở về trước, không có một lệnh nào trực tiếp hỗ trợ việc truy xuất ... Read More »

Các Loại JOIN Trong SQL Server

JOIN là phép kết nối dữ liệu từ nhiều bảng lại với nhau. Khi bạn cần truy vấn các cột dữ liệu từ nhiều bảng khác nhau để trả về trong cùng một tập kết quả, bạn cần dùng JOIN. Đây có lẽ là chức năng được dùng nhiều nhất khi lập trình T-SQL. Nó giúp tái hiện lại thông ... Read More »