我有我的plpgsql函数(它工作得非常好
CREATE OR REPLACE FUNCTION inscription (client.nom%type, client.prenom%type, client.adresse%type, client.cp%type, client.ville%type, client.pays%type) RETURNS INTEGER AS $$
DECLARE
res client.code%type;
BEGIN
IF EXISTS (SELECT * FROM client WHERE nom = $1 AND prenom = $2 AND adresse = $3) THEN
RETURN 0;
ELSE INSERT INTO client VALUES(DEFAULT,$1,$2,$3,$4,$5,$6) RETURNING code INTO res;
RETURN res;
END IF;
END;
$$ LANGUAGE plpgsql;和我的php代码
$conn = new PDO("pgsql:host=$servername;dbname=$dbname", $username, $password);
$select = "select inscription ('qq','pccccp','lldddl','76000','ROUEN','FRANCE');";
$stmt = $conn->query($select);
print_r($stmt->fetch()[0]);我的php页面总是返回0并插入值
发布于 2021-03-03 03:29:40
我的php页面总是返回0并插入值
最有可能的原因是,您正在对关系中属性的顺序进行假设。尝试将插入更改为使用显式列。
INSERT INTO CLIENT
(UNKNOWNATTRIBUTE, nom, prenom, adresse, type, villee, pays)
VALUES
(DEFAULT, $1, $2, $3, $4, $5, $6)https://stackoverflow.com/questions/66445808
复制相似问题