1,虚拟列的用途
1.1,虚拟列可以在创建表时定义,并在查询时像普通列一样使用;方便查询数据;比如从复杂的列数据中,解析taskID,使用虚拟列就很方便;
1.2,mapvalue是txt类型,保存了json数据;而报表查询时,要查询taskid字段的数据;
2,常见问题:
2.1,原来的程序是
INSERT INTO f_workflow value (null ,?,?)
2.2,因为速度慢,需要优化,增加了虚拟列;增加虚拟列之后,插入的逻辑报错;
Error updating database. Cause: java.sql.SQLException: Column count doesn't match value count at row 1
2.3,原因:列不对应;
2.3.1,处理方案
INSERT INTO f_workflow (`id`, `workflowid`, `mapvalue`) VALUES (null ,?,?)