我已使用以下代码创建了一个表,并使用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'))
);
我收到错误消息“ 插入的目标列多于表达式”
答案 0 :(得分:1)
在我看来,每个值后面都缺少逗号:
INSERT INTO auth (name, dob, email, password) VALUES (
'Divyansh', # <--- comma here
'1995-09-21', # <--- comma here
'divyanshkumar@gmail.com',
crypt('password', gen_salt('bf'))
);
它确实指出targets
比expression
多,它有效地看到了2个没有逗号的值。
看看是否可行。