文档章节

DB2 SQL 命令集锦

飞雪无痕
 飞雪无痕
发布于 2016/07/10 00:42
字数 1143
阅读 28
收藏 2

DB2 SQL 命令集锦
摘自:http://m.blog.csdn.net/article/details?id=7449035 如有侵权请留言删除,谢谢!

 

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>创建或删除实例
       db2icrt instance_name/db2idrop -f instance_name
       linux:db2icrt -u user_id instance_name
       <2>创建视图、表、模式
     db2 create view/table/schema
     创建指定用户的模式
     db2 create schema schName AUTHORIZATION userName
     db2 create schema AUTHORIZATION userName(没有指定模式名时,模式名隐含为用户名userName)
      定义含有缺省值的表
     db2 create table tableName(column1 数据类型,column2 数据类型 default '缺省值')
     基于已存在的表
     db2 create table clone_tablename like tablename 
     db2 create table clone_tablename as (select * from tablename) definition only
     创建物化查询表(MQT) 
     create table new_table_name as (select * from table_name) data initially deferred refresh deferred;
     refresh table new_table_name; 
     注意:物化表类似一个查询,没有真正形成表,类型显示为Query。但它完全可以当表来用。
                  创建表并指定其索引表空间
                         db2 create table(.....) in userspace1 INDEX in userspace2
                         (userspace1是表所在空间,userspace2是表上索引所在空间) 
    <3>创建视图
           db2 create view viewname 
                as select 字段名1,字段名2...from table where + 条件
         with check option 规定一种约束:通过视图插入或更新的每一行都必须符合视图的定义,如:
         create view emp_view2(empno,empname,deptno) as (select id,name,dept from employee where dept=10)with check option
         当此视图用于更新数据或插入新值时,with check option 限制了dept列的输入值
    <4>修改表(列,主键,唯一约束,检查约束)
   1)添加新列 alter table tablename ADD COLUMN columnname 数据类型
   2)添加约束 
   3)修改表中字段 alter table tablename alter columnname set data type 数据类型
   4) 添加主键 alter table tablename add primary key(c1,c2)
   <5>删除模式、表、视图
      drop schema schName <CASCADE|RESTRICT>
      CASCADE(级联)表示删除模式的同时删除该模式中所有的数据库对象
      RESTRICT(限制)表示该模式下定义了数据库对象时,限制删除;没有任何数据库对象时才能删除
   <6>重新组织表及其索引
      重组表数据  reorg table tableName index indexName(根据索引)
      重组表索引  reorg indexes all for table tableName
   <7>重新收集表及其索引统计信息
      runstats on table tableName for indexes all(跑批前重新收集所用表信息可以提高效率)
   <8>DB2自动增长主键方法
      IDENTITY列
        generated always as identity(start with 1,increment by 1)将一个字段指定为自增长型字段,放在数据类型后。
      SEQUENCE对象(序列)
    3、数据控制语言(DCL:grant,revoke)

    将表的特权授予用户
    grant select,update,delete on table tableName to user userName with grant option
    将包特权授予同组
    grant control on package packageName on group groupName with grant option

© 著作权归作者所有

共有 人打赏支持
飞雪无痕
粉丝 2
博文 58
码字总数 20385
作品 0
大兴
高级程序员
db2 卸载和安装

Db2 卸载步骤(参考) 开始卸载 1. 删除所有数据库。 可以使用“控制中心”或drop database命令删除数据库。笔者卸载而未删除数据库,结果是重新安装后无法建立同名数据库。 若要显示所有已创...

银河zlm
2016/04/15
0
0
DB2数据库在线备份还原笔记

DB2数据库在线备份还原笔记 数据库在线增量备份 由于一般客户的生产系统数据量都很大,所以频繁的进行数据库或表空间的全量备份在空间存储上变得不可行。DB2 支持两种增量的备份,一种是增量...

天意1
2017/04/28
0
0
ubuntu/win7 安装db2 v10.x

cyper 2017笔记:适用于ubuntu16.04.1 + db2 10.1.0.2 ## 抓紧下载v10.5fp1linuxx64expc.tar.gz到~/Downloads/javasoft cd javasoft tar xf v10.5fp1linuxx64expc.tar.gz 可以看到在当前目录......

cyper
2014/06/24
0
0
DB2跨库联合查询

《在源数据库A中访问目标库B的表table1的方法》 db2 =>update dbm cfg using Federated YES //开启数据库联合查询 db2 =>db2stop force db2 =>db2start //重启数据库方可生效 注:开启数据库...

飞雪无痕
2016/12/26
52
0
db2look和db2move简单实例

db2look和db2move简单实例 --- 建库 create database dbname on filesystemlocation using codeset utf-8 territory cn --- 删库 db2 drop db db_name (若数据库正在使用, 需要先执行以下命令......

huazhixu123
2017/11/02
0
0

没有更多内容

加载失败,请刷新页面

加载更多

docker多容器部署lnmp环境

环境:RHEL7.5 ip:192.168.10.102,主机名:lb02 一、创建web、数据库目录 web网站目录为:/wwwroot,属主属组:www [root@lb02 ~]# mkdir /wwwroot[root@lb02 ~]# useradd -s /sbin/nolo...

人在艹木中
20分钟前
0
0
eclipse运行springboot项目报错‘找不到或无法加载主类’

这是一个很烦躁的问题~,往往困住大家好长时间,然后各种百度。借此,咱将这个问题有可能产生的原因进行一下总结。若有不完善之处欢迎大家在下面留言指出~~ Duang!问题出现 然后开始尝试解决...

Code辉
41分钟前
0
0
springboot oauth2 跨域设置

@Overridepublic void configure(HttpSecurity http) throws Exception { http .authorizeRequests() .antMatchers("/security/**") .authentica......

昆虫大侠
43分钟前
0
0
08-利用思维导图梳理JavaSE-泛型

08-利用思维导图梳理JavaSE-泛型 主要内容 1.泛型的基本概念 1.1.定义 1.2.使用前提 1.3.使用泛型的好处 2.泛型的使用 2.1.泛型类定义 2.2.泛型对象定义 2.3.泛型中的构造方法 2.4.泛型方法的...

飞鱼说编程
44分钟前
0
0
Docker 部署 Spring Boot 项目指南

仅想在Docker里运行一个Spring Boot项目,捣鼓了许久。。。 本文主要适用于Windows环境下的Docker 一、运行环境 Windows 10 Maven 3.5 Docker 18.06.1-ce-win73 (19507) 二、创建Spring Boot...

AmosWang
50分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部