为什么我的 psql (postgreSQL) 没有插入电子邮件和密码

Why my psql (postgreSQL) not inserting the email and password

我使用以下代码创建了一个 table 并且我正在使用 bf 加密密码。

CREATE EXTENSION pgcrypto;
CREATE TABLE auth (
  id SERIAL PRIMARY KEY,
  name TEXT NOT NULL,
  dob DATE NOT NULL,
  email TEXT NOT NULL UNIQUE,
  password TEXT NOT NULL
);

在此之后如果我尝试使用以下方式插入数据 -:

INSERT INTO auth (name, dob, email, password) VALUES (
  'Divyansh'
  '1995-09-21'
  'divyanshkumar@gmail.com',
  crypt('password', gen_salt('bf'))
);

I got error "INSERT has more target columns than expressions"

在我看来,您在每个值后都缺少逗号:

INSERT INTO auth (name, dob, email, password) VALUES (
'Divyansh', # <--- comma here
'1995-09-21', # <--- comma here
'divyanshkumar@gmail.com',
crypt('password', gen_salt('bf'))
);

确实指出 targetsexpression 多,它实际上看到了 2 个没有逗号的值。

看看是否可行。