热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

DB2语句的详细信息和资料

http:www.2cto.comdatabase201307225809.html1、数据操作语言(DML:select,delete,insert,update)<1>查询数

http://www.2cto.com/database/201307/225809.html

1、数据操作语言(DML:select,delete,insert,update)

<1>查询数据库目录:

db2 list db directory

<2>查询数据库中表

db2 list tables 当前用户

db2 list tables
for all 所有表

db2 list tables
for schema schemaname 指定模式的表

<3>显示表结构

db2 describe table tablename

<4>插入数据

db2 insert into tablename(字段名,字段名...) values (与字段名一一对应的值)

db2 insert into tablename1(字段1,字段2,字段3...)

select 字段1,字段2,字段3...from tablename2 + 查询条件

<5>更改表或视图数据

db2 update tablename
/viewname set 字段名1='',字段2='',...+查询条件

<6>删除数据

db2 delete
from tablename where + 条件

<7>导入数据

db2
"import from E:\name.txt of del insert into tableName"

db2
"import from E:\name.ixf of ixf commitcount 5000 insert /create/replace into tableName"

db2
"load client from D:\xx.txt of del insert/replace into tabName"(不需要写日志,但插入前表必须存在;不能create table)

db2
"load client from D:\xx.txt of del restart/terminate into tabName" 当导入数据出现问题被强行中断时,此表会被加锁,通过此命令可以解锁

<8>导出数据

db2
"export to E:\name.txt of del select * from tableName"

db2
"export to E:\name.txt of del MODIFIED BY NOCHARDEL select * from tableName"(导出不带分号的数据)

导出表结构和数据

db2
"export to E:\name.ixf of ixf MODIFIED BY NOCHARDEL select * from tableName"

db2
"export to E:\name.ixf of ixf MODIFIED BY NOCHARDEL select * from tableName fetch first (取数+UNM) rows only"(取固定条数)

导出表结构

db2look
-d dbName -e -t tableName -o D:\xxx.sql(path) -i userName -w password

db2look
-d dbName -z tabSchema -e -c -i userName -w password -o + 路径名

导出存储过程结构

db2
"export to xxx.sql of del select text from syscat.procedures where procname='大写存储过程名'"

<9>查询表状态

db2 load query table
+ tableName

<10>查询当前表数据量(数据入库时)

db2
select count(1) from tab with ur

<11>修改当前表名、模式名

db2 rename table tab1 to tab2

 

 

2、数据定义语言(DDL:create,alter)

 1 <1>创建或删除实例
2
3 db2icrt instance_name/db2idrop -f instance_name
4
5 linux:db2icrt -u user_id instance_name
6
7 <2>创建视图、表、模式
8
9 db2 create view/table/schema
10
11 创建指定用户的模式
12
13 db2 create schema schName AUTHORIZATION userName
14
15 db2 create schema AUTHORIZATION userName(没有指定模式名时,模式名隐含为用户名userName)
16
17 定义含有缺省值的表
18
19 db2 create table tableName(column1 数据类型,column2 数据类型 default '缺省值')
20
21 基于已存在的表
22
23 db2 create table clone_tablename like tablename
24
25 db2 create table clone_tablename as (select * from tablename) definition only
26
27 创建物化查询表(MQT)
28
29 create table new_table_name as (select * from table_name) data initially deferred refresh deferred;
30
31 refresh table new_table_name;
注意:物化表类似一个查询,没有真正形成表,类型显示为Query。但它完全可以当表来用。                  创建表并指定其索引表空间  1 db2 create table(.....) in userspace1 INDEX in userspace2 2 3 (userspace1是表所在空间,userspace2是表上索引所在空间)      <3>创建视图
1 db2 create view viewname 
2
3 as select 字段名1,字段名2...from table where + 条件
4
5 with check option 规定一种约束:通过视图插入或更新的每一行都必须符合视图的定义,如:
6
7 create view emp_view2(empno,empname,deptno) as (select id,name,dept from employee where dept=10)with check option
8
9 当此视图用于更新数据或插入新值时,with check option 限制了dept列的输入值

 

 

<4>修改表(列,主键,唯一约束,检查约束)

 1 1)添加新列 alter table tablename ADD COLUMN columnname 数据类型
