热门标签 | 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

 


推荐阅读
  • 问题描述现在,不管开发一个多大的系统(至少我现在的部门是这样的),都会带一个日志功能;在实际开发过程中 ... [详细]
  • 本文介绍了.hbs文件作为Ember.js项目中的视图层,类似于HTML文件的功能,并详细讲解了如何在Ember.js应用中集成Bootstrap框架及其相关组件的方法。 ... [详细]
  • 在1995年,Simon Plouffe 发现了一种特殊的求和方法来表示某些常数。两年后,Bailey 和 Borwein 在他们的论文中发表了这一发现,这种方法被命名为 Bailey-Borwein-Plouffe (BBP) 公式。该问题要求计算圆周率 π 的第 n 个十六进制数字。 ... [详细]
  • 使用TabActivity实现Android顶部选项卡功能
    本文介绍如何通过继承TabActivity来创建Android应用中的顶部选项卡。通过简单的步骤,您可以轻松地添加多个选项卡,并实现基本的界面切换功能。 ... [详细]
  • 如何在Django框架中实现对象关系映射(ORM)
    本文介绍了Django框架中对象关系映射(ORM)的实现方式,通过ORM,开发者可以通过定义模型类来间接操作数据库表,从而简化数据库操作流程,提高开发效率。 ... [详细]
  • 二维码的实现与应用
    本文介绍了二维码的基本概念、分类及其优缺点,并详细描述了如何使用Java编程语言结合第三方库(如ZXing和qrcode.jar)来实现二维码的生成与解析。 ... [详细]
  • JUnit下的测试和suite
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 如何将955万数据表的17秒SQL查询优化至300毫秒
    本文详细介绍了通过优化SQL查询策略,成功将一张包含955万条记录的财务流水表的查询时间从17秒缩短至300毫秒的方法。文章不仅提供了具体的SQL优化技巧,还深入探讨了背后的数据库原理。 ... [详细]
  • 本文介绍了如何通过C#语言调用动态链接库(DLL)中的函数来实现IC卡的基本操作,包括初始化设备、设置密码模式、获取设备状态等,并详细展示了将TextBox中的数据写入IC卡的具体实现方法。 ... [详细]
  • CentOS下ProFTPD的安装与配置指南
    本文详细介绍在CentOS操作系统上安装和配置ProFTPD服务的方法,包括基本配置、安全设置及高级功能的启用。 ... [详细]
  • 解决JavaScript中法语字符排序问题
    在开发一个使用JavaScript、HTML和CSS的Web应用时,遇到从SQLite数据库中提取的法语词汇排序不正确的问题,特别是带重音符号的字母未按预期排序。 ... [详细]
  • 本文探讨了如何通过Service Locator模式来简化和优化在B/S架构中的服务命名访问,特别是对于需要频繁访问的服务,如JNDI和XMLNS。该模式通过缓存机制减少了重复查找的成本,并提供了对多种服务的统一访问接口。 ... [详细]
  • 小编给大家分享一下Vue3中如何提高开发效率,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获, ... [详细]
  • 本文介绍了如何在两个Oracle数据库(假设为数据库A和数据库B)之间设置DBLink,以便能够从数据库A中直接访问和操作数据库B中的数据。文章详细描述了创建DBLink前的必要准备步骤以及具体的创建方法。 ... [详细]
  • 本文介绍了 PHP 的基本概念、服务器与客户端的工作原理,以及 PHP 如何与数据库交互。同时,还涵盖了常见的数据库操作和安全性问题。 ... [详细]
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社区 版权所有