<?xml version="1.0" encoding="utf-8"?>
<!-- generator="FeedCreator 1.7.2-ppt DokuWiki" -->
<?xml-stylesheet href="https://www.sqlines.com/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://www.sqlines.com/feed.php">
        <title>SQLines Tools sybase-asa-to-postgresql</title>
        <description></description>
        <link>https://www.sqlines.com/</link>
        <image rdf:resource="https://www.sqlines.com/lib/images/favicon.ico" />
       <dc:date>2026-04-14T06:57:47+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://www.sqlines.com/sybase-asa-to-postgresql/default_timestamp?rev=1773327437&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.sqlines.com/sybase-asa-to-postgresql/for_cursor_loop?rev=1774037441&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.sqlines.com/sybase-asa-to-postgresql/message?rev=1773299779&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.sqlines.com/sybase-asa-to-postgresql/raiserror?rev=1773299737&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.sqlines.com/sybase-asa-to-postgresql/return_resultset?rev=1775038680&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.sqlines.com/sybase-asa-to-postgresql/string_concat?rev=1773299931&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.sqlines.com/sybase-asa-to-postgresql/timestamp?rev=1773509909&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://www.sqlines.com/lib/images/favicon.ico">
        <title>SQLines Tools</title>
        <link>https://www.sqlines.com/</link>
        <url>https://www.sqlines.com/lib/images/favicon.ico</url>
    </image>
    <item rdf:about="https://www.sqlines.com/sybase-asa-to-postgresql/default_timestamp?rev=1773327437&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-12T14:57:17+00:00</dc:date>
        <title>DEFAULT TIMESTAMP - Sybase SQL Anywhere to PostgreSQL Migration</title>
        <link>https://www.sqlines.com/sybase-asa-to-postgresql/default_timestamp?rev=1773327437&amp;do=diff</link>
        <description>In Sybase SQL Anywhere, you can specify the DEFAULT TIMESTAMP clause for a table column, and its value will auto-update with the current date and time whenever the row is updated.  

In PostgreSQL, you can use DEFAULT CLOCK_TIMESTAMP() to set the default value on insert, and a trigger to update it on every update.</description>
    </item>
    <item rdf:about="https://www.sqlines.com/sybase-asa-to-postgresql/for_cursor_loop?rev=1774037441&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-20T20:10:41+00:00</dc:date>
        <title>FOR CURSOR Statement - Sybase SQL Anywhere to PostgreSQL Migration</title>
        <link>https://www.sqlines.com/sybase-asa-to-postgresql/for_cursor_loop?rev=1774037441&amp;do=diff</link>
        <description>In Sybase SQL Anywhere and PostgreSQL, you can use the FOR statement to execute the specified statements  for each row in a cursor.

Sybase SQL Anywhere:


  CREATE PROCEDURE show_colors()
  BEGIN
     FOR rec AS cur CURSOR FOR SELECT name FROM colors
     DO
       MESSAGE 'Color: ' || name TO CLIENT;
     END FOR;
  END
  GO</description>
    </item>
    <item rdf:about="https://www.sqlines.com/sybase-asa-to-postgresql/message?rev=1773299779&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-12T07:16:19+00:00</dc:date>
        <title>MESSAGE Statement - Sybase SQL Anywhere to PostgreSQL Migration</title>
        <link>https://www.sqlines.com/sybase-asa-to-postgresql/message?rev=1773299779&amp;do=diff</link>
        <description>In Sybase SQL Anywhere, the MESSAGE statement allows you to send a message to client or database message log. 

In PostgreSQL, you can use the RAISE NOTICE statement.

Sybase SQL Anywhere:


  -- Send message to client
  MESSAGE 'Hello, ' || 'world!' TYPE STATUS TO CLIENT;</description>
    </item>
    <item rdf:about="https://www.sqlines.com/sybase-asa-to-postgresql/raiserror?rev=1773299737&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-12T07:15:37+00:00</dc:date>
        <title>RAISERROR Statement - Sybase SQL Anywhere to PostgreSQL Migration</title>
        <link>https://www.sqlines.com/sybase-asa-to-postgresql/raiserror?rev=1773299737&amp;do=diff</link>
        <description>In Sybase SQL Anywhere, the RAISERROR statement allows you to raise an error. 

In PostgreSQL, you can use the RAISE EXCEPTION statement.

Sybase SQL Anywhere:


  -- Raise an error with the error code 99999
  RAISERROR 99999 'Something went ' || 'wrong.';
  /* RAISERROR executed: Something went wrong. SQLCODE=-99999, ODBC 3 State=&quot;HY000&quot; */</description>
    </item>
    <item rdf:about="https://www.sqlines.com/sybase-asa-to-postgresql/return_resultset?rev=1775038680&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-01T10:18:00+00:00</dc:date>
        <title>Return Result Set - Sybase SQL Anywhere to PostgreSQL Migration</title>
        <link>https://www.sqlines.com/sybase-asa-to-postgresql/return_resultset?rev=1775038680&amp;do=diff</link>
        <description>Sybase SQL Anywhere allows a stored procedure to return a result set to the caller by executing  a standalone SELECT statement:

Sybase SQL Anywhere:


  -- Return a result set from stored procedure
  CREATE PROCEDURE sp_getColors()
  RESULT (
    id INT,
    name VARCHAR(30))
  BEGIN
    SELECT 1, 'White'
    UNION ALL 
    SELECT 2, 'Black'
    UNION ALL 
    SELECT 3, 'Green'
  END
  GO</description>
    </item>
    <item rdf:about="https://www.sqlines.com/sybase-asa-to-postgresql/string_concat?rev=1773299931&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-12T07:18:51+00:00</dc:date>
        <title>|| String Concatenation - Sybase SQL Anywhere to PostgreSQL Migration</title>
        <link>https://www.sqlines.com/sybase-asa-to-postgresql/string_concat?rev=1773299931&amp;do=diff</link>
        <description>In Sybase SQL Anywhere, the || operator concatenates strings ignoring NULL values. 

In PostgreSQL, the || operator returns NULL if any operand is NULL. To avoid this, use the CONCAT function, which ignores NULL values, or use COALESCE to replace NULLs with empty strings.</description>
    </item>
    <item rdf:about="https://www.sqlines.com/sybase-asa-to-postgresql/timestamp?rev=1773509909&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-14T17:38:29+00:00</dc:date>
        <title>TIMESTAMP Data Type - Sybase SQL Anywhere to PostgreSQL Migration</title>
        <link>https://www.sqlines.com/sybase-asa-to-postgresql/timestamp?rev=1773509909&amp;do=diff</link>
        <description>In Sybase SQL Anywhere,  the TIMESTAMP data type stores date and time with fractional seconds with microseconds precision. 

In PostgreSQL, you can also use the TIMESTAMP(p) data type, allowing you to set a precision from 0 to 6 for fractional seconds, with a default of 6.</description>
    </item>
</rdf:RDF>
