plpgsql相关内容
我从SQL Server到PostgreSQL(9.0),所以我在执行存储过程/函数时遇到一个问题。该函数返回此错误消息: SQLSTATE:42601; SQLERRM:查询没有结果数据的目标 我需要做的是从 SELECT 查询以及 OUT 参数到结果中,并避免得到该错误消息? CREATE OR REPLACE FUNCTION myplfunction( 在i_pa
..
多次我发现自己重构了Web应用程序代码,最终想要做这样的事情(在这种情况下为Groovy,但可以是任何东西): Map getData(String relationName,Integer rowId){ def sql = Sql.newInstance([...]) def result = sql.firstRow('SELECT getRelationRow (?,?)',r
..
我试图用返回表做一个函数。 CREATE FUNCTION karta_pacjenta(pe VARCHAR(11)) RETURNS TABLE('data'DATE,'imie'TEXT,'nazwisko'TEXT,'diagnoza'TEXT,'przepisany lek'TEXT)AS' BEGIN 返回查询选择w.dzien AS dzien,p.imie,p.naz
..
我只是想知道是否有人知道如何在运行 DROP ... CASCADE 后自动化视图创建? 现在我试图删除视图,首先与经典的 DROP VIEW myview 语句,如果我不能删除视图,因为其他对象仍然依赖它,然后检查所有对象名称postgres列出并保存他们的创建,然后我运行drop与级联。有时它像十几个对象。但也许你有一些想法以更自动化的方式处理这个问题? 也许任何人都有一些功能?
..
在PostgreSQL(9.3)中有一个简单的方法来获取使用特定表的存储过程的列表? 我改变了几个表,需要修复使用它们的存储过程。 解决方案 strong> 查询返回函数名称,行号和包含'thetable'的行: select * from( select proname,row_number()over(partition by proname)as line,
..
我有一个产品架构和一些表格。 products 模式有一个 id ,通过 id 我可以得到这个表名,例如 产品 \ product1 \ product2 \ product3 我需要从动态访问适当的产品中选择信息,例如 code> SELECT * FROM'products。'(SELECT id from categories WHERE id
..
我确定这是常见的地方,但Google没有帮助。我试图在PostgreSQL 9.1中写一个简单的存储过程,将从父 cpt 表中删除重复的条目。父表 cpt 由子表 lab 引用: CREATE TABLE lab( recid serial NOT NULL, cpt_recid integer, ........ CONSTRAINT cs_cpt FOREIGN KEY(cp
..
如何使用postgresql存储查询结果变量存储过程 我有一个存储过程 CREATE OR REPLACE FUNCTION测试(x数字) 返回字符变化AS $ BODY $ DECLARE name字符变化(255) begin name ='SELECT name FROM test_table其中id ='|| x; if(name ='test')
..
我有一个sql函数,它做一个简单的sql select语句: CREATE OR REPLACE FUNCTION getStuff 返回SETOF的东西AS $ BODY $ select * from stuff 其中col = $ 1 $ BODY $ LANGUAGE sql; 现在我调用这个函数: select * from g
..
我写了一个函数,输出一个PostgreSQL SELECT 查询,形成文本形式。现在我不想再输出一个文本,但实际上对数据库运行生成的 SELECT 语句并返回结果 - 就像查询本身一样。 我到目前为止: CREATE OR REPLACE FUNCTION data_of RETURNS text AS $ BODY $ DECLARE sensors varchar
..
我使用Postgres 8.4。我想更新使用plpgsql和游标的数据。当我试图运行plpgsql它生成一个错误。 CREATE或REPLACE FUNCTION updateScore() RETURNS void AS $$ DECLARE singleTopicCriteriaPercentage DECIMAL(6,10); sitePercentage DECI
..
下面的代码是PostgreSQL 9.0中的一个游标。我想通过加入多个表来获取我的记录,我从该连接获取JSON数据。 所以我想循环这些记录,并使用查询像 SELECT“Dump” - >'activities-steps' - > 0->'value'as“ steps“ FROM”ActivitySessionDump“其中”Id“= 42594321345021288
..
我有两个嵌套游标的函数。外部游标从源中获取客户的付款细节,并基于一些业务逻辑插入到目标中。 付款表格大约有125000行,大约有335000行表示付款详情。所有这些行都将迁移到目标表。执行该函数需要两个小时,数据库CPU使用率上升到99%。 我正在使用PostgreSQL 9.2。 我如何提高功能的性能? 我使用的代码: CREATE OR REPLACE FUNC
..
我正在调整一些PL / pgSQL代码,因此我的 refcursor 可以将表名作为参数。因此,我改变了以下行: declare pointCurs CURSOR FOR SELECT * from tableName for update; : OPEN pointCurs FOR execute'SELECT * FROM'|| quote_ident(
..
我想测试一个Postgres函数的结果(改变函数是不可能的)。 函数接收REFCURSOR和其他几个参数作为参数,并返回相同的RECURSOR。 get_function_that_returns_cursor(ret,4100,'SOMETHING',123465) 现在我想在Postgres中创建一个小测试,以获取此FUNCTION的结果。 类似下面的代码(这是
..
我使用Postgresql 8.3,并有以下简单的函数,将 refcursor 返回给客户端 CREATE OR REPLACE FUNCTION function_1()RETURNS refcursor AS $$ DECLARE ref_cursor REFCURSOR; BEGIN OPEN ref_cursor FOR SELECT * FROM some_tab
..
我有一个函数,我写了自动执行一组功能为我的项目。我采取一个refcursor,我存储我需要的数据,我将作为参数传递给我的每个函数被调用,并基于参数将被执行。我在这里给我的代码: CREATE OR REPLACE FUNCTION ccdb.fn_automation() RETURNS void AS $ BODY $ DECLARE sec_col refcursor
..
我试图对连接多个表的查询使用游标。我已经看到,对于oracle有一个基于游标的记录。当我尝试相同的Postgres,它抛出一些错误。如何在Postgres中做同样的事? CREATE OR REPLACE FUNCTION avoidable_states() RETURNS SETOF varchar AS $ BODY $ DECLARE xyz CURSOR FOR s
..
我想重复以下查询8760次,将“2”替换为1到8760年的每小时。这个想法是为每个小时创建一个单独的CSV文件以供进一步处理。 COPY (SELECT * FROM public.completedsolarirad2012 WHERE completedsolarirad2012。“UniquetmstmpID”= 2) TO'C:\temp\2012hour2.c
..
从文件复制数据时,您可以通过“命令标签”获取psql中的行数: db =#COPY t FROM'/var/lib/postgres/test.sql'; COPY 10 我需要行数,在表上有多余的 count()。 有办法从 COPY 直接在PL / pgSQL函数中? 据我所知,没有,但也许我错过了一些东西? 对于PostgreSQL 9.
..