Sample code for 30+ languages & platforms
SQL Server

Add an HTML Alternative Body to an Email

See more Email Object Examples

Demonstrates the Chilkat Email.AddHtmlAlternativeBody method, which adds an HTML alternative body. Combined with a plain-text body, it produces a multipart/alternative email that offers both representations of the same content. This example sets a plain-text body, adds an HTML alternative, and prints the resulting alternative count.

Background: A well-formed HTML email usually ships two versions of the body: a rich HTML version and a plain-text fallback, wrapped in a multipart/alternative container. The receiving client displays whichever it prefers — modern clients show the HTML, while text-only clients (or spam filters and accessibility tools) use the plain text. Providing both improves deliverability and ensures every recipient can read the message.

Chilkat SQL Server Downloads

SQL Server
--
CREATE PROCEDURE ChilkatSample
AS
BEGIN
    DECLARE @hr int
    DECLARE @iTmp0 int
    --  Demonstrates the AddHtmlAlternativeBody method, which adds an HTML alternative body to
    --  the email.  Combined with a plain-text body, this produces a multipart/alternative
    --  email that offers both representations.

    DECLARE @email int
    EXEC @hr = sp_OACreate 'Chilkat.Email', @email OUT
    IF @hr <> 0
    BEGIN
        PRINT 'Failed to create ActiveX component'
        RETURN
    END

    EXEC sp_OASetProperty @email, 'Subject', 'Plain-text and HTML alternatives'

    --  Start with a plain-text body.
    EXEC sp_OAMethod @email, 'SetTextBody', NULL, 'This is the plain-text version of the message.', 'text/plain'

    --  Add an HTML alternative, creating a multipart/alternative email.
    DECLARE @success int
    EXEC sp_OAMethod @email, 'AddHtmlAlternativeBody', @success OUT, '<html><body><b>This is the HTML version.</b></body></html>'


    EXEC sp_OAGetProperty @email, 'NumAlternatives', @iTmp0 OUT
    PRINT 'NumAlternatives = ' + @iTmp0

    EXEC @hr = sp_OADestroy @email


END
GO