所以对于下面的代码是什么" table"和"列",如果我只把int table和column作为变量名,它们有什么不同
create type MatchingRecord as ("table" text, "column" text, nexamples integer);
create or replace function Q2("table" text, pattern text)
returns setof MatchingRecord
as $$
begin
end;
$$ language plpgsql;
答案 0 :(得分:0)
"table"
不是“字符串文字”,它是一个标识符 - 参数的名称。
字符串需要单个引号,例如'table'
将是一个字符串。
由于table
和column
是保留关键字,因此需要引用这些参数名称(标识符),并使用SQL中的双引号完成。
手册中的详细信息
http://www.postgresql.org/docs/current/static/sql-syntax-lexical.html#SQL-SYNTAX-IDENTIFIERS