Sample code for 30+ languages & platforms
SQL Server

Backblaze S3 Upload String

See more Backblaze S3 Examples

Demonstrates how to upload the contents of a string to an 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

SQL Server
-- 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 = 'orchard.json'
    DECLARE @contentType nvarchar(4000)
    SELECT @contentType = 'application/json'

    EXEC sp_OASetProperty @http, 'KeepResponseBody', 1

    -- Let's say we have JSON in a string and want to upload it to a file in Backblaze..
    DECLARE @jsonStr nvarchar(4000)
    SELECT @jsonStr = '{ "orchard": "apple" }'

    -- The charset indicates the byte representation of what is uploaded.
    -- If needed, Chilkat will internally convert to the desired byte representation before uploading.
    DECLARE @charset nvarchar(4000)
    SELECT @charset = 'utf-8'
    EXEC sp_OAMethod @http, 'S3_UploadString', @success OUT, @jsonStr, @charset, @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 'String uploaded.'
      END

    EXEC @hr = sp_OADestroy @http
    EXEC @hr = sp_OADestroy @xml


END
GO