一.问题说明 在处理数据的时候,需要判断某个字段字符串中是否有中文,若有则取出中文. 二.解决办法 首先如何判断某个字段字符串中是否有中文.这里介绍三种方法: 1.采用ASCIISTR函数 说明:ASCIISTR函数用于返回字符的ASCII形式的字符串:非ASCII的字符被转化为\xxxx的形式.换句话说:如果字符中包含中文,则必定会有\xxxx的字符. 所以,我们直接利用ASCIISTR函数匹配'\'即可判断. 2.采用length和lengthb的原理 说明:中文下length返回的是字符个…
最近做ogg数据同步,然后触发器加工数据放入另外一张表,由于数据量很大,一分钟几万条数据,由于一些条件字段类型不匹配,引起ogg阻塞,比较头大.最后分析发现性能问题.请看下图: phmxxh是varchar2类型,note_id是integer类型,用to_char转换以后,性能提高60倍以后注意避免这样的问题 更多交流请加微信[qingmiaogu]青苗谷…
select * from tabell(表名) where asciistr(字段) like '%\%';…
declare v_cnt number; begin select count(*) into v_cnt from dba_tab_columns where table_name='T_IDC_FUNCTION' and column_name='TEST1'; then execute immediate 'alter table t_idc_function add test1 varchar(40)'; null;--IF语句里面必须至少一行SQL语句,所以当没有任何语句的时候,可以…
目前Oracle 数据库大概有26个字段类型,大体分为六类,分别是字符串类型.数字数据类型.日期时间数据类型.大型对象(LOB)数据类型.RAW和LONG RAW数据类型.ROWID和UROWID数据类型.当然Oracle还提供用户自定义的数据类型,但在我这篇不做讨论.=============== 字符串类型===============Charchar数据类型存储固定长度的字符值.一个CHAR数据类型可以包括1到2000个字符.如果对CHAR没有明确地说明长度,它的默认长度则设置为1. 如果…
Oracle修改字段名 alter table 表名 rename column 旧字段名 to 新字段名 Oracle修改字段类型和长度 alter table 表名 modify 字段名 数据类型 如果是修改数据类型比如由varchar2修改为int且字段内有值,会报如下错误 解决方法参考:http://blog.csdn.net/itmyhome1990/article/details/8681206 出处:http://blog.csdn.net/itmyhome1990/article…
Oracle改动字段名 alter table 表名 rename column 旧字段名 to 新字段名 Oracle改动字段类型和长度 alter table 表名 modify 字段名 数据类型 假设是改动数据类型比方由varchar2改动为int且字段内有值,会报例如以下错误 解决方法參考:http://blog.csdn.net/itmyhome1990/article/details/8681206 出处:http://blog.csdn.net/itmyhome1990/artic…
C#反射实现   一.反射概念: 1.概念: 反射,通俗的讲就是我们在只知道一个对象的内部而不了解内部结构的情况下,通过反射这个技术可以使我们明确这个对象的内部实现. 在.NET中,反射是重要的机制,它可以动态的分析程序集Assembly,模块Module,类型Type等等,我们在不需要使用new关键的情况下,就可以动态 创建对象,使用对象.降低代码耦合性提高了程序的灵活性.那么,反射是怎么实现的呢?它的内部实现依赖于元数据.元数据,简单来说,在 公共语言运行时CLR中,是一种二进制信息,用来描…
简介 目前Oracle 数据库大概有26个字段类型,大体分为六类,分别是字符串类型.数字数据类型.日期时间数据类型.大型对象(LOB)数据类型.RAW和LONG RAW数据类型.ROWID和UROWID数据类型.当然Oracle还提供用户自定义的数据类型,但这里不做讨论. 字符串类型 CHAR CHAR数据类型存储固定长度的字符值.一个CHAR数据类型可以包括1到2000个字符.如果对CHAR没有明确地说明长度,它的默认长度则设置为1. 如果对某个CHAR类型变量赋值,其长度小于规定的长度,那么…
oracle基本操作,Oracle修改列名,Oracle修改字段类型 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ©Copyright 蕃薯耀 2017年3月16日 http://www.cnblogs.com/fanshuyao/ --修改列名 alter table "KFAPP&…
oracle修改字段类型由varchar2修改为clob类型 http://blog.sina.com.cn/s/blog_9d12d07f0102vxis.html…
在oracle修改user表字段name类型时遇到报错:“ORA-01439:要更改数据类型,则要修改的列必须为空”,是因为要修改字段的新类型和原来的类型不兼容. 如果要修改的字段数据为空时,则不会报这种类型的错误,可以进行字段类型的修改. alter table user modify (name varchar2(20)); 要修改字段的新类型和原来的类型不兼容时,可以通过如下方式解决该问题: 1.修改原字段名name为临时字段name_new: alter table user renam…
RT,在oracle中,写SQL时,假设这个字段为STA Char(3),判断这个字段是否为空一般都是这两个:STA = '' or STA is null 但是今天这两种方法失效了,无论是STA = '' 还是STA is null 都无法查询到那笔记录.到数据库一看,该字段的确为空,但是由于这个字段是CHAR类型的,所以多了3个空格. 既然有空格那么用:trim(STA) = '' 这个条件能查到吗?还是不行.没办法了,那么只能用:STA = ' '(注意中间有个空格) 这个条件能查了,果然…
-- 获得存储过程创建语句 select o.xtype,o.name,cm.text from syscomments cm inner join sysobjects o on o.id=cm.id where xtype ='p' order by o.xtype,o.name,cm.text -- 获得视图程创建语句 select o.xtype,o.name,cm.text from syscomments cm inner join sysobjects o on o.id=cm.i…
获取表名:  Oracle的user_talbes用于记录了用户表信息. select * from user_tables  获取某个表的字段: USER_TAB_COLS中记录了用户表的列信息.下面是别人写的: SELECT USER_TAB_COLS.TABLE_NAME as 表名,USER_TAB_COLS.COLUMN_NAME as 列名 , USER_TAB_COLS.DATA_TYPE as 数据类型, USER_TAB_COLS.DATA_LENGTH as 长度, USER…
数据库版本号:select * from v$version 数据库名:select * from v$instance 注意: 我在C#项目中查询语句的时候报“ORA-00911: 无效字符” 的错误,原因竟然是在查询语句后面多了个分号“:”的原因,分号在plsql中属于正常,在项目中则属于无效字符,希望可以给大家提醒. 参考出处:http://www.cnblogs.com/zhangronghua/archive/2007/08/29/874484.html 使用关键字作为字段名: 1:使…
Oracle中Blob和Clob类型 1.Oracle中Blob和Clob类型的区别 BLOB和CLOB都是大字段类型,BLOB是按二进制来存储的,而CLOB是可以直接存储文字的.其实两个是可以互换的的,或者可以直接用LOB字段代替这两个.但是为了更好的管理ORACLE数据库,通常像图片.文件.音乐等信息就用BLOB字段来存储,先将文件转为二进制再存储进去.而像文章或者是较长的文字,就用CLOB存储,这样对以后的查询更新存储等操作都提供很大的方便. 2.Oracle中Blob和Clob类型的区别…
Mysql查找如何判断字段是否包含某个字符串   有这样一个需求,在Mysql数据库字符串字段(权限)中,用户有多个不同的邮箱,分别被‘,’分开,现在要取出某个邮箱的所有成员列表.   假设有个表:   ? 1 CREATE TABLE users(id int(6) NOT NULL AUTO_INCREMENT,PRIMARY KEY (id),user_name VARCHAR(20) NOT NULL,emails VARCHAR(50) NOT NULL); 初始化表,并添加些记录.…
sqlserver 若字段定义的类型为datetime,插入为''(空),那么会默认值为1900-01-01 00:00:00.000 解决 插入 NULL 或者程序判断…
一.系统表: 1.User_Tables:存储用户下的所有表的信息: 2.dba_tables:存储管理员权限下的所有表的信息: 3.all_tables:存储所有表的信息. 4.all_Tab_Columns:存储所有表的所有字段的信息 二.判断对象是否存在 1.判断表 我们只能通过使用select count(*) 的方式判断当前表是否存在,返回1则代表存在,0则代表不存在,例如: SELECT COUNT(*) FROM User_Tables WHERE table_name = 'CO…
转载:https://www.cnblogs.com/itmyhome/p/4131339.html Clob类型转换成String类型 oracle中表结构如下: create table GRID_RESOURCE ( ID         VARCHAR2(50), CNNAME     VARCHAR2(50), TYPE       VARCHAR2(50), PARENTID   VARCHAR2(50), VIEWWIDTH  VARCHAR2(50), REQUESTURL VA…
查询某字段长度超过一定长度时的方法, MongoDB中可能不好处理,一般这样: db.test.find({ $where:"this.F_DAQDATA.legnth>600" }); 但用$where查询时性能可能不太好,在网上搜索之后,发现使用正则可能会更好,同时判断字段是否存在: db.test.find({ F_DAQDATA: { $type:2, // 字段类型为2,表示有此字段,或者用: $exists: true $regex: /^.{600,}$/ // 长…
Django---ORM的常用字段和自定义字段,DjangoORM字段与数据库类型对应,字段参数和Meta的参数,Django的admin操作,13中orm操作方法,单标的双下方法 一丶ORM常用字段和自定义字段 常用字段 AutoField # 主键 自增的整形字段,必填参数primary_key=True,则成为数据库的主键.无该字段时,django自动创建. 一个model不能有两个AutoField字段. CharField # 字符串 字符类型,必须提供max_length参数.max…
-- 获得存储过程创建语句 select o.xtype,o.name,cm.text from syscomments cm inner join sysobjects o on o.id=cm.id where xtype ='p' order by o.xtype,o.name,cm.text -- 获得视图程创建语句 select o.xtype,o.name,cm.text from syscomments cm inner join sysobjects o on o.id=cm.i…
PATH_SEPARATOR是php中的一个预定义常量,我们可以直接echo这个常量,在linux系统中,该常量输出":",在windows系统中,该常量输出";"号.因此,我们可以通过PATH_SEPARATOR输出值来判断当前服务器系统类型. 在linux系统中输出结果: <?php var_dump(PATH_SEPARATOR ); //输出结果:string(1) ":" ?> 在windows系统中输出结果: <?p…
--SQL 判断字段值是否有中文 create  function  fun_getCN(@str  nvarchar(4000))    returns  nvarchar(4000)      as      begin      declare  @word  nchar(1),@CN  nvarchar(4000)      set  @CN=''      while  len(@str)>0      begin      set  @word=left(@str,1)      i…
mysql语句中把string类型字段转datetime类型   在mysql里面利用str_to_date()把字符串转换为日期   此处以表h_hotelcontext的Start_time和End_time字段为例,查询当前 时间在此范围之内的数据.  www.2cto.com     select * from h_hotelcontext where now() between STR_TO_DATE (Start_time,'%Y-%m-%d %H:%i:%s') and STR_T…
原文地址:SQL 判断字段中指定字符出现的次数 原理:将指定字符转换为空,原长度减去转换后的长度就是指定字符的次数. 在做数据处理时遇到一个SQL操作的问题就是有一列关键词字段,字段中包含各种乱七八糟的字符,其中有一个双引号“ 是关键词中不需要的,所以需要去掉,而一般只有带两个”的才需要去除,所以首先得先找到含有双引号的且双引号出现两次的值,然后删除.这里提取指定符串在 字段中的出现次数SQL为: select   *   from   google_keyword    where   len…
select * from user_lobs where table_name='WX_MAIL';--SYS_LOB0001313121C00015$$ MB FROM user_segments WHERE segment_name='SYS_LOB0001313121C00015$$'; WX_MAIL有一个content字段为clob类型,保存了邮件的内容,导致数据过大,平均每个content大小为40K.180多W条数据,数据占了60G容量, 上面的SQL为查询所占容量.为此,解决方…
(转载)http://www.th7.cn/db/mysql/201306/31159.shtml 有这样一个需求,在Mysql数据库字符串字段(权限)中,用户有多个不同的邮箱,分别被‘,’分开,现在要取出某个邮箱的所有成员列表. 假设有个表: ) ) ) NOT NULL); 初始化表,并添加些记录. truncate table usersINSERT INTO users(user_name, emails) VALUES('小张','a@email.com,b@email.com,c@e…