SQL Server
SQL Server
Backblaze S3 Upload File
See more Backblaze S3 Examples
Demonstrates how to upload a file to a Backblaze bucket.The Chilkat S3 functions in the HTTP class are compatible with the Backblaze service. However, because of some specific issues, Chilkat v9.5.0.89 or later is needed.
Chilkat SQL Server Downloads
-- Important: See this note about string length limitations for strings returned by sp_OAMethod calls.
--
CREATE PROCEDURE ChilkatSample
AS
BEGIN
DECLARE @hr int
-- Important: Do not use nvarchar(max). See the warning about using nvarchar(max).
DECLARE @sTmp0 nvarchar(4000)
DECLARE @success int
SELECT @success = 0
-- This example assumes the Chilkat API to have been previously unlocked.
-- See Global Unlock Sample for sample code.
DECLARE @http int
EXEC @hr = sp_OACreate 'Chilkat.Http', @http OUT
IF @hr <> 0
BEGIN
PRINT 'Failed to create ActiveX component'
RETURN
END
-- keyID = Access Key ID or Access Key
EXEC sp_OASetProperty @http, 'AwsAccessKey', 'access-key'
-- applicationKey = Secret Access Key or Secret Key
EXEC sp_OASetProperty @http, 'AwsSecretKey', 'secret-key'
-- Region is the 2nd part of your S3 Endpoint
EXEC sp_OASetProperty @http, 'AwsEndpoint', 's3.us-west-002.backblazeb2.com'
DECLARE @bucketName nvarchar(4000)
SELECT @bucketName = 'chilkat-test'
DECLARE @objectName nvarchar(4000)
SELECT @objectName = 'seahorse.jpg'
DECLARE @localFilePath nvarchar(4000)
SELECT @localFilePath = 'qa_data/jpg/seahorse.jpg'
DECLARE @contentType nvarchar(4000)
SELECT @contentType = 'image/jpg'
EXEC sp_OASetProperty @http, 'KeepResponseBody', 1
EXEC sp_OAMethod @http, 'S3_UploadFile', @success OUT, @localFilePath, @contentType, @bucketName, @objectName
IF @success <> 1
BEGIN
EXEC sp_OAGetProperty @http, 'LastErrorText', @sTmp0 OUT
PRINT @sTmp0
DECLARE @xml int
EXEC @hr = sp_OACreate 'Chilkat.Xml', @xml OUT
EXEC sp_OAGetProperty @http, 'LastResponseBody', @sTmp0 OUT
EXEC sp_OAMethod @xml, 'LoadXml', @success OUT, @sTmp0
EXEC sp_OAMethod @xml, 'GetXml', @sTmp0 OUT
PRINT @sTmp0
END
ELSE
BEGIN
PRINT 'File uploaded.'
END
EXEC @hr = sp_OADestroy @http
EXEC @hr = sp_OADestroy @xml
END
GO