1、使用DB2工具将SQC文件预编译成C文件和bnd文件。

命令: db2 prep ***.sqc version * package using * bindfile BLOCKING ALL INSERT BUF DATETIME ISO queryopt 9 LONGERROR NO

解释:***代表要进行预编译的文件名。 version参数后面跟一个版本号,比如:1,2,3等数字。 此参数非常重要,可以区分多人编译的不同版本。package using 参数后面跟一个指定的名称,该名称就是DB2数据库生成的package的包名称。 如果不指定名称,默认最大为8位字符串, 可能与其他同名的package冲突。

2、使用DB2工具将bnd文件绑定到数据库中,生成package.

命令:db2 bind ***.bnd

解释:若增加ACTION ADD参数,则强制阻止被同名的package覆盖。存在同名package时,会报SQL0719错误。

3、检查是否有未绑定成功失效的packages

命令:select * from syscat.PACKAGES a where a.VALID = 'X';

4、删除无效的packages: drop package 包名称;  注意:有时候包名前是数字, 执行语句时会提示这种包名称不合法,无法删除,此时可以在包名称加双引号即可,即:drop package "包名称"

DB2与oracle不同处1:

  create table new_table_name as

  (select * from table_name) definition only;

不同处2:创建物化查询表(MQT)

  create table new_table_name as

  (select * from table_name)

  data initially deferred refresh deferred;

  refresh table new_table_name;

  注意:物化表类似一个查询,没有真正形成表,类型显示为Query。但它完全可以当表来用。

不同处3:复制表结构

  create table new_table_name like table_name;

db2修改字段类型或长度:

alter table table_name alter 字段 set data type VARCHAR(200);

数据库概念:

操作系统最小存储单位(block)块,windows上一块=1KB. linux上一块=0.5KB.  数据库的最小存储单位为(datapage)数据页,一数据页=4KB、8KB、16KB、32KB可变。大一级的单位为extent, 一个extent = 整数倍的datapage.  即多个datapage组成一个extent, 多个extent组成一个表空间容器,多个表空间容器组成一个表空间。

表空间和缓冲池是性能调优的关键。

C语言+嵌入式SQL+DB2开发经验总结的更多相关文章

  1. C语言中嵌入式SQL语句

    原文:[转载]C语言中嵌入式SQL语句 http://blog.csdn.net/cnlht/archive/2007/12/12/1930960.aspx原文地址 实验内容: 掌握SQL Serve ...

  2. SQL入门(4): 嵌入式SQL语言

    本节讲述内容: 1.嵌入式SQL 语言概述 2.变量声明与数据库连接 3.数据集与游标 4.可滚动游标与数据库的增删改 5.状态捕捉以及错误处理机制 (一)嵌入式SQL语言 之前我们所学的都是交互式S ...

  3. 第14讲:嵌入式SQL语言(基本技巧)

    一.交互式SQL的局限 & 嵌入式SQL的必要性 专业人员(如DBA)可以熟练地运用交互式SQL语言,但普通用户却不是那么容易上手,所以需要通过数据库应用程序来使用数据库.编写一个可以与数据库 ...

  4. 数据库原理及应用-SQL数据操纵语言(Data Manipulation Language)和嵌入式SQL&存储过程

    2018-02-19 18:03:54 一.数据操纵语言(Data Manipulation Language) 数据操纵语言是指插入,删除和更新语言. 二.视图(View) 数据库三级模式,两级映射 ...

  5. 数据库系统学习(十)-嵌入式SQL语言之动态SQL

    第十讲 嵌入式SQL语言之动态SQL 静态SQL 区别变量和属性:高级语言向嵌入式SQL传递变量的方法 动态SQL 动态构造SQL语句是应用程序员必须掌握的重要手段 SQL语句的动态构造示例 根据界面 ...

  6. 数据库系统学习(九)-嵌入式SQL语言之基本技巧

    第九讲 嵌入式SQL语言之基本技巧 901 什么是嵌入式SQL语言 交互式SQL语言的局限性 嵌入式SQL语言 交互式和嵌入式语言的对比 高级语言中使用嵌入式语言需要解决的问题 902 程序与数据库连 ...

  7. 3.7 嵌入式SQL

    可以放入所有高级语言中去,如C 因为,SQL是过程性语句,需要高级语言的非过程性处理集合的分类处理 一.一般形式 所有的SQL语句都必须加前缀EXEC SQL SQL语句完成结束标志(:或END EX ...

  8. Atiitt 使用java语言编写sql函数或存储过程

    Atiitt 使用java语言编写sql函数或存储过程 1.1. java编写sql函数或存储过程的机制1 1.2. Java编写sp的优点1 1.3. 支持java源码,class文件,blog f ...

  9. 什么是Pro*C/C++,嵌入式SQL,第一个pro*c程序,pro*c++,Makefile,Proc增删改查

     1 什么是Pro*C/C++ 1.通过在过程编程语言C/C++中嵌入SQL语句而开发出的应用程序 2.什么是嵌入式SQL 1.在通用编程语言中使用的SQL称为嵌入式SQL 2.在SQL标准中定义 ...

随机推荐

  1. C++———Vector

    #include<algorithm> #include <vector> #include <iostream> #include <stdio.h> ...

  2. Exp3 免杀原理与实践 20165110

    Exp3 免杀原理与实践 20165110 一.. 实践内容 1.正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分),veil-evasion(0.5分),加壳工 ...

  3. SQL查询中连接--学习

    一.开头说 不出意外,还是先说下SQL中所有的联接类型: 内连接.外连接(左连接.右连接 .全连接).交叉连接 然后接下来就是依次学习下各种连接的使用效果 二.各种连接秀 首先准备两张表   学生表: ...

  4. Java并发编程之并发容器

    解决并发情况下的容器线程安全问题的.给多线程环境准备一个线程安全的容器对象. 线程安全的容器对象: Vector, Hashtable.线程安全容器对象,都是使用 synchronized 方法实现的 ...

  5. Solidity-让合约地址 接受ETH的转账充值的 三种方式

    以太坊智能合约开发:让合约接受转账 在以太坊智能合约开发中,通常会有向合约地址进行转账的需求,那么有几种向合约地址进行转账的方式呢? 有三种方式: 部署合约时转账 调用合约提供的方法 直接向合约地址进 ...

  6. 4.Redis客户端

    4.Redis客户端4.1 客户端通信协议4.2 Java客户端Jedis4.2.1 获取Jedis4.2.2 Jedis的基本使用方法4.2.3 Jedis连接池的使用方法4.2.4 Redis中P ...

  7. 数据库子查询和join的比较

    子查询进行SELECT语句嵌套查询,可以一次完成很多逻辑上需要多个步骤才能完成的SQL操作.子查询虽然很灵活,但是执行效率并不高. select goods_id,goods_name from go ...

  8. RNAseq测序reads定位

    RNAseq测序reads定位 发表评论 3,210 A+ 所属分类:Transcriptomics   收  藏 获得RNA-seq的原始数据后,首先需要将所有测序读段通过序列映射(mapping) ...

  9. SqlServer数据库链接字符串

    完整链接字符串: 1."DataSourse=.\你的实例;Initial Catalog=yourdatabase;User ID=*;Password=*;Trusted_Connect ...

  10. nginx集成环境下载

    https://visual-nmp.en.softonic.com/download