Reputation: 257
I was creating AUTOINCREMENT function for my SQLite database but whenever I put AUTOINCREMENT function I get error 'SYNTAX' error, am I doing something wrong?
<?php
$db = sqlite_open("user_indormation.db");
@sqlite_query($db, "DROP TABLE user_info");
sqlite_query($db,
"CREATE TABLE user_info (
ID INTEGER(100) AUTOINCREMENT,
FirstName VARCHAR2(10) NOT NULL,
SurName VARCHAR2(10) NOT NULL,
UserName VARCHAR2(10) NOT NULL,
CONSTRAINT USER_PRIMARY_KEY PRIMARY KEY (FirstName));
INSERT INTO 'user_info' VALUES('kim','lim','jim');
INSERT INTO 'user_info' VALUES('tom','tim','zim')"
,$sqliteerror);
$result=sqlite_query($db,"SELECT * from user_info");
echo "<table border=1>";
while($row=sqlite_fetch_array($result,SQLITE_NUM ))
{
echo "<tr>";
for ($i = 0; $i < sizeof($row) ; $i++) {
echo "<td>" . $row[$i] . "</td>";
}
echo "</tr>";
}
echo "</table>";
sqlite_close($db);
?>
Upvotes: 0
Views: 3587
Reputation: 257
I mange to figure it out, just change:
ID INTEGER(100) AUTOINCREMENT,
to
ID INTEGER PRIMARY KEY,
and to insert a value put null for the primary key like this:
INSERT INTO 'user_info' VALUES(NULL,'tom','bob','zim');
or
INSERT INTO user_info (ID,FirstName,Surname,UserName) VALUES(NULL,'tom','bob','zim');
for more info https://sqlite.org/faq.html#q1
Upvotes: 2
Reputation: 152827
You can use AUTOINCREMENT
only with INTEGER PRIMARY KEY
. Change the column spec to
ID INTEGER PRIMARY KEY AUTOINCREMENT
Upvotes: 0