Thread: Creating a database via ODBC

Creating a database via ODBC

From
glaeser@cs.tu-berlin.de (Arne Gl?ser)
Date:
Does anyone know how to create a database(of any type) with ODBC API in C++?

Re: Creating a database via ODBC

From
glaeser@cs.tu-berlin.de (Arne Gl?ser)
Date:
glaeser@cs.tu-berlin.de (Arne Gl?ser) wrote in message news:<9b2c2076.0402270606.1a108dad@posting.google.com>...
> Does anyone know how to create a database(of any type) with ODBC API in C++?

There's no ODBC call that will create a database.

If this is crucial, you can see if your database supports some sort of
"create Database" statement. If so, you can connect to an existing
database, then execute a database-specific call using SQLExecDirect.
But knowing the first database to connect to and the syntax of the
statement is completely up to you.  For example, MS SQL has such a
command. From my SQL documentation, I get
Syntax
CREATE DATABASE database_name
[ ON
    [ < filespec > [ ,...n ] ]
    [ , < filegroup > [ ,...n ] ]
]
[ LOG ON { < filespec > [ ,...n ] } ]
[ COLLATE collation_name ]
[ FOR LOAD | FOR ATTACH ]

< filespec > ::=

[ PRIMARY ]
( [ NAME = logical_file_name , ]
    FILENAME = 'os_file_name'
    [ , SIZE = size ]
    [ , MAXSIZE = { max_size | UNLIMITED } ]
    [ , FILEGROWTH = growth_increment ] ) [ ,...n ]

< filegroup > ::=

FILEGROUP filegroup_name < filespec > [ ,...n ]

MS Access does not, nor does Oracle (to my knowledge.)

In PostGresql, the documentation says

CREATE DATABASE name
     [ [ WITH ] [ OWNER [=] dbowner ]
            [ LOCATION [=] 'dbpath' ]
            [ TEMPLATE [=] template ]
            [ ENCODING [=] encoding ] ]



 Ed Brown

Re: Creating a database via ODBC

From
glaeser@cs.tu-berlin.de (Arne Gl?ser)
Date:
Thanks for your knowledge Ed. I worried about that. So if I need an
existing database anway I'll take the way to just copy an original
empty database.

Arne Gläser