/ / SQLite inserisce solo la chiave primaria: sqlite, insert, chiave primaria, autoincremento

SQLite inserisce solo la chiave primaria - sqlite, insert, primary-key, auto-increment

Ho una tabella che è solo una singola colonna, INTEGER PRIMARY KEY.

Dato che è un autoincremento, come inserisco un valore?

Ho provato

INSERIRE IN REGOLA VALORI PREDEFINITI;

che corre ma non inserisce nulla. Altre idee?

Grazie!

risposte:

2 per risposta № 1

Il seguente comando crea una colonna denominata INTEGER senza tipo:

> CREATE TABLE wrong(INTEGER PRIMARY KEY);
> INSERT INTO wrong DEFAULT VALUES;
> INSERT INTO wrong DEFAULT VALUES;
> SELECT * FROM wrong;
INTEGER
----------


Se non dimentichi il nome della colonna, DEFAULT VALUES funziona perfettamente con una colonna INTEGER PRIMARY KEY:

> CREATE TABLE Rule(RuleID INTEGER PRIMARY KEY);
> INSERT INTO Rule DEFAULT VALUES;
> INSERT INTO Rule DEFAULT VALUES;
> SELECT * FROM Rule;
RuleID
----------
1
2

1 per risposta № 2

Inserisci a null:

sqlite> create table a(a integer primary key autoincrement);
sqlite> insert into a values(null);
sqlite> insert into a values(null);
sqlite> select * from a;
1
2