
db2
bfhai
ETL
展开
-
db2 存储过程使用动态sql传递日期参数时报SQLCODE=-401,SQLSTATE=42818
--创建测试表create tale test1(id int,transdate date);--复制测试表create table test2 like test1;--测试存储过程create procedure proc_test()dynaminc result sets 1 language sqlbegin declare v_date date; declare v_sql varchar(5000); set v_date='202.原创 2020-10-28 16:57:27 · 1688 阅读 · 0 评论 -
db2中处理半个汉字乱码
解决思路:汉字是由两个字节存储的,每个字节的数值都>127。把字符串按字节顺序截取,当出现第一个字节是>127,但是后面一个字节是<127的这种情况,就丢弃掉。CREATE FUNCTION IDM.FUN_DEAL_GARBARGE(INVALUE VARCHAR(4000) RETURN VARCHAR(4000) LANGUAGE SQL BEGIN DECLARE OUTVALUE varchar(8000); --输出变量原创 2020-10-19 09:57:42 · 1697 阅读 · 1 评论 -
db2存储过程中使用游标同步数据
call SYSPROC.ADMIN_CMD('load from (select * from table1) of cursor replace into table2')原创 2020-06-02 16:35:06 · 663 阅读 · 0 评论 -
DB2ADVIS returning error -220
之前执行db2advis 的时候报了错:The db2advis tool needs the explain tables and the advise tables to exist. Please create themusing the EXPLAIN.DDL script in the misc subdirectory of the sqllib directory.解决方式:http://www-01.ibm.com/support/docview.wss?uid=swg2160..转载 2020-05-27 22:28:37 · 589 阅读 · 0 评论 -
SQL7008N SQLSTATE=55019 when doing insert/update on a DB2 for iSeries table
ProblemYou may get error an like below when doing an insert or update operation on a DB2 for iSeries table SQL7008N REXX variable "" contains inconsistent data. SQLSTATE=55019在DB2 for iSeries表执行插...翻译 2020-03-01 20:13:57 · 1904 阅读 · 1 评论 -
db2 insert数据时中文产生乱码
在datastudio中插入中文时数据显示正常insert into TEST_TAB values('1','张三','aa')goselect * from TEST_TAB在数据库服务端插入带中文的字符时,查询数据显示乱码在数据库服务端查询结果如下乱码显示与操作系统的编码集,db2codepage注册变量设置的编码集,还有create db指定的数据库的...原创 2020-03-01 20:06:56 · 5004 阅读 · 0 评论 -
db2中通过设置DB2_COMPATIBILITY_VECTOR 注册表变量启用DB2兼容性功能
DB2_COMPATIBILITY_VECTOR注册表变量启用一个或多个 DB2® 兼容性功能。这些功能使您可轻松完成将为 DB2 产品之外的关系数据库产品编写的应用程序迁移至 DB2 产品的任务。注册表变量设置值如下所示:NULL(缺省值)。这表示不支持兼容性功能。 0000-FFFF的十六进制值。 变量值中的每一位启用单独的兼容性功能。针对每个位的含义,请参见表 1。 ...转载 2019-10-30 21:47:10 · 1750 阅读 · 0 评论 -
db2笔记
标识符标识符规则DB2 - 标识符 首字母 字母字符 后续字符 字母数字字符和下划线(_) 最大长度 128 bytes Schema名最长30 bytes 大小写敏感 标识符不区分大小写, 默认为大写 标准 ANSISQL-不允许出现$ 引号和分割符DB2 - Quoted Identifiers 引号 双引号...原创 2019-07-18 11:51:51 · 298 阅读 · 0 评论 -
db2表空间常用命令
创建表空间create LARGE TABLESPACE MY_TB_32K PAGESIZE 32K MANAGED BY DATABASE USING(FILE '/home/db2inst1/tbs/MY_TB_32K' 1048756K) EXTENSIZE 32 BUFFERPOOL BP32K OVERHEAD 7.5 TRANSFERRATE 0...原创 2019-04-24 11:16:37 · 4156 阅读 · 0 评论 -
DB2表空间扩容
1 - Detect what tablespace has size issuesdb2 list tablespaces show detail2 - Check the percentage of use from the tablespacedb2 list tablespace containers for <tablespace_id> show deta...转载 2019-04-22 15:34:08 · 3949 阅读 · 0 评论 -
DB2 常用命令
查看DB2版本: db2level 创建instance: 进入安装目录instance文件夹,db2icrt -u ${USR} ${USR} 由于instance多和系统用户关联,直接用系统用户名称 删除instance: db2idrop ${NAME} 列出所有instance: db2ilist 列出当前instance: db2 get i...原创 2019-04-17 11:40:19 · 627 阅读 · 0 评论 -
db2查看数据库端口
(1)查询数据库管理器配置参数,查找到端口名[test88:dsadm:/gpfsetl/etldata/lch] db2 get dbm cfg|grep SVCENAME TCP/IP Service name (SVCENAME) = DB2_dsadm SSL service name ...原创 2018-11-18 22:00:54 · 9069 阅读 · 0 评论 -
DB2 SQL 性能优化案例——索引对 SQL 性能的影响
DB2 SQL 性能优化案例一则SQL 语句优化贯穿于数据库类应用程序的整个生命周期,包括前期程序开发,产品测试以及后期生产维护。针对于不同类型的 SQL 性能问题有不同的优化方法。索引对于改善数据库 SQL 查询操作性能至关重要,如何选择合适的列以及正确的组合所选择的列创建索引对查询语句的性能有着极大的影响,本文将结合具体案例进行解释。问题描述客户 A 业务核心数据库采用 DB2 U...转载 2018-12-18 16:47:17 · 2344 阅读 · 0 评论 -
db2无主键表中删除重复行数据
测试表建表及插入数据create table TEST_TAB( CLO1 varchar(1), COL2 varchar(1), COL3 varchar(1));insert into TEST_TAB values('1','b','c');insert into TEST_TAB values('1','b','c');insert into TE...原创 2019-01-17 14:28:25 · 735 阅读 · 0 评论 -
DB2 通用数据库中的生成列和标识列详解
前言生成列(包括标识列)是 DB2 的一个重要的特性,用来自动生成列值。一个生成列的值不是由 INSERT 或者 UPDATE 操作派生,而是根据预定义由 DB2 自动生成。在应用程序中,用户可以根据不同的需求选择不同的生成列从而简化应用程序的开发或提高。生成列DB2 的生成列(GENERATED COLUMNS)由 CREATE TABLE 或 ALTER TABLE 语句中的 GE...转载 2019-01-07 15:21:27 · 1240 阅读 · 0 评论 -
db2增删改数据时不记日志
-- db2 delete 大表不写日志操作1.update command options using c off -- //关闭自动提交 2.alter table MARPT.RPT_DIM_U_ORG_INX_M_CURR_CUS_PRO_TBK activate not logged initially //设置不记日志 3.delete from MARPT.RPT_D...原创 2019-01-15 11:39:21 · 1831 阅读 · 1 评论 -
DB2 分区特性
简介在数据仓库中,事实表或历史表的大小是摆在设计人员和管理员面前的一个挑战。这些表通常包含数亿行数据,有时候甚至包含数千亿行数据。对于这种规模的表,主要关心以下几点:查询性能 将大量新数据插入到这些表中 每月或每个季度删除大量过时的数据随着时间的推移,DB2 继续添加和增强特性,以解决这些需求。DB2 9 for Linux, UNIX, and Windows 中一个重要的增强是表...转载 2019-01-22 16:43:52 · 1970 阅读 · 0 评论 -
aix环境上"贇"字不识别的处理方式
问题描述:一客户名字中带“贇”字,将sql脚本上传至aix环境后,执行sql语句失败,查看sql文本发现贇字丢失,同时sql脚本中丢失了一个单引号。在windows上编辑的脚本如下上传至生产aix环境下显示如下执行sql报错问题排查:在测试环境测试时,此sql正常执行,数据库中也正常显示,生产环境执行失败;比对测试环境与生产环境的环境变量测试环境 :LANG...原创 2019-02-20 11:49:21 · 443 阅读 · 0 评论 -
db2 sql查询替换制表符(tab)
查询字段中是否包含制表符SELECT COLNAME,LOCATE(CHR(9),COLNAME) FROM TEST_TABLE WHERE LOCATE(CHR(9),COLNAME)>0;替换字段中的指标符UPDATE TEST_TABLE SET COLNAME=REPLACE(COLNAME,CHR(9),'') WHERE LOCATE(CHR(9),COLNAM...原创 2019-03-22 10:50:23 · 1823 阅读 · 0 评论 -
db2 命令行处理器返回码
当命令行处理器完成处理命令或SQL语句时,它返回一个返回(或退出)代码。这些代码对于从命令行执行CLP函数的用户是透明的,但是当从shell脚本执行这些函数时,可以检索它们。例如,以下shell脚本执行GET DATABASE MANAGER CONFIGURATION命令,然后检查CLP返回码:db2 get database manager configuration if [ "$?"...翻译 2018-07-10 17:58:33 · 1341 阅读 · 0 评论