Autor Zpráva
koumal
Profil *
Ahoj,
mám dotaz k SQLite. Nějak mi nefunguje klauzule IF NOT EXISTS.

Dotaz začíná na CREATE TABLE IF NOT EXIST mytable (... ); ... případně zkouším
IF NOT EXIST CREATE TABLE IF NOT EXIST mytable (... );
či IF NOT EXIST mytable CREATE TABLE IF NOT EXIST mytable (... );
či IF NOT EXIST TABLE mytable CREATE TABLE IF NOT EXIST mytable (... );
nic nefunguje. Proto obcházím hlášku, že tabulka již existuje, tím že před php příkaz přidám @. Není to moc hezké řešení. Jak jednoznačně říct, že nechci něco spouštět, protože tabulka je již vytvořená?

Díky za radu
nightfish
Profil
v nadpisu to máš napsané správně, v samotném příspěvku už pak ne (EXISTS x EXIST)
http://www.sqlite.org/lang_createtable.html
koumal
Profil *
Tu chybu jsem napsal teď ale ve scriptu to mám správně EXISTS.

Na ten manuál jsem se samozřejmě díval, ale je tam jediná věta:

If the optional IF NOT EXISTS clause is present and another table with the same name aleady exists, then this command becomes a no-op.

Ať si to přebírám jak chci, není tam konkrétní příklad, není tam ani jestli to má být před nebo za TABLE nebo jak vlastně má vypadat syntaxe.
nightfish
Profil
koumal:
není tam konkrétní příklad, není tam ani jestli to má být před nebo za TABLE
Ale je, stačí se podívat na ten první obrázek a jít po směru šipek.
koumal
Profil *
Jo tak to sorry, když jsem se na to zprvu díval tak jsem myslel, že to je nějaká struktura databáze, nevšiml jsem si, že se jedná o syntaxi. Díky za upozornění :-)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0