我刚开始使用程序,似乎不能让我的程序正常工作。我正在使用WAMPP v5.1.36,并使用MySQL服务器上的MySQL控制台输入代码。如果我去(重新)创建这个过程。我得到错误#1304 (42000)。
mysql> DELIMITER //
mysql>
mysql> CREATE PROCEDURE modx.getCRID (IN x VARCHAR(255),OUT y INT)
-> BEGIN
-> DECLARE y INT;
-> SELECT id INTO y
-
在我的MySQL数据库中,我有一个具有以下结构的表features:
+-------+---------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| val | json | NO
我正在将很少的查询从谷歌BigQuery迁移到MySQL,并需要帮助将下面的BigQuery Java脚本UDF复制到等效的MySQL。我在网上没有看到任何参考资料。MySQL支持Java吗?这里的要求是将JSON数组拆分为一个简单的字符串数组(每个字符串表示单个JSON字符串)。
CREATE OR REPLACE FUNCTION `<project>.<dataset>.json2array`(json STRING) RETURNS ARRAY<STRING> LANGUAGE js AS R"""
if (json) {
我不知所措,我看不出像这样简单的事情不起作用的原因:
CREATE PROCEDURE test()
BEGIN
DECLARE var INT;
SET var = 0;
END
我真的只是在测试这个,因为我似乎根本无法创建任何东西。我得到的错误消息是:
查询1中的错误您的SQL语法中有一个错误;检查与您的MySQL服务器版本对应的手册,以便在第3行使用正确的语法
第3行是DECLARE语句。有什么想法吗?
更新:下面是额外的信息,展示了文本与JSON和全局变量在相同数据下的不同表现。更奇怪的是,var_json和@var_char1的字符集和排序规则与文本变量(utf8mb4/utf8mb4_unicode_ci)完全相同。 DECLARE var_char text;
DECLARE var_json json;
-- The CHARSET and COLLATION of var_char is utf8mb4 and utf8mb4_unicode_ci
SET var_json = '{"This": "• ® is a test"}'