[英]On the insertion dynamic column of mariaDB
set @v1 = "'city', 'ITY', 'age', '20'";
select @v1;
insert into test values (11, 'hidy', column_create(@v1));
MariaDB不以插入形式支持此变量,并且
client Error at))
MariaDB :10.1.19
client :heidi 9.4.0.5130
OS: Windows 10
如何以可变形式插入? 因为我想在我的JAVA中使用JDBC来传递参数
您可以将准备好的语句用于INSERT。
MariaDB [test]> set @v1 = "'city', 'ITY', 'age', '20'";
Query OK, 0 rows affected (0.01 sec)
MariaDB [test]> set @q = concat("insert into test values(11, 'hidy', column_create(",@v1,"))");
Query OK, 0 rows affected (0.00 sec)
MariaDB [test]> select @q;
+--------------------------------------------------------------------------------+
| @q |
+--------------------------------------------------------------------------------+
| insert into test values(11, 'hidy', column_create('city', 'ITY', 'age', '20')) |
+--------------------------------------------------------------------------------+
1 row in set (0.00 sec)
MariaDB [test]> prepare stmt from @q;
Query OK, 0 rows affected (0.00 sec)
Statement prepared
MariaDB [test]> execute stmt;
Query OK, 1 row affected (0.26 sec)
MariaDB [test]> select column_get(b,'city' as char(8)) from test;
+---------------------------------+
| column_get(b,'city' as char(8)) |
+---------------------------------+
| ITY |
+---------------------------------+
1 row in set (0.00 sec)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.