Re: Proper query to create table

Frediano Ziglio <[email protected]> Mon, 23 Jul 2018 10:48:13 +0100
Newsgroups gmane.comp.db.tds.freetds
Message-ID <CAHt6W4c4Na6JJhX3e2q-Uc8HUMrvu-CheUOdRyLOjSGdo9_k6A@mail.gmail.com>
2018-07-22 7:57 GMT+01:00 Igor Korot <[email protected]>:
> Hi, ALL,
> I'm trying to execute following query:
>
>         query1 = L"IF NOT EXISTS(SELECT 1 FROM sysobjects WHERE name =
> 'abcatcol' AND type = 'U') CREATE TABLE abcatcol( <field_list>))";
>
> Unfortunately it fails.
> If the table does not exist I'm getting 100 (SQL_NO_DATA) from the ODBC
> driver.
> And if the table does exist, I'm getting -1 with the error:
>
> "The table already exists".
>
> Is there a way to do this in 1 shot?  Or I will have to do a conditional
> for Sybase to make it in 2 queries?
>
> Please advise.
>
> Thank you.

This works for mssql:

if object_id('test123') is null create table test123(i int)

Frediano