简体   繁体   English

pgSQL在SELECT查询之前显示其功能中的错误

[英]pgSQL show an error in its function before the SELECT query

This is my function: 这是我的功能:

CREATE OR REPLACE FUNCTION addData (x INT,y INT)
RETURNS void AS $$
BEGIN
INSERT INTO TABLE temp(id,name,pass) VALUES(y,"ABC","XYZ");
END;
$$ LANGUAGE SQL;

but the output is 但输出是

$$ LANGUAGE SQL $$语言SQL
ERROR: syntax error at or near "INSERT" 错误:“ INSERT”处或附近的语法错误
LINE 4: INSERT INTO TABLE temp(id,name,pass) 第4行:插入表temp(id,name,pass)

I tried by changing data type, double quotes to single quotes, please help me with this. 我尝试通过更改数据类型,将双引号更改为单引号来解决此问题。 I am currently using pSQL 我目前正在使用pSQL

INSERT INTO TABLE... no need TABLE keyword INSERT INTO TABLE...不需要TABLE关键字

VALUES(y,"ABC","XYZ")... You need single quotes instead of double VALUES(y,"ABC","XYZ")...您需要单引号而不是双引号

Since you use BEGIN..END , you need plpgsql language 由于您使用BEGIN..END ,因此需要plpgsql语言

CREATE OR REPLACE FUNCTION addData (x INT,y INT)
RETURNS void AS $$
BEGIN
INSERT INTO temp(id,name,pass) VALUES(y,'ABC','XYZ');
END;
$$ LANGUAGE plpgSQL;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM