SSIS 2008. Nhiệm vụ rất đơn giản. Tôi muốn lấy một biến hệ thống và sử dụng nó trong một SQL INSERT. Tôi muốn lấy giá trị của System:MachineName
và sử dụng nó trong một câu lệnh chèn.Làm cách nào để chuyển giá trị biến hệ thống cho câu lệnh SQL trong thực thi SQL?
Sử dụng câu lệnh INSERT INTO MYLOG (COL1) SELECT @[System::MachineName]
cung cấp cho các lỗi Error: ..failed to parse. Must declare the scalar variable "@"
Sử dụng các báo cáo SELECT @System::MachineName
hoặc SELECT @@[System::MachineName]
cung cấp cho các lỗi 'Error Incorrect systax near '::'
Tôi không cố gắng để vượt qua một tham số để truy vấn. Tôi đã tìm kiếm một ngày rồi nhưng không thể tìm ra cách để làm điều này một cách đơn giản!
Câu trả lời hoàn hảo và được trình bày rất độc đáo. Tôi đã thử quá trình này trước đây, và nó không bao giờ làm việc. 'Lỗi' của tôi đã được đặt 'BypassPrepare' thành False, sau đó sử dụng 'Parse Query', luôn trả về một thông báo lỗi. Thiết lập 'Bypass Prepare' thành True chính là thủ thuật bí mật. Tôi nghi ngờ nó là một cái gì đó đơn giản và không tài liệu tốt. Cảm ơn Siva rất nhiều! 4 sao và một khuôn mặt cười cho bạn. – mroselius
Tôi vừa học được "dấu hỏi" nghĩa là gì và bây giờ điều này có ý nghĩa. Cảm ơn bạn về giải pháp toàn diện này. Ngoài ra, hình ảnh của bạn bị hỏng, vì vậy tôi đã xóa chúng. Vui lòng thêm lại chúng. – Vippy