小编Luc*_*pus的帖子

PostgreSQL中字符串文字"x"的"列'x'不存在"错误

可能重复:
列'mary'不存在

我需要通过检查约束检查可以接受到列的值.我需要使用检查约束,因为这是为了大学任务.

我使用此代码创建约束并将其添加到表中.

CREATE TABLE Ereignis(
  E_Id Serial PRIMARY KEY,
  Typ varchar(15),
  Zeitpunkt timestamp,
  Ort varchar(32),
  Anzahl_Pers int
);

ALTER TABLE Ereignis ADD 
CONSTRAINT typ_ch CHECK (Typ in (’Verkehrsunfall’, ’Hochwasser’, ’Sonstiges’));
Run Code Online (Sandbox Code Playgroud)

这是我得到的错误:

 ERROR:  column "’verkehrsunfall’" does not exist
Run Code Online (Sandbox Code Playgroud)

当我从这个错误中得到它时,它试图将列typ与列verkehrsunfall进行比较,在那里我尝试检查列try尝试得到的值是('Verkehrsunfall','Hochwasser','Sonstiges')字符串之一.

这与讲师在讲座中向我们展示的语法完全相同.我不确定是否可以将varchars与check进行比较?或者我做错了什么?

以下是讲座的例子:

CREATE TABLE Professoren 
(PersNr INTEGER PRIMARYKEY,
 Name VARCHAR( 3 0 ) NOT NULL ,
 Rang CHAR(2) CHECK (Rang in ('C2' ,'C3' ,'C4')) , 
 Raum INTEGER UNIQUE) ;
Run Code Online (Sandbox Code Playgroud)

sql postgresql constraints

9
推荐指数
1
解决办法
8697
查看次数

标签 统计

constraints ×1

postgresql ×1

sql ×1