sql - 创建表时如何解决此 Postgis 错误
问题描述
任何人都可以解释为什么我在 postgis 中遇到这个错误,第一次使用。
试图创建一个仓库表,只是在里面扔了一些随机字符。
完整的错误代码是:
错误:“Warehouse_id”或附近的语法错误第 3 行:Warehouse_id VARCHAR(100),^ SQL 状态:42601 字符:58
这是我的数据:
CREATE TABLE Warehouse (
Warehouse_location VARCHAR(25)
Warehouse_id VARCHAR(100),
Warehouse_managers VARCHAR(25)
Warehouse_address VARCHAR(25)
Warehouse_capacity VARCHAR(50),
Warehouse_occupied VARCHAR(50),
Warehouse_loading bays VARCHAR(50),
Warehouse_accesspoints VARCHAR(50),
);
INSERT INTO Warehouse Values('Vic','1235','John', '12 Sidney St','500','230','10','5');
INSERT INTO Warehouse Values('Vic','1236','Drake', '156 Can Rd','400','250','10','6');
INSERT INTO Warehouse Values('Nsw','1237','Dave', '120 Toast Ave','400','240','9','5');
INSERT INTO Warehouse Values('Vic','1238','Daniel', '99 Foot St','550','255','10','5');
INSERT INTO Warehouse Values('Nsw','1434','Chirs', '21 Jump St','500','270','9','6');
INSERT INTO Warehouse Values('Nsw','1734','Liam', '1 Bishop St','500','150','6','5');
INSERT INTO Warehouse Values('Vic','7234','Steve', '12 Bewick Grove ','440','250','3','5');
INSERT INTO Warehouse Values('Vic','8234','Bob', '23 Rannoch Wood Rd','440','250','11','5');
INSERT INTO Warehouse Values('Vic','1224','Kim', '390 Park Ave','550','250','9','6');
INSERT INTO Warehouse Values('SA','4234','Alex', '2 Grange Dr','550','250','10','5');
INSERT INTO Warehouse Values('SA','1734','Ryan', '12 Food St','500','350','10','5');
解决方案
您缺少几个逗号,并且有一个带有空格的列名。要么用双引号括起来,"
要么去掉它,例如使用_
(恕我直言更优雅):
CREATE TABLE Warehouse
( Warehouse_location VARCHAR(25),
Warehouse_id VARCHAR(100),
Warehouse_managers VARCHAR(25),
Warehouse_address VARCHAR(25),
Warehouse_capacity VARCHAR(50),
Warehouse_occupied VARCHAR(50),
"Warehouse_loading bays" VARCHAR(50), -- consider using Warehouse_loading_bays instead
Warehouse_accesspoints VARCHAR(50)
);
INSERT INTO Warehouse Values('Vic','1235','John', '12 Sidney St','500','230','10','5');
INSERT INTO Warehouse Values('Vic','1236','Drake', '156 Can Rd','400','250','10','6');
INSERT INTO Warehouse Values('Nsw','1237','Dave', '120 Toast Ave','400','240','9','5');
INSERT INTO Warehouse Values('Vic','1238','Daniel', '99 Foot St','550','255','10','5');
INSERT INTO Warehouse Values('Nsw','1434','Chirs', '21 Jump St','500','270','9','6');
INSERT INTO Warehouse Values('Nsw','1734','Liam', '1 Bishop St','500','150','6','5');
INSERT INTO Warehouse Values('Vic','7234','Steve', '12 Bewick Grove ','440','250','3','5');
INSERT INTO Warehouse Values('Vic','8234','Bob', '23 Rannoch Wood Rd','440','250','11','5');
INSERT INTO Warehouse Values('Vic','1224','Kim', '390 Park Ave','550','250','9','6');
INSERT INTO Warehouse Values('SA','4234','Alex', '2 Grange Dr','550','250','10','5');
INSERT INTO Warehouse Values('SA','1734','Ryan', '12 Food St','500','350','10','5');
演示:db<>fiddle
推荐阅读
- android - 如何将调试符号添加到 build.gradle
- kotlin - 带有 kotlin 的分支深度链接在 android 设备上不起作用
- python - Python在树中逐对查找所有交点
- spring - 如何将请求数据从 Spring Boot 控制器传递到 Apache Camel 路由
- c - 关于内存进程和函数共享的问题
- bash - 使用 awk 和 bash 进行 vlookup:大数据速度慢
- android - 如何在 Android Studio 中自定义数据绑定字段?
- flutter - 如何使用flutter adyen支付网关?
- arrays - 将列值从 1 更改为 0
- html - 角材料扩展面板内的下拉菜单被切断