Mysql用户定义函数为Computed stored column

时间:2016-03-23 14:00:35

标签: mysql

我想添加一个计算空间列,它具有我在MySQL 5.7.11中编写的函数的值

  

ALTER TABLE blocks更改point_coord point_coord POINT AS   ( tile2point(xy,20))已存储;

我收到错误:

  

生成的列'point_coord'的表达式包含不允许的函数。

tile2point是用户定义的,以POINT类型返回。

当我使用基本点()时,正在工作

  

ALTER TABLE blocks更改point_coord point_coord POINT AS   ( POINT xy))已存储;

但是还有一些我需要做的事情,这就是为什么我能够实现我的功能。

这也是按预期工作的:

  

从块中选择*,tile2point(xy,20)作为point_coord

我只想存储它,而不是在每次查询时计算它。

在列中存储函数返回值需要做什么?

0 个答案:

没有答案