Ни одна функция не соответствует заданному имени и типу аргумента с INSERT INTO в plpgsql

Я создал эту таблицу с Postgresql 9.3:

CREATE TABLE usuarios.token_usrpwd
(
id_token serial NOT NULL,
token character varying,
fechahora_creacion character varying,
CONSTRAINT token_usrpwd_pkey PRIMARY KEY (id_token)
)
WITH (
OIDS=FALSE
);
ALTER TABLE usuarios.token_usrpwd
OWNER TO postgres;

Затем я создал функцию:

CREATE OR REPLACE FUNCTION eiel.insert_usuario_tokenpwd(character varying, character varying)
RETURNS boolean AS
$BODY$
DECLARE
token_obtenido ALIAS FOR $1;
fechahora_obtenido ALIAS FOR $2;
BEGIN
INSERT INTO usuarios.token_usrpwd (token,fechahora_creacion) VALUES (token_obtenido,fechahora_obtenido);
IF found THEN
RETURN TRUE;
ELSE
RETURN FALSE;
END IF;
END;
$BODY$
LANGUAGE plpgsql

Функция и таблица созданы правильно. Затем, когда я вызываю функцию из консоли SQL, она вставляет строку без проблем:

SELECT eiel.insert_usuario_tokenpwd('190e526a2a54ff915d735026f9b64d8f','20150603112531')

Но проблема возникает, когда я вызываю тот же запрос с моего php:

$insql= "SELECT eiel.insert_usuario_tokenpwd('190e526a2a54ff915d735026f9b64d8f','20150603112531')";
$queryresult = pg_query($database_connection, $insql) or die("Error in query: $insql . " . pg_last_error($database_connection));

Затем происходит ошибка и говорит:

Предупреждение: pg_query (): Запрос не выполнен: ОШИБКА: не существует. eiel.insert_usuario_tokenpwd (неизвестно, неизвестно)
ЛИНИЯ 1: ВЫБЕРИТЕ eiel.insert_usuario_tokenpwd (‘190e526a2a54ff915d73502 …
^
Подсказка: функции Ninguna совпадают по номеру и типу аргументации. Puede ser necesario agregar talkión explícita de tipos. в F: \ ms4w \ приложения \ EIELv3 \ xfunctions.php онлайн 432
Ошибка в запросе: SELECT eiel.insert_usuario_tokenpwd (‘190e526a2a54ff915d735026f9b64d8f’, ‘20150603112531’). ОШИБКА: не существует. Eiel.insert_usuario_tokenpwd (неизвестно, неизвестно)
ЛИНИЯ 1: ВЫБЕРИТЕ eiel.insert_usuario_tokenpwd (‘190e526a2a54ff915d73502 …
^
Подсказка: функции Ninguna совпадают по номеру и типу аргументации. Puede ser necesario agregar talkión explícita de tipos.

Это означает, что функция не существует.

СОВЕТ: ни одна функция не соответствует заданному имени и типу аргумента. Возможно, вам понадобится добавить явное приведение типов.

Я искал информацию на этом и других форумах и пробовал решения, такие как добавление приведений типа :: изменение персонажа или предоставление таких решений, как:

Функция Postgres создает, но не выполняет

или же

Ни одна функция не соответствует заданному имени и типу аргумента

но все равно не работает. Есть идеи, что происходит или я что-то упускаю?

Любая идея будет оценена

Заранее спасибо.

2

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]