postgreSQL-获取枚举的无效输入值的错误

问题描述 投票:0回答:1

表格:

create type status as enum ('new_ride', 'ride_assigned', 'ride_start', 'ride_end', 'ride_cancelled');

create table ride_status (
id int primary key,
ride_id int,
created_at timestamp,
status status,
status_timestamp timestamp,
foreign key (ride_id) references ride (id));

insert into ride_status values
(1, 1, '2020-04-01 11:00:00', 'ride_start', '2020-04-01 11:05:00'),
(2, 1, null, 'ride_end', '2020-04-01 11:15:00'),
(3, 2, null, 'ride_start', '2020-04-02 12:06:00'),
(4, 2, null, 'ride_end', '2020-04-02 12:25:00'),
(5, 3, null, 'ride_start', '2020-04-03 14:05:00'),
(6, 3, null, 'ride_end', '2020-04-03 14:35:00'),
(7, 4, null, 'ride_start', '2020-04-04 11:10:00'),
(8, 4, null, 'ride_end', '2020-04-04 11:35:30'),
(9, 5, null, 'ride_start', '2020-04-04 15:05:00'),
(10, 5, null, 'ride_end', '2020-04-04 15:15:45');

枚举和表已成功创建,但是在执行insert into时出现以下错误:

ERROR:  invalid input value for enum status: "ride_start"
LINE 2: (1, 1, '2020-04-01 11:00:00', 'ride_start', '2020-04-01 11:0...
                                      ^
SQL state: 22P02
Character: 62

对此错误有任何想法吗?谢谢

sql postgresql
1个回答
0
投票

尝试用以下内容替换您的create语句

create table ride_status (
id int primary key,
ride_id int,
created_at timestamp,
sta status,
status_timestamp timestamp,
foreign key (ride_id) references ride (id));
© www.soinside.com 2019 - 2024. All rights reserved.