首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法添加生成的列

无法添加生成的列
EN

Stack Overflow用户
提问于 2016-10-21 04:06:40
回答 1查看 2.6K关注 0票数 1

我的MySQL Products MyISAM表中有一个价格列(小数点6, 2 ),我试图添加一个生成的列来将其乘以2。

代码语言:javascript
复制
ALTER TABLE Produtos ADD COLUMN Price_double DECIMAL(6,2) AS (Price*2);

但我在HeidiSQL上看到了这个:

Error SQL (1064):您的SQL语法有错误;请检查与您的MySQL服务器版本对应的手册,以获得在第1行使用“AS(Preco*2)”的正确语法

该怎么办呢。真的..。

我的MySQL版本是5.5.51-38.2

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-10-21 04:11:02

MySQL只支持版本5.7或更高版本q.v中生成的列。the 文档

从MySQL 5.7.6开始,CREATE支持生成列的规范。生成列的值是根据列定义中包含的表达式计算的。

但是,语法似乎是正确的,如果运行5.7或更高版本,则不会看到任何错误。

对于使用计算列的解决方法,您只需在PHP代码中的SELECT语句中计算产品。请记住,在您的表中有任何列,包括计算列,都有开销。如果您不确定您是否经常需要计算的金额,那么首先您可以反对更改您的表。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40168226

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档