Tôi đang thực hiện một thủ tục được lưu trữ thông qua kết nối JDBC tiêu chuẩn bằng cách sử dụng MS SQL Driver phiên bản 3.0.Các bảng tạm thời sử dụng JDBC với null ResultSet
Tôi thấy rằng khi tôi tạo và chèn dữ liệu vào bảng tạm thời, quy trình được lưu trữ không thực thi đúng cách.
Mã Java sẽ không ném ngoại lệ, nhưng javax.sql.ResultSet
sẽ là null
.
Mấu chốt của sự thất bại trong thủ tục lưu trữ là khi tôi bỏ bình luận các INSERT INTO #TBL CLM_NAME VALUES('VAL')
Khi tôi thực hiện báo cáo kết quả sử dụng SQL Studio Manager nó thực thi mà không gặp rắc rối và các dữ liệu như mong đợi.
Có ai biết điều này hay không biết tại sao lại là trường hợp này?
Ban đầu tôi nghĩ vì trình điều khiển SQL và tôi vẫn nghĩ đó là?
Cảm ơn.
Bạn có thể đảm bảo rằng bạn đang tạo và tải bảng tạm thời và đọc từ tất cả trong cùng một kết nối không? – CoolBeans
Có, bảng tạm thời được tạo từ thủ tục lưu sẵn mà tôi đã tạo. Tôi chỉ gọi thủ tục lưu sẵn từ mã Java, ví dụ connect.executeQuery ("{procName (?)}"). – Koekiebox
Lệnh 'INSERT' vi phạm có nằm trong cùng thủ tục lưu trữ tạo bảng tạm thời không? –