当前位置: 首页 > 面试题库 >

如何将dataype CLOB更改为VARCHAR2(sql)

竺鸿骞
2023-03-14
问题内容

表:客户

ID      NAME             DATATYPE
NUMBER  VARCHAR2(100)    CLOB

我想将DATA列从更改CLOB为`VARCHAR2(1000)

我尝试ALTER TABLE customers MODIFY DATA VARCHAR2 (1000)

ALTER TABLE customers MODIFY (DATA VARCHAR2 (1000))

alter table customers  modify
(data VARCHAR2(4000))

如果数据类型不是Clob,但通常会正常工作,但ORA-22859由于我使用的是oracle toad / apex,所以我得到了。


问题答案:

您可以尝试以下方法:

  1. 添加一个新列作为varchar2

alter table my_table add (new_column varchar2(1000));

  1. 将UPDATE CLOB名称更新为varchar2列;

update my_table set new_column=dbms_lob.substr(old_column,1000,1);

经过 测试数据

  1. DROP CLOB列

alter table my_table drop column old_column

  1. 将varchar2列重命名为CLOB列名

alter table my_table rename column new_column to old_column



 类似资料:
  • 问题内容: 根据以下我用于常规mysql的代码,如何将其转换为使用mysqli? 像更改为一样简单吗? 问题答案: 首先要做的可能是将每个函数调用都替换为等效函数,至少在您愿意使用过程式API的情况下-考虑到您已经有一些基于MySQL API的代码,这将是更简单的方法是一种程序性的。 为了解决这个问题,“ MySQLi扩展功能摘要” 绝对是有用的。 例如: 将被替换 将被替换为和/或,具体取决于上

  • 我是一个超级初学者与Android Studio。我正在尝试打开相册并获取图像,startActivityForResult()已被弃用。如何使用ActivityResultLauncher更改代码?

  • 问题内容: 我有一个表,其中有一个名为的列。其数据类型为。 我想对这一栏进行总结。 总计=> 如何使用ANSI SQL或Oracle SQL执行此操作? 问题答案: 您可以使用来分隔小时,分钟和秒,然后将其向上,最后使用function将其转换为type。

  • 我甚至尝试过直接分配 得到同样的结果。 编辑

  • 问题内容: 我需要帮助,下面是一个很小的非常基本的正则表达式,用于对电子邮件进行某种程度的验证,我的确意识到它不能发挥最大的作用,但就我的需求而言,现在可以了。 它当前使用PHP的 eregi函数 ,而php.net则说它现在已弃用,我应该改用 preg_match ,用 preg_match 代替erei不能用,有人可以告诉我如何使它工作吗? 问题答案: Perl风格的正则表达式模式始终需要定界

  • 问题内容: 假设我有以下QueryDict: 我想要一本这样的字典,例如: (我不在乎Unicode符号是否u继续存在。) 如果这样做queryDict.dict(),那么django网站建议,我将丢失属于的额外值var1,例如: 我正在考虑这样做: 有没有更好的办法? 问题答案: 这应该工作: