创建表格语法在hsql中不起作用

Dhi*_*kar 11 java hsqldb create-table

我是hsqldb的新手.我正在开发简单的应用程序来获取用户的一些输入.所以搜索嵌入式数据库,发现hsqldb是我的要求的解决方案.

我有一些创建表语法但它抛出异常.

(此查询使用Netbeans数据库服务执行)

查询:

CREATE TABLE  company (
  comp_name varchar(100) NOT NULL,
  comp_id int(40) NOT NULL AUTO_INCREMENT,
  PRIMARY KEY (comp_id)
);
Run Code Online (Sandbox Code Playgroud)

要么

CREATE TABLE  company (
  comp_name varchar(100) NOT NULL,
  comp_id int(40) NOT NULL IDENTITY
);
Run Code Online (Sandbox Code Playgroud)

hsql db抛出错误:

Error code -5581, SQL state 42581: unexpected token: ( : line: 3
Line 2, column 1

Execution finished after 0 s, 1 error(s) occurred.
Run Code Online (Sandbox Code Playgroud)

请帮帮我..

提前致谢..

干杯...!

Yog*_*ngh 19

使用时INT or INTEGER 不指定字段长度,因为Int类型字段不需要.它需要VARCHARDECIMAL等类型的字段.

 CREATE TABLE  company (
   comp_name varchar(100) NOT NULL,
   comp_id int
 );
Run Code Online (Sandbox Code Playgroud)

要自动增加:

 ALTER TABLE company ALTER COLUMN comp_id 
 SET GENERATED BY DEFAULT AS IDENTITY (START WITH 1, INCREMENT BY 1);
Run Code Online (Sandbox Code Playgroud)

或者:

 CREATE TABLE  company (
   comp_name varchar(100) NOT NULL,
   comp_id int GENERATED BY DEFAULT AS IDENTITY 
                                         (START WITH 1, INCREMENT BY 1) NOT NULL
 );
Run Code Online (Sandbox Code Playgroud)

您还可以添加PRIMARY_KEY,如下所示:

 CREATE TABLE  company (
   comp_name varchar(100) NOT NULL,
   comp_id INTEGER NOT NULL,
   PRIMARY KEY (comp_id)
 );
Run Code Online (Sandbox Code Playgroud)