tailieunhanh - Quản lý cơ sở dữ liệu với Microsoft SQL Server 2005 part 4
Tham khảo tài liệu 'quản lý cơ sở dữ liệu với microsoft sql server 2005 part 4', công nghệ thông tin, cơ sở dữ liệu phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả | Chương 4 - Các tính năng lập trình85 dùng bất kỳ trị khác sẽ làm tung ra một biệt lệ nhằm thông báo cho người gọi biết rằng kiểu dữ liệu MFType phải là M hay F . Rất giống như hàm hay thủ tục lưu trữ CLR sau khi mã đã hoàn chỉnh nó được biên dịch thành một DLL. DLL đó sau đó sẽ được nhập ở dạng một hợp ngữ SQL Server nhờ dùng câu lệnh CREATE ASSEMBLY hoặc tùy chọn Visual Studio 2005 Deploy Solution. Tùy chọn Visual Studio 2005 Deploy Solution tạo cã hợp ngữ và UDT. Để thêm UDT bằng tay vào một cơ sở dữ liệu bạn có thể dùng câu lệnh CREATE TYPE tương tự như sau CREATE TYPE MFType EXTERNAL NAME Giống như khi tạo các đối tượng cơ sở dữ liệu .NET khác từ khóa EXTERNAL NAME được sử dụng để chỉ định hợp ngữ và namespace cho UDT. Trong trường hợp này vì bản thân UDT được thực thi như là một lớp nên không có tên phương thức nào được yêu cầu. Trị của MyCLRDLL nhận biết hợp ngữ và trị của MFType nhận biết lớp của UDT. Để xem các UDT đã được tạo trong một cơ sở dữ liệu bạn có thể truy vấn khung xem như minh họa ở đây SELECT FROM Ngay khi UDT được tạo bạn có thể sử dụng nó trong T_SQL giô ng như các kiểu dữ liệu ghi chú của SQL Server. Tuy nhiên vì các ƯDT có chứa các phương thức và thuộc tính nên sẽ có những điểm khác biệt. Ví dụ sau đây minh họa cách MFType UDT có thể được sử dụng như là một biến và cách truy cập thuộc tính Value của nó DECLARE @mf MFType SET @ N PRINT @mtValue Trong danh sách này biến UDT được khai báo nhờ dùng câu lệnh T-SQL DECLARE chuẩn. Bạn có thể truy cập các thành viên của UDT bằng cách đặt ký hiệu . ở phía trước chúng. Trong danh sách này câu lệnh SET được sử dụng cố gán trị của N cho thuộc tính Value của UDT. Bởi vì N không phải là một trị hợp lệ nên lỗi sau đây được tạo ra Net SqlClient Data Provider. Msg 6522 Level 16 State 1 Line 2 A CLR error occurred during execution of MFType System. ArgumentException MFType data type must be M or F at SqlString .
đang nạp các trang xem trước