做多选功能时为了简便,会在某个字段中存储多个值,保存时虽然省事,但后续的查询统计时还需要拆分数据才行,因此这时需要将字段内的值分成多行以便后续使用. 下面这个例子实现了字段内数据的拆分: --创建测试表 create table t_test( t_type_id ) primary key,--主键 t_type_name ),--类型名称 t_text )--类型内容 ); --写入数据 insert all ','家具','桌子,椅子,沙发,柜子,床') ','设备','显示器,电脑,鼠标…
mysql根据逗号将一行数据拆分成多行数据 原始数据 处理结果展示 DDL CREATE TABLE `company` ( `id` ) DEFAULT NULL, `name` ) DEFAULT NULL, `shareholder` ) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; DML ', '阿里巴巴', '马云'); ', '淘宝', '马云,孙正义'); 三种方式,相同的原理 使用MySQL库中的自增序列表 SELECT…
使用PLSQL-Developer工具可以快速便捷地完成Oracle数据库用户.表的备份恢复. Oracle数据库用户数据完整备份与恢复 1. 备份 1.1   PL/SQL->工具->导出用户对象,选项如图 常用的用户对象包括: TABLE,SEQUENCE,VIEW,PACKAGE,TYPE,FUNCTION,PROCEDURE,PACKAGE BODY,TREGGER 选择需要导入的用户对象,导出.sql文件,此步骤导出的是建表语句,包括存储过程.触发器.视图等 . 1.2  PL/SQ…
遇到了使用mybatis向oracle数据库插入数据异常的问题, 具体的报错如下:org.springframework.jdbc.UncategorizedSQLException: ### Error updating database.  Cause: java.sql.SQLException: ORA-01461: 仅能绑定要插入 LONG 列的 LONG 值 mybatis的脚本如下: <insert id="insertInfos" parameterType=&q…
cxGrid连接Oracle数据库 实现数据的增删改查 cxGrid连接Oracle数据库 1:通过OraSession连接数据库.OraDataSet实现OraSession和OraDataSource的连接,OraDataSource绑定cxGrid: 2:按如下1.2.3.4实现cxGrid字段与数据库表/视图字段的绑定: 通过数据库表增删改查 OraQuery优先做如下配置: 1:查询 OraQuery做如下配置: select * from tablename t where 1=1;…
利用SQl对数据库实行数据拆分与组合实现提供以下几种方案: 方法一: WITH CTE AS (SELECT A.Id,A.[Uid],UserName FROM (SELECT A.[id], REPLACE(Split.a.value('.', 'NVARCHAR(max)'),'''','') AS [Uid]FROM (SELECT [id], CAST ('<M>' + REPLACE(Uid, ',', '</M><M>') + '</M>' A…
oracle数据库删除数据Delete语句和Truncate语句的对比 当表中的数据不需要时,则应该删除该数据并释放所占用的空间,删除表中的数据可以使用Delete语句或者Truncate语句,下面分别介绍. 一.delete语句 (1)有条件删除    语法格式:delete [from]  table_name  [where condition]; 如:删除users表中的userid为‘001’的数据:delete from users where userid='001'; (2)无条…
oracle将表数据导出成excel文件的方法 1)在SQL窗体上,查询需要导出的数据 --查询数据条件-- ; 结果视图 2)在查询结果的空白处,右键选择Copy to Excel 3) 查看导出excel文件(记录没全部截图) 导出文件路径默认在C:\Users\Administrator\AppData\Local\Temp下 4)点击另存为桌面的excel文件 参考网址: https://jingyan.baidu.com/article/08b6a591a7969514a8092299…
spring BasicDataSource 数据源配置 sqlserver数据库 oracle数据库 mysql数据jdbc配置 jdbc.properties 文件信息如下: ----------------------oracle数据库配置 ------------------------------ driverClassName=oracle.jdbc.driver.OracleDriver url=jdbc:oracle:thin:@localhost:1521:orcluname=…
sqlserver将数据库的数据导成excel文档方法 最近公司需要下载uniport的数据跟之前的数据进行对比,所以避免不了需要将数据库的数据导出来,把SQLServer表中的数据导出为Excel文件有两种方式. 针对SQLServer2005或者SQLServer2008.SQLServer2008 R2 方法一:对于会写查询SQL语句的则是直接写查询语句查询出结果.如下图: 接下来到桌面新建一个空的excel文件. 接下来回到SQLServer查询界面.鼠标右键点击查询结果的左上角空白列,…
C#连接Oracle数据库可以实现许多我们需要的功能,下面介绍的是C#连接Oracle数据库查询数据的方法,如果您对C#连接Oracle数据库方面感兴趣的话,不妨一看. using System; using System.Collections.Generic; using System.ComponentModel using System.Data.OracleClient;;//这行和下一行都要先在引用中填加system.data.oracleclient using System.Da…
Oracle数据库中调用Java类开发存储过程.函数的方法 时间:2014年12月24日  浏览:5538次 oracle数据库的开发非常灵活,不仅支持最基本的SQL,而且还提供了独有的PL/SQL,除此之外,还可以用时下最流行的编程语言Java来做开发.随着对oracle的了解越来越多,越来越禁不住oracle的诱惑,oracle技术真的是一门很有趣的学问.之前,我在博客中总结了挺多有关SQL.PL/SQL的,但是对于oracle数据库中Java类的调用却没有总结,也是因为之前不太会,这会儿总…
目前Oracle 数据库大概有26个字段类型,大体分为六类,分别是字符串类型.数字数据类型.日期时间数据类型.大型对象(LOB)数据类型.RAW和LONG RAW数据类型.ROWID和UROWID数据类型.当然Oracle还提供用户自定义的数据类型,但在我这篇不做讨论.=============== 字符串类型===============Charchar数据类型存储固定长度的字符值.一个CHAR数据类型可以包括1到2000个字符.如果对CHAR没有明确地说明长度,它的默认长度则设置为1. 如果…
在我们很多情况下的开发,为了方便或者通用性的考虑,都首先考虑SQL Server数据库进行开发,但有时候客户的生产环境是Oracle或者其他数据库,那么我们就需要把对应的数据结构和数据脚本转换为对应的数据库,数据结构一般来说,语法都遵循了SQL92的标准,或者我们根据不同的PowerDesigner文件进行生成对应的结构脚本即可,但是实际数据的脚本我们就需要进行一定的处理,以及文本的替换处理了,本文结合Notepad++的文本正则表达式替换,实现一些如日期较为特殊的数据脚本调整,把它从SQL S…
简介 目前Oracle 数据库大概有26个字段类型,大体分为六类,分别是字符串类型.数字数据类型.日期时间数据类型.大型对象(LOB)数据类型.RAW和LONG RAW数据类型.ROWID和UROWID数据类型.当然Oracle还提供用户自定义的数据类型,但这里不做讨论. 字符串类型 CHAR CHAR数据类型存储固定长度的字符值.一个CHAR数据类型可以包括1到2000个字符.如果对CHAR没有明确地说明长度,它的默认长度则设置为1. 如果对某个CHAR类型变量赋值,其长度小于规定的长度,那么…
1.说明 Oracle数据库导入csv文件, 当csv文件较小时, 可以使用数据库管理工具, 比如DBevaer导入到数据库, 当csv文件很大时, 可以使用Oracle提供的sqlldr命令行工具, 能够快速导入大量数据. 在数据库之间进行数据迁移时, 特别是不同类型的数据库, 使用csv文件是一种很好的选择. 2.sqlldr用法 下面介绍sqlldr用法, 有一个USER_INFO.csv文件, 需要导入到数据库中USER_INFO表, 而且有1.5亿条数据, 要求导入耗时尽量小. 这里先…
oracle数据库中,数据的增.删.改.查,通过SQL语句实现 SQL:结构化查询语言: 特点:不区分大小写:字符串用单引号引起来:语句结束用分号表示结束: 行注释,在语句的最前面加"--" 块注释,分别在语句的前后加    /*  和  */ SQL中常用的几类: 一.数据定义语言 DDL:创建.修改.删除数据库语言. create table Student ( sno varchar2(3) not null, sname varchar2(8) not null, ssex v…
学习数据库时,我们只是以学习的态度,考虑如何使用数据库命令语句,并未想过工作中,如果误操作一下,都可能导致无可挽回的损失.当我在工作中真正遇到这些问题时,我开始寻找答案.今天主要以oracle数据库为例,介绍关于表中数据删除的解决办法.(不考虑全库备份和利用归档日志) 删除表中数据有三种方法:·delete(删除一条记录)·drop或truncate删除表格中数据 1.delete误删除的解决方法    原理:利用oracle提供的闪回方法,如果在删除数据后还没做大量的操作(只要保证被删除数据的…
1.使用update进行数据更新 1)最简单的更新 update tablea a set a.price=1.00 2)带条件的数据更新 update tablea a set a.price = 2.00  where  a.id='02' 3)两张表关联更新为固定值 update tablea a set a.price =3.00 where exits(select 1 from tableb b where a.id=b.id) 将a,b相同id的 a表的price 字段更新为 3.…
打开要导出数据的PC,进入cmd界面 先进入数据库输入sqlplus,账号system密码508956.有权限的账户密码 2. create directory dir_555 as 'd:/asd169'; 到随便一个地方创建一个文件夹,随便起名asd169(不要有中文),自己手动创建 给文件夹一个DIR名字,这里是dir_555 输入Grant read,write on directory dir_555 to kbstest54; 给用户读写权限 回到CMD,不要在SQL模式下 expd…
创建表 建表语法: CREATE TABLE 表名 ( 列1 数据类型 [primary key], 列2 数据类型 default 默认值 [not null], …, constraint 约束名 约束类型(列), … ) / 例如,创建学生信息表: --创建表 CREATE TABLE INFOS( STUID VARCHAR2(7) NOT NULL, --学号 学号=‘S’+班号+2位序号 STUNAME VARCHAR2(10) NOT NULL, --姓名 GENDER VARCH…
这段时间负责某个项目开发的数据库管理工作,这个项目中开发库与测试数据库分离,其中某些系统表数据与基础资料数据经常需要进行同步,为方便完成指定数据表的同步操作,可以采用dblink与merge结合的方法完成,简单方便. 操作环境: 此Oracle数据库服务器ip为192.168.196.76,有center与branch两个库,一般需要将center的表数据同步到branch,center为源库,branch为目标库,具体步骤如下: 1.在源库创建到目标库的dblink create databa…
wpf应用调用oracle的存储过程,出错“ORA-06550:参数个数或参数类型出错”,如下图: 反复检查,存储过程的参数个数和参数类型都没错,觉得非常蹊跷.最后终于解决, 原因是当参数的值为null时要传入DBNull.Value,如下图: 总结: 如果是sql server数据库,字段是可空的字段,当传入参数是null,这样传值是可以成功插入到数据库的. 但是oracle数据库,传入参数是null,则需传入DBNull.Value,如下图:…
问题: oracle数据库,通过接口插入的中文数据乱码,中文变成了问号??? 解决方案: 计算机=>属性=>高级系统设置=>环境变量=>新建 变量名:NLS_LANG 值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK 此随笔乃本人学习工作记录,如有疑问欢迎在下面评论,转载请标明出处. 如果对您有帮助请动动鼠标右下方给我来个赞,您的支持是我最大的动力.…
在Oracle数据库中进行排序.分组汇总.索引等到作时,会产生很多的临时数据.如有一张员工信息表,数据库中是安装记录建立的时间来保存的.如果用户查询时,使用Order BY排序语句指定按员工编号来排序,那么排序后产生的所有记录就是临时数据.对于这些临时数据,Oracle数据库是如何处理的呢? 通常情况下,Oracle数据库会先将这些临时数据存放到内存的PGA(程序全局区)内.在这个程序全局区中有一个叫做排序区的地方,专门用来存放这些因为排序操作而产生的临时数据.但是这个分区的容量是有限的.当这个…
--备份数据库--数据库系统用户账号system/adminuser --查看oracle数据库的用户select * from all_users;--查看oracle数据库的版本号select * from v$version; 备份数据 sqlplus adminuser/adminuser@ip/jnbase --可以看出oracle的版本号 version=10.2.0.1.0exp adminuser/adminuser@ip:1521/jnbase file=f:\nihao.dm…
之前公司一直都使用sql server 即使数据库字段名称与实体类名称不相同 可以使用诸如: select id as userId from tb_user 这种写法,可换到了oracle 之后坑爹的事情发生了,如果还按照上方的写法,属性值就是映射不进去,所以目前找到的解决办法只有使用 <resultMap>来帮助映射: <!-- 获得查询条件--> <select id="getQueryBean" parameterType="com.Qu…
环境: hadoop-2.7.5 sqoop-1.4.7 zookeeper-3.4.10 hive-2.3.3 (使用mysql配置元数据库) jdk1.8.0_151 oracle 11.2.0.3.0 经过一番baidu,总算初步成功,现在记录一下中间过程. 1.拷贝hive/conf/hive_site.xml到sqoop/conf目录2.配置sqoop-evn.sh,将变量设置为对应的目录. export HADOOP_COMMON_HOME=/home/hadoop/hadoop-2…
需求 项目需求从字段2位小数,改成3位小数,这事儿好办,数据库噼里啪啦敲了一行代码,发现居然报错,原因是不能修改字段精度问题,然后使用了冒泡排序,搞定 --新增临时字段 ,); --将原字段内容拷贝至新字段 UPDATE Real_Proj_Section SET WEIGHT2=WEIGHT --删除原先字段 alter table Real_Proj_Section drop column WEIGHT --新增原先字段 ,); --给原先字段加备注 comment on column Re…
信息安全考虑,有时需要对用户名称进行数据脱敏. 针对Oracle数据库,进行取数数据脱敏处理 脱敏规则: 长度小于9个字符,只保留前3个汉字与后3个汉字,中间全部由*填充. 长度9个字及以上及奇数,隐去中间3个字:长度10个字及以上及奇数,隐去中间4个字. 例如: 公司名称:宇宙无敌厉害的超级大公司的杭州分公司 字段长度:18 脱敏后:宇宙无敌厉害的****司的杭州分公司 可实现的正确答案: select t.no, ---公司编号 ,),length(t.name)),) -------公司名…