2016-07-28 2 views
1

Ich bin neu in der Derby-Bibliothek. Warum habe ich diesen Fehler erhalten, wenn ich auto_increment in meiner Abfrage verwende?create table Benutzer ("user_id int auto_increment"); funktioniert nicht in Derby (eingebettete Datenbank)

hier ist mein Java-Code

this.conn.createStatement().execute(create table user("user_id int auto_increment, PRIMARY KEY(user_id))"); 

ich dies in MySQL-Server versucht, und seine Werke aber in Derby bekam ich diesen Fehler

java.sql.SQLSyntaxErrorException: Syntax error: Encountered "auto_increment" at line 1 

warum ich diesen Fehler habe?

+1

AFAIK gibt es keine 'auto_increment' in Derby ist, suchen Sie nach [Name] (https://db.apache.org/derby/docs/10.0/manuals/develop/develop132.html) Säulen. –

Antwort

2

Derby hat kein auto_increment als Schlüsselwort. Im Derby müssen Sie Identitätsspalten verwenden Verhalten Autoinkrement

Zum Beispiel

CREATE TABLE students 
(
id INTEGER NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1), 
name VARCHAR(24) NOT NULL, 
address VARCHAR(1024), 
CONSTRAINT primary_key PRIMARY KEY (id) 
) ; 

Above-Anweisung implementieren wird Schülertisch mit der ID als Autoinkrement-Spalte und Primärschlüssel als auch erstellen.

hoffe, das hilft

+0

danke. Es klappt. –

+0

Froh, dass es dir geholfen hat :) – Sanjeev

Verwandte Themen