varchar2相关内容

PL/SQL 和 SQL 中 VARCHAR2 的最大大小是多少?

我使用的是 Oracle 10g.在要求中,我需要增加 pl/sql VARCHAR2 变量的大小.它已经是 4000 大小.我已阅读那 在 PL/SQL 中,VARCHAR2 可以达到 32767 字节.对于 SQL,限制是4000 字节 我可以增加这个变量的大小而不用担心 SQL 限制吗? 解决方案 查看官方文档(http://docs.oracle.com/cd/B193 ..
发布时间:2021-12-24 16:26:30 数据库

为什么oracle plsql varchar2 变量需要大小而参数不需要?

假设你有这个程序: PROCEDURE f(参数 VARCHAR2)是var VARCHAR2(10);开始var := '你好';结束 f; 我想了解为什么 var 需要指定长度,而 param 不需要.我很难在 oracle 文档中找到相关信息. 解决方案 “Oracle 数据库从调用过程的环境中导出参数的长度、精度和小数位数." 请查看此相关问题. 参考:Oracle ..
发布时间:2021-12-24 16:12:51 数据库

Oracle 无法将数据插入到 varchar2(4000 char) 列中

我使用 Oracle 12c.我的数据库中有下表. CREATE TABLE TEST_T (COL VARCHAR2(4000 CHAR)); 我需要在这个表中插入多字节字符.字符为 3 字节字符. 我只能在表中插入 1333 个(最多 3999 个字节)字符.我的期望是最多插入 1500 个多字节字符,但我得到 ORA - 01461. 我不想将数据类型更改为 CLOB 或 LONG. ..
发布时间:2021-06-13 18:37:21 数据库

Oracle中VARCHAR2的默认值是什么?

我的一个表中有一列类型为 varchar2(2000)的列,但这是否意味着 2000字节?或 2000个字符?因为我知道字节和字符之间有区别... 解决方案 默认值为会话的 NLS 参数之一,即 NLS_LENGTH_SEMANTICS .这是我可以从会话中检查的方法: 选择值从v $ nls_parameters其中参数='NLS_LENGTH_SEMANTICS';价值------字 ..
发布时间:2021-04-28 20:07:23 数据库

Oracle-如何处理变量中的32K +字符串长度

我正在使用oracle 11g.每当遇到大于varchar2大小限制的字符串时,在sql server中,我都会按照以下方式将数据拆分为多个变量,然后在执行时将它们联接.但是,Oracle似乎期望在执行之前合并大小为32K.我收到"ORA-20000:ORU-10028:行长溢出,每行限制32767字节"的错误. 我在oralce脚本(不存储过程)中使用这些变量.最后2条语句抛出上述错误,我 ..
发布时间:2020-07-13 18:54:20 数据库

无法求和(TO_NUMBER(varchar2字段)):ORA 01722 [ORACLE]

我将myfield作为varchar2类型,我尝试使用sum(to_number(myfield))对该字段求和,但结果是ORA-01722无效数字. 在发生此错误之前,我使用了SUM(TO_NUMBER(REGEXP_REPLACE(BIKOU,'[[:alpha:]]', ''))),它可以工作,但是上周我在myfield中放入了一个十进制值,因此该代码不再起作用. 这是我在myf ..
发布时间:2020-05-22 03:48:18 数据库

在Oracle中将Varchar2转换为Char数组

我有一个varchar2字段,想将其拆分为字符数组 就像'ABCDEF'->'A''B''C''D''E' 如何将字段值转换为chars数组? 解决方案 如果您实际上是指PL/SQL字符集合,则可以执行类似的操作 SQL> ed Wrote file afiedt.buf 1 declare 2 type char_arr is table of char(1) i ..
发布时间:2020-05-22 02:58:45 数据库

oracle中的varchar2排序如何工作?

我正在按Varchar2列对Oracle SQL查询进行排序.但是,当我得到结果时,我无法正确理解顺序.这是逻辑顺序.前较低的字母?数字?符号?在这里,我附上了其中一项测试的结果顺序: select FieldToOrder from MyTable order by FieldToOrder ASC FieldToOrder为VARCHAR2列 FieldToOrder: ..
发布时间:2020-05-22 02:27:29 数据库

前面包含数字时10g订购varchar列

我有一个Oracle 10g数据库,并且有一个VARCHAR2(2000个字符)列,可以将其命名为TEST,例如可以在前面包含数字: test 1test 3test 当我叫"...按TEST asc排序"或简称为"...按TEST排序" 我得到的结果像 test 1test 3test 但是我希望得到这样的结果顺序: 1test 3test test 所以编号 ..
发布时间:2020-05-22 02:11:35 数据库

Oracle varchar2到nvarchar2的转换

如果我在Oracle中将现有的列类型从varchar2更改为nvarchar2,Oracle会自动在字符集之间转换现有的列数据还是我自己做? 我正在使用Oracle 11g,varchar2字符集是WE8MSWIN1252,nvarchar2字符集是AL16UTF16 解决方案 您可以使用DBMS_REDEFINITION包将表的varchar2列更改为nvarchar2列 请 ..
发布时间:2020-05-22 01:48:57 数据库

比较VARCHAR2和CHAR的最佳方法

我正在寻找将VARCHAR2(50 BYTE)与CHAR(12 BYTE)进行比较的最佳(​​最快)方法. 有两个数据库,第一个包含带有CHAR列的table1(下划线表示填充CHAR长度的空格字符) ID VALUE 1 123-45___ 2 123-456__ 3 123-457__ 第二个数据库(表2)包含不带空格的VARCHAR2. ID VALUE ..
发布时间:2020-05-22 01:38:52 数据库

oracle将DD-MON-YY转换为DD/MM/YYYY

我正在尝试将varchar2列的格式从" DD-MON-YY "转换为" DD/MM/YYYY ". 例如:从" 01-JAN-16 "到" 2016年1月1日" 如果您可以提出要求或可能会有所帮助: "MON"部分是英语,但是我当前的NLS设置是土耳其语. 所有年份都在2000年以后. 我该怎么做? 预先感谢.. 解决方案 如果不提供NLS_DATE_LANGU ..
发布时间:2020-05-22 01:35:26 数据库

Oracle和SQL Server中的NVARCHAR之间有区别吗?

我们正在将一些数据从sql server迁移到oracle.对于在SQL Server中定义为NVARCHAR的列,我们开始在Oracle中创建NVARCHAR列,认为它们是相似的.但是看起来它们并不相似. 我已经阅读了关于stackoverflow的几篇文章,并希望确认我的发现. 如果数据库字符集为AL32UTF8(对于我们的情况如此),Oracle VARCHAR2已经支持unic ..
发布时间:2020-05-22 01:00:45 数据库

Oracle存储过程的varchar2输入的默认大小是多少,可以更改吗?

我在Oracle Database 10g中有一个存储过程,其中的输入是varchar2,但是在输入字符串很长(不确定确切长度可能> 8000)时,我无法运行该存储过程. 我的想法是"intext varchar2"(如下所示)默认情况下太小.在需要更长字符串的其他情况下,我可以将varchar2定义为"intext2 VARCHAR2(32767);".我尝试在下面的代码中类似地定义大小, ..
发布时间:2020-05-22 00:31:30 数据库

Oracle的NLS_NCHAR_CHARACTERSET和NLS_CHARACTERSET之间的区别

我在这里有一个快速的问题,我想知道两者之间的区别 oracle中的NLS_NCHAR_CHARACTERSET和NLS_CHARACTERSET设置?? 根据我的理解, NLS_NCHAR_CHARACTERSET用于NVARCHAR数据类型 对于NLS_CHARACTERSET,将用于VARCHAR2数据类型. 我尝试在开发服务器上对此进行测试,目前我对CHARACTERSET的设置如 ..
发布时间:2020-05-22 00:11:41 数据库