2
3 2)添加约束
4
5 3)修改表中字段 alter table tablename alter columnname set data type 数据类型
6
7 4) 添加主键 alter table tablename add primary key(c1,c2)
8
9 <5>删除模式、表、视图
10
11 drop schema schName
12
13 CASCADE(级联)表示删除模式的同时删除该模式中所有的数据库对象
14
15 RESTRICT(限制)表示该模式下定义了数据库对象时,限制删除;没有任何数据库对象时才能删除
16
17 <6>重新组织表及其索引
18
19 重组表数据 reorg table tableName index indexName(根据索引)
20
21 重组表索引 reorg indexes all for table tableName
22
23 <7>重新收集表及其索引统计信息
24
25 runstats on table tableName for indexes all(跑批前重新收集所用表信息可以提高效率)
26
27 <8>DB2自动增长主键方法
28
29 IDENTITY列
30
31 generated always as identity(start with 1,increment by 1)将一个字段指定为自增长型字段,放在数据类型后。
SEQUENCE对象(序列)  3、数据控制语言(DCL:grant,revoke)
1 将表的特权授予用户
2
3 grant select,update,delete on table tableName to user userName with grant option
4
5 将包特权授予同组
6
7 grant control on package packageName on group groupName with grant option

 


推荐阅读
  • 本文介绍 SQL Server 的基本概念和操作,涵盖系统数据库、常用数据类型、表的创建及增删改查等基础操作。通过实例帮助读者快速上手 SQL Server 数据库管理。 ... [详细]
  • 本文详细介绍了优化DB2数据库性能的多种方法,涵盖统计信息更新、缓冲池调整、日志缓冲区配置、应用程序堆大小设置、排序堆参数调整、代理程序管理、锁机制优化、活动应用程序限制、页清除程序配置、I/O服务器数量设定以及编入组提交数调整等方面。通过这些技术手段,可以显著提升数据库的运行效率和响应速度。 ... [详细]
  • 本文介绍如何从字符串中移除大写、小写、特殊、数字和非数字字符,并提供了多种编程语言的实现示例。 ... [详细]
  • 深入解析动态代理模式:23种设计模式之三
    在设计模式中,动态代理模式是应用最为广泛的一种代理模式。它允许我们在运行时动态创建代理对象,并在调用方法时进行增强处理。本文将详细介绍动态代理的实现机制及其应用场景。 ... [详细]
  • 深入解析 Android IPC 中的 Messenger 机制
    本文详细介绍了 Android 中基于消息传递的进程间通信(IPC)机制——Messenger。通过实例和源码分析,帮助开发者更好地理解和使用这一高效的通信工具。 ... [详细]
  • 本文探讨了如何利用HTML5和JavaScript在浏览器中进行本地文件的读取和写入操作,并介绍了获取本地文件路径的方法。HTML5提供了一系列API,使得这些操作变得更加简便和安全。 ... [详细]
  • 本文介绍了如何利用Python进行批量图片尺寸调整,包括放大和等比例缩放。文中提供了详细的代码示例,并解释了每个步骤的具体实现方法。 ... [详细]
  • 社交网络中的级联行为 ... [详细]
  • 深入解析Java枚举及其高级特性
    本文详细介绍了Java枚举的概念、语法、使用规则和应用场景,并探讨了其在实际编程中的高级应用。所有相关内容已收录于GitHub仓库[JavaLearningmanual](https://github.com/Ziphtracks/JavaLearningmanual),欢迎Star并持续关注。 ... [详细]
  • Python + Pytest 接口自动化测试中 Token 关联登录的实现方法
    本文将深入探讨 Python 和 Pytest 在接口自动化测试中如何实现 Token 关联登录,内容详尽、逻辑清晰,旨在帮助读者掌握这一关键技能。 ... [详细]
  • 深入解析ESFramework中的AgileTcp组件
    本文详细介绍了ESFramework框架中AgileTcp组件的设计与实现。AgileTcp是ESFramework提供的ITcp接口的高效实现,旨在优化TCP通信的性能和结构清晰度。 ... [详细]
  • 本文介绍了 Python 的 Pmagick 库中用于图像处理的木炭滤镜方法,探讨其功能和用法,并通过实例演示如何应用该方法。 ... [详细]
  • 本文详细介绍了 Python 中的条件语句和循环结构。主要内容包括:1. 分支语句(if...elif...else);2. 循环语句(for, while 及嵌套循环);3. 控制循环的语句(break, continue, else)。通过具体示例,帮助读者更好地理解和应用这些语句。 ... [详细]
  • 本文探讨了在 SQL Server 中使用 JDBC 插入数据时遇到的问题。通过详细分析代码和数据库配置,提供了解决方案并解释了潜在的原因。 ... [详细]
  • 优化SQL Server批量数据插入存储过程的实现
    本文介绍了一种改进的SQL Server存储过程,用于生成批量插入语句。该方法不仅提高了性能,还支持单行和多行模式,适用于SQL Server 2005及以上版本。 ... [详细]
author-avatar
PHP猎人
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有