0

在 Oracle 中,我有一个数据类型为 NUMBER 的表。我需要在即将创建的新行中插入一个字符串。其他行当然可以保留 NUMBER,因为通常这就是我需要在其中插入的内容。那么有没有办法用这样的字符串插入一个新行(这对我不起作用)?

INSERT INTO keyboard_learning (emplid,wpm,date_completed,exercise,attempt)
VALUES (seq_keyboard_learning.nextval,to_char('LEVEL 3'),'14-JUN-2012','Meteor typing blast',1)

我想创建一个新行,通常我会在 WPM 列的新行中放置一个数字,例如“23”。这次我想把'LEVEL 3'而不是数字23

4

1 回答 1

3

假设这WPMNUMBER我们正在谈论的列,不,没有办法在"LEVEL 3"不更改列定义的情况下将字符串插入到该列中。您可以将列转换为 a VARCHAR2,但是当您想像数字一样对待时,这会导致很多麻烦WPM(即,让它们按数字而不是字母顺序排序,计算百分比改进等)。

为什么要首先将字符串存储在WPM列中?问题似乎很可能是您需要一个新列,或者可能是数据模型中的一个新实体。

于 2012-06-14T15:21:11.907 回答