Tôi có một quy trình được lưu giữ lấy tham số đầu vào @CategoryKeys varchar
và phân tích nội dung của nó thành bảng tạm thời, #CategoryKeys
.Cách chuyển bảng tạm thời thành tham số thành một thủ tục được lưu riêng biệt
-- create the needed temp table.
CREATE TABLE #CategoryKeys
(
CategoryKey SMALLINT
);
-- fill the temp table if necessary
IF Len(rtrim(ltrim(@CategoryKeys))) > 0
BEGIN
INSERT INTO #CategoryKeys
(CategoryKey)
SELECT value
FROM dbo.String_To_SmallInt_Table(@CategoryKeys, ',');
END
Nếu bảng tạm thời có hàng, tôi muốn chuyển bảng vào một quy trình được lưu trữ riêng. Làm thế nào tôi sẽ đi về việc tạo một tham số trong thủ tục riêng biệt để giữ bảng tạm thời?
Thay vì đi qua một danh sách bằng dấu phẩy ở nơi đầu tiên, bạn có nghĩ về việc sử dụng [thông số bảng giá trị] (http://technet.microsoft.com /en-us/library/bb510489.aspx)? Bạn cũng đã đọc [bài viết này] (http://www.sommarskog.se/share_data.html) chưa? –
Hoặc XML, vì SQL Server cung cấp hỗ trợ cho kiểu dữ liệu XML ... –