问题标签 [varchar2]
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 - 以下描述的 char(3) 和 char(3 char) 之间的区别
声明 CHAR 或 VARCHAR2 变量时,为确保它始终可以容纳任何多字节字符集中的 n 个字符,请以字符形式声明其长度 — 即 CHAR(n CHAR) 或 VARCHAR2(n CHAR),其中 n 不超过 FLOOR (32767/4) = 8191。
我们从 FLOOR(8191) 获得的价值
java - 休眠 query.setString 不起作用
现在我在查询中使用 hql。代码是:
DB中的电话号码是varchar2(255 char),我使用Oracle DB。
但是这段代码不能在java代码中工作。如果电话号码是“999-000-0001”,它可以工作。我可以得到一个记录。但是如果电话号码是“USPersonal”,我就不会得到记录。
在Company.java 中,phoneNumber 是String,并且有get 和set 方法。
在 DB 中,我使用 Sql Developer,我可以获得以上所有内容。
我不知道,为什么会这样?setString 不起作用吗?
json - 用于存储 JSON 的 Oracle CLOB 的替代方案
CLOB
除了在 Oracle 10g中存储大量数据还有其他替代方法吗?我需要在此字段中存储的 JSON 文件的最大大小为 150Kb。我可以使用VARCHAR2
或NTEXT
用于此目的吗?如果需要避免使用CLOB
. 提前感谢您的帮助。
oracle - PL/SQL 选择多个 varchar2 为一个 varchar2
我是 pl-sql 的初学者,我正在尝试编写一个函数代码来读取课程名称并显示讲师名称、课程名称和与课程名称匹配的标题。
但是,不管我尝试过的不同方法,我都无法得到一个像样的输出,而且我得到了很多不同的错误,目前下面是能够编译但没有给出任何结果的代码。
谁能帮我完成这个功能并告诉我哪里出错了?
sql - 检查 varchar2 中的数字是否大于 n
我有一个 Varchar2 字段,它通常包含两个字母字符(例如ZH
, SZ
, AI
,...)。我们称之为FOO。
某些数据集保存A
或A1
-A9
到同一字段中。我需要选择所有行,除了那些。我使用该函数substr
将数字与A分开。到目前为止一切顺利,<
或者>
似乎无法与"number-string"一起正常工作。
如何在不将其转换为数字的情况下实现这一点?有更简单的解决方案吗?
我在互联网上没有找到任何东西,我自己尝试达到了极限。
到目前为止,这是我的WHERE 子句:
它无限制地返回所有行。
我找到的唯一解决方案:
但是,如果在未来的某个地方会有A1
- ,这并不是最优的A50
。我必须在WHERE 子句中添加 51 个字符串。而且,由于查询是在源代码中,代码的可读性也会变差。
该解决方案应该适用于 ORACLE和SQL Server。提前致谢
if-statement - 用空格填充的日期名称会阻止正确的行为
当确定日期在一周中的特定日期时,我试图进入 PLSQL 中的 if 条件。
问题是我无法让它工作。打印 v_huidigeDag 时,它在某些打印行中清楚地具有值“ZATERDAG”和“ZONDAG”。
看来,由于某种原因,当我打印日期名称的值时,程序会在其中添加空格。我猜它需要我的语言环境中最长的日期名称('DONDERSDAG')的字符长度。并且所有字符少于它添加空格的字符。所以 zaterdag 变为 = 'ZATERDAG' 并且 zondag 变为 = 'ZONDAG'。现在它正在工作,但有人知道防止这种情况的简单方法吗?
java - 将 varchar 加入 char 在 JPA(oracle)中不起作用
我有一个现有的数据库,两个表是基于一个字符串连接的。问题是一个表列被定义为 varchar2 而另一个是 char。Oracle 将用空格填充字符,而 varchar2 不会,因此当JPA尝试加入这两个时,一个有空格,一个没有,因此不满足相等性。
我怎样才能让加入JPA工作?是否有JPA注释可以解决问题?
sql - 将 listagg 函数限制为前 4000 个字符
我有一个查询,它使用该listagg
函数将所有行作为逗号分隔的字符串最终发送到一个大文本框。我收到以下异常:
ORA-01489: result of string concatenation is too long
我知道问题是正在运行以聚合数据的查询返回的行太多,以至于listagg
正在执行的字符串连接违反了 4000 个字符的限制。但是,对于我的用例,截断到前 4000 个字符是完全可以接受的。
我将如何从此处修改此示例查询以将“值”列限制为最多 4000 个字符?
SELECT LISTAGG(product_name, ', ') WITHIN
GROUP(
ORDER BY product_name DESC) "Product_Listing"
FROM products
你不能substr
绕过调用listagg' because
listagg throws the exception before
substr` 被调用过。
我在 SO 上看到了很多关于如何绕过 4000 个字符限制但不限制结果值的问题。
oracle - Oracle - 为表的每一行生成唯一的随机 varchar 值
我必须用随机值更新表中的“varchar2”列,但问题是该列是用“唯一”约束定义的,因此我收到“违反唯一约束”的错误消息。
有人可以帮忙吗?
谢谢
sql - 使用数据类型作为参数的列分离
我想知道是否有一种方法可以在具有各种数据类型列的表中选择特定数据类型表的列。假设一个表有三列 - SSN
,Name
以及phone number
where SSN
and Name
are of Varchar2
andphone number
是number
数据类型,我可以只提取其数据类型为varchar2
( SSN
and Name
) 的列吗?