|
SQL Server Call HTTP URL เรียกใช้งาน URL Website จาก Stored Procedure |
SQL Server Call HTTP URL เรียกใช้งาน URL Website จาก Stored Procedure เทคนิคการใช้ SQL Server Call URL เรียกใช้งาน URL ของ Website จาก Stored Procedure ของ SQL Server สามารถประยุกต์การใช้งานกับ Function ต่างๆ เช่น การเรียกให้ URL ทำงานเมื่อ Stored Procedure ทำงานเสร็จ และประยุกต์กับการแจจ้งเตือนด้วยการตั้ง Job Schedule ได้
SQL Server Stored Procedure Call URL Website
ให้สร้าง Stored Procedure ดังนี้
Code
CREATE PROCEDURE [dbo].[HTTPWebRequest]( @sUrl VARCHAR(500))
AS
DECLARE @oObject INT;
DECLARE @oHr INT;
DECLARE @sMsg VARCHAR(255)
EXEC @oHr = sp_OACreate 'MSXML2.ServerXMLHttp', @oObject OUT
IF @oHr <> 0 BEGIN RAISERROR('sp_OACreate MSXML2.ServerXMLHttp.3.0 failed', 16,1) RETURN END
EXEC @oHr = sp_OAMethod @oObject, 'open', NULL, 'POST', @sUrl, False
IF @oHr <>0 BEGIN SET @sMsg = 'sp_OAMethod Open failed' GOTO EH END
EXEC @oHr = sp_OAMethod @oObject, 'setRequestHeader', NULL, 'Content-Type',
'application/x-www-form-urlencoded'
IF @oHr <>0 BEGIN SET @sMsg = 'sp_OAMethod setRequestHeader failed' GOTO EH END
EXEC @oHr = sp_OAMethod @oObject, SEND, NULL, ''
IF @oHr <> 0 BEGIN SET @sMsg = 'sp_OAMethod Send failed' GOTO EH END
EXEC @oHr = sp_OADestroy @oObject
RETURN;
EH:
EXEC @oHr = sp_OADestroy @oObject
RAISERROR(@sMsg, 16, 1)
RETURN;
ทดสอบการทำงาน
EXEC 'https://www.thaicreate.com/notify.php';
กรณีที่ Error
Error
Msg 15281, Level 16, State 1, Procedure sp_OACreate, Line 1
SQL Server blocked access to procedure 'sys.sp_OACreate' of component 'Ole Automation Procedures' because this component is turned off as part of the security configuration for this server. A system administrator can enable the use of 'Ole Automation Procedures' by using sp_configure. For more information about enabling 'Ole Automation Procedures', search for 'Ole Automation Procedures' in SQL Server Books Online.
Msg 15281, Level 16, State 1, Procedure sp_OAMethod, Line 1
SQL Server blocked access to procedure 'sys.sp_OAMethod' of component 'Ole Automation Procedures' because this component is turned off as part of the security configuration for this server. A system administrator can enable the use of 'Ole Automation Procedures' by using sp_configure. For more information about enabling 'Ole Automation Procedures', search for 'Ole Automation Procedures' in SQL Server Books Online.
Msg 15281, Level 16, State 1, Procedure sp_OAMethod, Line 1
SQL Server blocked access to procedure 'sys.sp_OAMethod' of component 'Ole Automation Procedures' because this component is turned off as part of the security configuration for this server. A system administrator can enable the use of 'Ole Automation Procedures' by using sp_configure. For more information about enabling 'Ole Automation Procedures', search for 'Ole Automation Procedures' in SQL Server Books Online.
Msg 15281, Level 16, State 1, Procedure sp_OAMethod, Line 1
SQL Server blocked access to procedure 'sys.sp_OAMethod' of component 'Ole Automation Procedures' because this component is turned off as part of the security configuration for this server. A system administrator can enable the use of 'Ole Automation Procedures' by using sp_configure. For more information about enabling 'Ole Automation Procedures', search for 'Ole Automation Procedures' in SQL Server Books Online.
Msg 15281, Level 16, State 1, Procedure sp_OADestroy, Line 1
SQL Server blocked access to procedure 'sys.sp_OADestroy' of component 'Ole Automation Procedures' because this component is turned off as part of the security configuration for this server. A system administrator can enable the use of 'Ole Automation Procedures' by using sp_configure. For more information about enabling 'Ole Automation Procedures', search for 'Ole Automation Procedures' in SQL Server Books Online.
SQL
sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'Ole Automation Procedures', 1;
GO
RECONFIGURE;
GO
ทดสอบการทำงานใหม่
ทำงานสำเร็จแล้ว
สามารถตั้ง Job Schedule ได้ เช่น
วิธีการสร้าง Job Schedule เพื่อเรียกใช้งาน
วิธีการสร้าง Job Schedule เพื่อเรียกใช้งาน
วิธีการสร้าง Job Schedule เพื่อเรียกใช้งาน
วิธีการสร้าง Job Schedule เพื่อเรียกใช้งาน
วิธีการสร้าง Job Schedule เพื่อเรียกใช้งาน
|
|
|
|
|
|