Với sự giúp đỡ của những người khác trên SO Tôi đã gõ lên một vài Bàn và Thủ tục lưu trữ, sáng nay, như tôi xa một lập trình viên DB.Quy trình này có được lưu trữ an toàn không? (hoặc bất kỳ equiv là trên SQL Server)
Liệu ai đó có thể quan tâm đến vấn đề này và cho tôi biết rằng nó có an toàn không? Tôi đoán đó có lẽ không phải là thuật ngữ mà các nhà phát triển DBAs/DB sử dụng nhưng tôi hy vọng bạn nhận được ý tưởng: về cơ bản, điều gì xảy ra nếu sp này đang thực thi và một cái khác xuất hiện cùng lúc? Người ta có thể can thiệp vào người kia không? Đây có phải là vấn đề trong SQL/SP không?
CREATE PROCEDURE [dbo].[usp_NewTicketNumber]
@ticketNumber int OUTPUT
AS
BEGIN
SET NOCOUNT ON;
INSERT INTO [TEST_Db42].[dbo].[TicketNumber]
([CreatedDateTime], [CreatedBy])
VALUES
(GETDATE(), SUSER_SNAME())
SELECT @ticketNumber = IDENT_CURRENT('[dbo].[TicketNumber]');
RETURN 0;
END
Tôi hoàn toàn đồng ý với câu trả lời của gbn, nhưng muốn thêm rằng bạn có thể dễ dàng tìm ra điều này - bạn chỉ có thể chạy thủ tục được lưu trữ đồng thời từ hai hoặc nhiều kết nối trong một lần mnay (> 1mln) và xem bản thân bạn. –