0

所以我对 SQL 很陌生,我真的找不到问题所在。我在访问中这样做。

  CREATE TABLE BOAT_SLIP
(
SLIP_ID NUMBER (4) PRIMARY KEY,
MARINA_NUM CHAR (4),
SLIP_NUM CHAR (4),
LENGTH NUMBER (4),
RENTAL_FEE NUMBER (8),
BOAT_NAME CHAR (50),
BOAT_TYPE CHAR (50),
OWNER_NUM CHAR (4)
 ) ;

我知道我会觉得自己像个彻头彻尾的白痴……但我想不通。

4

2 回答 2

2

NUMBER 没有字符长度。如果删除 SLIP_ID、LENGTH 和 RENTAL_FEE 右侧的 (4) 和 (8),则表创建得很好。

于 2012-09-06T00:22:06.810 回答
1

在旧版本的 Access 中(至少到 2002 年),您可以将标准 SQLCREATE TABLE语句粘贴到查询的 SQL 视图中,Access 会用它做正确的事情。它甚至以与标准 SQL 相同的方式处理 char(n) 声明。所以我希望这能奏效,尽管我不确定我是否正确翻译了你的数据类型。

CREATE TABLE BOAT_SLIP
(
  SLIP_ID integer PRIMARY KEY,
  MARINA_NUM CHAR (4),
  SLIP_NUM CHAR (4),
  LENGTH integer,
  RENTAL_FEE currency,
  BOAT_NAME varchar(50),
  BOAT_TYPE varchar(50),
  OWNER_NUM CHAR (4)
);

考虑NOT NULL在大多数列上添加约束。

于 2012-09-06T00:27:59.347 回答