我有一个sql函数代码,我从其他db导出。但是当我运行它时会出现错误
#1064 - 您的SQL语法出错;查看与您的MariaDB服务器版本对应的手册,以获得在''附近使用的正确语法。在第4行
我的sql代码是
HDNHtml hdn = new HDNHtml();
Random r = new Random();
HDNData hdnData = new HDNData();
hdnData.Data = r.Next().ToString();
hdnData.HexColor = "#FFCCFF";
hdn.Add(0,hdnData);
hdnData = new HDNData();
hdnData.Data = r.Next().ToString();
hdnData.Hyperlink = "#GTA";
hdn.Add(0, hdnData);
hdnData = new HDNData();
hdnData.Data = r.Next().ToString();
hdnData.Hyperlink = "#GTA";
hdn.Add(0, hdnData);
hdnData = new HDNData();
hdnData.Data = r.Next().ToString();
hdnData.Hyperlink = "#GTA";
hdn.Add(1, hdnData);
hdnData = new HDNData();
hdnData.Data = r.Next().ToString();
hdnData.Hyperlink = "#GTA";
hdn.Add(1, hdnData);
string data = hdn.ToString();
txtWarnings.Text = data;
Clipboard.SetText(data);
答案 0 :(得分:0)
您必须更改分隔符。 试试这个
DELIMITER |
CREATE DEFINER=`root`@`localhost` FUNCTION `getCOGS`(pItemId BIGINT) RETURNS float
DETERMINISTIC
BEGIN
declare vRet FLOAT;
SET vRet = 0.00;
SELECT SUM(d.quantity*d.unitPrice) / SUM(d.quantity) INTO vRet
FROM transaction_detail d
INNER JOIN transaction t ON (t.componentId = d.transactionId AND t.`type` = 'PURCHASE')
WHERE d.itemId = pItemId AND d.`type` = 1 AND d.accountId = 12;
RETURN vRet;
END
|
DELIMITER ;
DELIMITER语句将标准分隔符(分号(;
)更改为另一个(此处为|
)。
查询完毕后,您可以将其设置回;