gpt4 book ai didi

sql - 从函数 postgresql 输出到屏幕并记录文件

转载 作者:太空宇宙 更新时间:2023-11-04 04:15:14 24 4
gpt4 key购买 nike

有一个函数 stub (我需要并行化它,为其部分分离输入数据,并使其在与这些部分不同的数据计算机上运行)

-- Function: net_train(text[], integer)

-- DROP FUNCTION net_train(text[], integer);

CREATE OR REPLACE FUNCTION net_train(terms text[], perceptron_id integer)
RETURNS void AS
$BODY$begin
-- stub
end;$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
ALTER FUNCTION net_train(text[], integer)
OWNER TO postgres;
COMMENT ON FUNCTION net_train(text[], integer) IS 'Comment: Train the Kohonen Neural Network with input data
Params:
text[] terms - array of terms, on which net is train
int perceptron_id - ID of perceptron to be added

要检查它是否真的被执行,有必要在其中插入一些操作,即我对两个感兴趣的问题的回答:

  1. 如何通过该函数显示一些消息? (希望能看到一个例子)
  2. 如果假设,在调用此函数之前,/etc/perceptron_id.txt 文件(此函数参数具有整数类型,在本例中该数字的字符串表示形式)如何从该函数实现在已创建的文件中添加每行一个 terms text [] 输入数组的每个元素(在打开上述文件以添加行之前)? (希望能看到一个例子)

最佳答案

我不太清楚你所说的输出到屏幕是什么意思。这些函数将值返回到 sql 查询执行器,而不是屏幕。您可以发出通知或返回结果,然后包装程序可以将结果显示到屏幕上。像这样的东西:

RAISE NOTICE 'Config file updated';

现在要执行诸如更新文件之类的操作,您可能需要执行以下操作:

COPY perceptron(id) TO '/etc/percetron_id.txt' WITH csv;

否则您想使用包装函数。

请注意,这些事情不是事务性的。您无法回滚对数据库外部文件的写入,因此我建议让另一个程序提取结果并写入文件,而不是直接在后端执行此操作。 LISTENNOTIFY 非常适合这样做。

关于sql - 从函数 postgresql 输出到屏幕并记录文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16791754/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com