oracle varchar2 只能存数字,不能存英文和字母

简介: oracle varchar2 只能存数字,不能存英文和字母

今天又被自己蠢哭了

count1='lmk'
password1='lmk123'
sql1='insert into USERINFO1(USERCOUNT,PASSWORD) values ({0},{1})'.format(count1,password1)

报错

cx_Oracle.DatabaseError: ORA-00984: 列在此处不允许

数据库中明明是 varchar2 的类型,但是不可以存入 字母和汉字。手动添加倒是可以但是,写成python代码就不行了, 于是就各种折腾,最后发现如果要插入 字母或者 汉子的话,在两边加上 ‘ ’ 就可以了,修改后代码如下

count1='\'lmk\''
password1='\'lmk123\''
sql1='insert into USERINFO1(USERCOUNT,PASSWORD) values ({0},{1})'.format(count1,password1)

插入成功

相关文章
|
7月前
|
SQL Oracle 关系型数据库
Oracle查询优化-查询只包含数字或字母的数据
【2月更文挑战第4天】【2月更文挑战第10篇】查询只包含数字或字母的数据
872 1
|
7月前
|
Oracle 关系型数据库 数据库
Oracle查询优化-按照数字和字母混合字符串中的字母排序
【1月更文挑战第3天】【1月更文挑战第7篇】在对Oracle数据库进行查询优化,尤其是按照数字和字母混合字符串中的字母进行排序时,可以使用多种方法来达到预期的结果。
172 0
|
SQL Oracle 关系型数据库
oracle数据库中对汉字跟英文字母混合排序
oracle数据库中对汉字跟英文字母混合排序
100 0
|
Oracle 关系型数据库 数据处理
通过Oracle识别字符串中的中文or字母or数字来介绍全角半角转换函数(to_multi_byte/to_single_byte)在varchar/clob中的使用案例
在日常处理数据的过程中,大家肯定会遇到很多奇奇怪怪的字符,然后还要对这些字符处理,比如***你有个需求:识别字符串中的中文或是识别字母或是识别数字,甚至都识别出来然后剔除or保留某些字符汉字或数字***。 你去百度了一下相关问题,然后得到的结果大都是用正则 '\4E00' and '\9FA5'来识别中文范围用a-zA-z或0-9或[:digit:][:alpha:]来识别字母或数字。但是如果你的字符串中包含全角字符,那这样是识别不全的!!!那怎么做才能够正确的识别中文、字母、数字呢???那就要考虑先做全半
通过Oracle识别字符串中的中文or字母or数字来介绍全角半角转换函数(to_multi_byte/to_single_byte)在varchar/clob中的使用案例
|
存储 Oracle 关系型数据库
oracle blob和 varchar2互相转换,mybatis 读取blob乱码等相关问题总结
oracle blob和 varchar2互相转换,mybatis 读取blob乱码等相关问题总结
802 0
oracle blob和 varchar2互相转换,mybatis 读取blob乱码等相关问题总结
|
SQL Oracle 关系型数据库
|
SQL Oracle 关系型数据库
oracle中的char、varchar、varchar2
varchar2和varchar的目前没有区别,不过ocacle以后的版本就不支持varchar类型,如果想新版本的数据库兼容就不要用varchar,如果想和其它数据库兼容就不要用varchar2
1494 0

推荐镜像

更多