问题标签 [virtual-column]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
oracle - 在gorm grails中保存带有虚拟列的实体
所以,在我的应用程序中,我有一个带有虚拟列的实体。该列的值取决于我在另一列中保存的内容。
保存时出现以下错误:
java.sql.BatchUpdateException: ORA-54013: 在虚拟列上不允许插入操作
这是因为我在该字段上发送一个空值。
有人知道如何在gorm中映射虚拟列吗?
谢谢
sql - 从查询派生的 Oracle 11g 虚拟列
是否可以根据对另一个表的查询创建虚拟列?- 类似于以下内容
如果需要,我可以在示例中更深入地介绍,
java - 有什么方法可以检查java中的列是否是虚拟的?
我想知道是否有任何方法可以检查表中的列在java中是否是虚拟的?我在那里尝试 ResultSetMetaData 没有运气:
我需要检查它是否是一个虚拟列,以便知道我是否应该插入/修改它,有什么想法吗?
oracle - Oracle 虚拟列、日期和时间戳
我在 Oracle 中有一个问题,有一个虚拟列(我需要从日期列开始的时间戳);这是我的例子:
获取数据的问题在哪里?我尝试了很多格式掩码,但没有任何帮助......
oracle - 连接虚拟列表达式中的数字引发 ORA-12899: value too large for column
虽然我昨天对一个问题给出了这个答案,但我建议使用虚拟列来计算值,而不是手动更新它。
我自己做了一个测试,发现了连接两个NUMBER类型列时虚拟列表达式所占用的数据大小的问题。但是,连接两个字符时没有问题。
数据库版本:
测试用例 1:连接字符串
因此,连接两个字符类型列没有问题。
测试用例 2:连接数字
不允许?哼!让我们增加尺寸 -
那么现在发生了什么?表已经创建,但是为什么VIRTUAL COLUMN在预期的数据大小只有 3 个字节时占用这么大的大小,但它需要81 个字节。
检查长度,值是正确的,但是,数据量要大得多。例如,我希望长度为 3,因此我将列的大小声明为 10 个字节。但是虚拟列表达式产生的值远不止于此。
任何见解都非常受欢迎。
UDPATE感谢 Alex Poole。我没有考虑隐式转换,所以我不关心显式 CAST 表达式。所以,下面的作品 -
mysql - 如何使用 MySQL SELECT 创建具有多个值的虚拟列?
我可以将虚拟列添加为
但我想添加多个值,例如:
但这不起作用
sql - 如何使用日期和序列号创建字母数字序列
我想在 oracle 中创建一个字母数字序列。表名是rel_details
它由四列组成。
在rel_id
我想生成像REL230420151001
REL
是一个字符串,
23042015
是今天的日期,
1001
是一个起始数字。
如何创建此类型序列。
oracle - ora-01733 此处不允许使用虚拟列
我有一个变量,vTipoIdCompartido,报告了一个列的名称。但似乎你不能那样做,因为每次我使用它时,它都会给我错误“ora-01733 virtual column not allowed here”。我必须做不同的事情吗?
mysql - 如何在 MySql 中选择一个列表作为虚拟列?
我知道我可以使用
但我需要将数字列表作为一列返回。就像是
更确切地说,我需要做
有人知道我该怎么做吗?
****编辑****
让我更详细地解释我的问题,也许您可以提出一种不同的方法来解决它。
我有下表
我需要构建一个返回如下内容的查询:
目前我正在使用子查询来获取结果,但我遇到了性能问题。
mysql - 如果目标列具有生成的列,则 INSERT INTO ... SELECT
有一些表:
我将一行从复制asource
到adestination
:
上面会产生一个错误:
好的,要求我提及生成的查询很奇怪。但是好的,我将该列添加到查询中:
这在 5.7.10 中运行良好。但是,它会在 5.7.11 中生成错误(由于修复:
好的,下次试试:
但仍然是同样的错误。我尝试了 0、TRUE、FALSE,但错误仍然存在。
声明为唯一允许的值(规范或文档)的默认值。但是,以下会产生语法错误(此处不支持 DEFAULT):
那么,如果目标表添加了一些列,其中一些列是生成的,我如何使用 INSERT INTO ... SELECT 将行从一个表复制到另一个表?
调用此查询的代码是通用的,并且不知道特定表具有哪些列。它只知道目标表有哪些额外的列。源表是活动表,目标表是源表的历史版本。它有一些额外的列,例如用户 ID 进行了更改,更改的类型(插入、更新、删除)等。