Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 50 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
50
Dung lượng
3,59 MB
Nội dung
CảitiếntronglệnhT-SQLcủaSQLServer2008CảitiếntronglệnhT-SQLcủa SQL Server2008SQLServer2008 được tích hợp nhiều tính năng mới đáng chú ý. Một trong số những tính năng này là những cảitiếntrong câu lệnhT-SQL giúp giảm thời gian làm việc với những câu lệnh này. Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com Trong phần đầu tiêncủa loạt bài viết này chúng ta sẽ tìm hiểu một số cảitiếncủa T-SQL. Cảitiếntrong Intellisense (trình cảm ứng thông minh) Với những cảicủa Intellisense giờ đây người dùng có thể lưu dữ liệu, tìm những thông tin cần thiết, chèn trực tiếp các thành phần ngôn ngữ T-SQL vào mã và trình cảm ứng thông minh này có thể giúp rút ngắn thời gian nhập lệnh từ bàn phím. Chức năng này có thể rút ngắn thời gian phát triển phần mềm nhờ làm giảm thời gian thao tác với bàn phím đồng thời giảm thiểu những tham chiếu tới những tài liệu ngoài. Những cảitiếncủa Intellisense bao gồm vùng ngôn ngữ T-SQL được mở rộng và tích hợp một hệ thống mầu sắc. Tính năng này hoạt động giống như tính năng kiểm Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com tra cú pháp tự động trong Visual Studio. Khi nhập lệnhT-SQL nó sẽ tự động hoàn thiện cú pháp cho lệnh, và cho các đối tượng trong cơ sở dữ liệu, dù các biến đã được khai báo trước đó. Người dùng có thể có thể lựa chọn sử dụng tính năng này hoặc tắt bỏ nó nếu thấy không cần thiết. Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com Cảitiếntrong cú pháp lệnhT-SQLTrongSQLServer 2008, cú pháp củalệnhT-SQL có ba cảitiến chính sau đây: 1. Khởi tạo biến cùng thời điểm khai báo. Giờ đây người dùng có thể khởi tạo biến ngay khi khai báo thay vì sử dụng hai lệnh riêng biệt là DECLARE và SET như trước đây. Nó có thể làm việc với hầu hết các kiểu dữ liệu bao gồm kiểu dữ liệu SQLCLR, nhưng sẽ không làm việc với kiểu dữ liệu TEXT, NTEXT hay IMAGE. 2. Compound Operators. Compound Operators (toán tử kết hợp) là dạng toán tử giống như trong C++ và C#. Chúng thực thi một số thao tác và cài đặt một giá trị gốc cho kết quả của thao tác. Chúng giúp tránh một số lỗi và cho phép viết tắt khi làm việc với code. Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com Ngoài ra toán tử này có thể sử dụng trong mệnh đề SET củalệnh UPDATE. Dưới đây là danh sách các toán tử được hỗ trợ trongSQLServer 2008: += Add and assign -= Subtract and assign *= Multiply and assign /= Divide and assign %= Modulo and assign &= Bitwise AND and assign ^= Bitwise XOR and assign Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com |= Bitwise OR and assign Ví dụ: 3. Row Constructor. T-SQL được cảitiến cho phép chèn nhiều giá trị bằng một lệnh INSERT duy nhất. Điều đó có nghĩa là người dùng có thể đưa nhiều thuộc tính hàng vào trong mệnh đề VALUE. Ví dụ: Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com Những cảitiếntrong thành phần phụ thuộc của đối tượng Những cảitiếntrong những thành phần phụ thuộc của đối tượng giúp cung cấp những thông tin đáng tin cậy của nhiều thành phần phụ thuộc giữa các đối Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com tượng thông qua view catalog mới được giới thiệu và các chức năng quản lý động. Những thông tin của thành phần phụ thuộc luôn được cập nhật cho phạm vi lược đồ đối tượng(nơi đối tượng A không thể bị xóa do đối tượng B phụ thuộc vào nó) và ngoài lược đồ đối tượng (nơi đối tượng A có thể bị xóa hoặc thậm chí không thể được tạo tuy nhiên đối tượng B vẫn phụ thuộc vào nó). Những thành phần phụ thuộc được kiểm tra cho các thủ tục lưu, bảng biểu, view, chức năng, trigger, kiểu người dùng định nghĩa, tập hợp lược đồ XML, … SQLServer2008 giới thiệu ba đối tượng mới cung cấp những thông tin thành phần phụ thuộc của đối tượng, bao gồm: 1. sys.sql_expression_dependenciescatalog view: Hiển thị tên các thành phần phụ thuộc của đối tượng. Nó bao gồm một bản ghi cho mỗi thành phần phụ Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com thuộc trên đối tượng do người dùng định nghĩa trong cơ sở dữ liệu hiện thời. 2. sys.dm_sql_referenced_entitiesDMF: Cung cấp nọi thực thể mà thực thể nhập phụ thuộc vào, trả về một hàng cho mỗi đối tượng được người dùng định nghĩa quy chiếu theo tên trong định nghĩa của thực thể tham chiếu được chỉ định. 3. sys.dm_sql_referencing_entitiesDMF: Cung cấp mọi đối tượng phụ thuộc vào thực thể nhập, nó sẽ trả về một bản ghi cho mội đối tượng được người dùng định nghĩa trong cơ sở dữ liệu hiện tại được tham chiếu theo tên của một đối tượng khác được cũng được người dùng định nghĩa. Có hai phương pháp người dùng có thể sử dụng để xem những đối tượng phụ thuộc đó là sử dụng SSMS Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com (phải chuột lên đối tượng rồi chọn View Dependencies) hay bằng cách viết những truy vấn theo view và DMF vừa kể ra ở trên. Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com [...]... liệu được giới thiệu trongSQLServer2008Trong phần trước chúng ta đã tìm hiểu một số cảitiếntrong câu lệnh T -SQL củaSQLServer 2008, gồm IntelliSense, Grouping Set, bảng gợi ý FORCESEEK, … Trong phần này chúng ta sẽ tiếp tục tìm hiểu những kiểu dữ liệu mới được giới thiêu trong SQL Server2008 Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com SQL Server2008 đã giới thiệu... kết quả được tạo bởi một UNION ALL của nhiều mệnh đề GROUP BY đơn vì mệnh đề GROUP BY chỉ có tác dụng khi kết hợp Kết luận Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com Trong phần đầu này chúng ta đã tìm hiểu một số cảitiếntrong câu lệnh T -SQL trongSQLServer2008 hỗ trợ cho quá trình làm việc của các nhà lập trình Trong phần tiếp theo của loạt bìa viết này chúng ta sẽ... http://www.simpopdf.com FORCESEEK áp dụng cho các thao tác tìm kiểm chỉ mục theo nhóm và không theo nhóm Nó có thể được chỉ định cho mọi bảng hay view trong mệnh đề FROM củalệnh STATEMENT và trong mệnh đề FROM củalệnh UPDATE hay DELETE Lưu ý: Do Query Optimizer củaSQLServer chỉ lựa chọn Plan thực thi tốt nhất cho một truy vấn nên Microsoft đề xuất rằng các nhà phát triển có kinh nghiệm và các quản... không thể sử dụng như một cột trong bản, định dạng bảng không thể thay đổi sau khi đã được tạo, một giá trị mặc định không thể được chỉ định trong định dạng Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com của UDTP, … 2 SQLServer không duy trì thống kê các cột của TVP 3 TVP phải được chuyển như những tham số READONLY nhập vào sang những lệnh T -SQL Chúng ta không thể thực hiện... giúp mở rộng đối tượng làm việc và cảitiến khả năng thực thi củaSQLServer Ví dụ, kiểu UserDefined Table (bảng do người dùng định nghĩa) và Table-Valued Parameter cho phép người dùng đưa một nhóm kết quả vào một thủ tục và lưu nhiều giá trị trả về lên máy chủ, trong khi kiểu dữ liệu Date và Time có thể giúp tiết kiệm tài nguyên bộ nhớ vì chiếm dụng ít bộ nhớ hơn trong trường hợp người dùng chỉ cần... vụ DML như UPDATE (cập nhật), DELETE (xóa), hay INSERT (chèn) trên một TVP trong phần chính củalệnh Nếu cần phải thay đổi dữ liệu được chuyển tới một thủ tục lưu trữ hay lệnh biểu hiện tham số trong TVP thì chúng ta phải chèn dữ liệu đó vào một bảng tạm thời bay một biến của bảng Ngoài ra, chúng ta không thể sử dụng các biến của bảng như các tham số OUTPUT (kết xuất), mà chỉ có thể sử dụng như các... với biến của UDTT vì biến này sẽ tự động vượt quá phạm vi khi bảng được tạo Chuyển tác TVP bằng ứng dụng NET Trước tiên chúng ta cần cài đặt phần mềm NET Framework 3.5, phần mềm này cung cấp một kiểu cơ sở dữ liệu SQL mới được gọi là Structure bên trong vùng tên System.Data.SQLClient Đảm bảo rằng DataTable mà chúng ta tạo trong ứng dụng NET phù hợp với lược đồ của UDTT, nói cách khác thì tên của cột,... dụng SQLServer Management Studio (SSMS) để xem các bảng người dùng định nghĩa đã được tạo trong một cơ sở dữ liệu, truy cập vào node User-Defined Table Types trong node Types cửa bảng Object Explorer Sau đó tạo một thủ tục lưu trữ để chuyển tác biến của UDTT như một TVP Cần nhớ quy tắc phạm vi cho Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com một biến được áp dụng trong. .. sang một thủ tục hay lệnh Thao tác này yêu cầu thủ tục hay lệnh đó phải có logic cần thiết cho việc tháo nhóm những giá trị và làm cho những cấu trúc dữ liệu có hiệu lực, sau đó tiến hành chèn các bản ghi Quá nhiều thao tác cần thực hiện nhưng lại không tối ưu, trong trường hợp này chúng ta có thể sử dụng TVP để chuyển một bảng dữ liệu gồm nhiều bản ghi từ ứng dụng NET sang SQLServer và chèn trực tiếp... với chúng Trong phần này chúng ta sẽ tập trung tìm hiểu hai kiểu dữ liệu này, về phạm vi sử dụng và khả năng ứng dụng User-Defined Table Type (UDTT) và Table-Value Parameter (TVP) Với SQL Server2008 chúng ta có thể tạo một UDTT (kiểu bảng do người dùng định nghĩa) theo định Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com nghĩa cấu trúc bảng Để đảm bảo rằng mọi dữ liệu trong UDTT . Cải tiến trong lệnh T -SQL của SQL Server 2008 Cải tiến trong lệnh T -SQL của SQL Server 2008 SQL Server 2008 được tích hợp nhiều tính năng mới đáng chú ý. Một trong số những. Unregistered Version - http://www.simpopdf.com Cải tiến trong cú pháp lệnh T -SQL Trong SQL Server 2008, cú pháp của lệnh T -SQL có ba cải tiến chính sau đây: 1. Khởi tạo biến cùng thời. loạt bài viết này chúng ta sẽ tìm hiểu một số cải tiến của T -SQL. Cải tiến trong Intellisense (trình cảm ứng thông minh) Với những cải của Intellisense giờ đây người dùng có thể lưu