DB2语句详细资料
http://www.2cto.com/database/201307/225809.html
1、数据操作语言(DML:select,delete,insert,update)
<>查询数据库目录:
db2 list db directory
<>查询数据库中表
db2 list tables 当前用户
db2 list tables for all 所有表
db2 list tables for schema schemaname 指定模式的表
<>显示表结构
db2 describe table tablename
<>插入数据
db2 insert into tablename(字段名,字段名...) values (与字段名一一对应的值)
db2 insert into tablename1(字段1,字段2,字段3...)
select 字段1,字段2,字段3...from tablename2 + 查询条件
<>更改表或视图数据
db2 update tablename/viewname set 字段名1='',字段2='',...+查询条件
<>删除数据
db2 delete from tablename where + 条件
<>导入数据
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" 当导入数据出现问题被强行中断时,此表会被加锁,通过此命令可以解锁
<>导出数据
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='大写存储过程名'"
<>查询表状态
db2 load query table + tableName
<>查询当前表数据量(数据入库时)
db2 select count() from tab with ur
<>修改当前表名、模式名
db2 rename table tab1 to tab2
2、数据定义语言(DDL:create,alter)
<>创建或删除实例 db2icrt instance_name/db2idrop -f instance_name linux:db2icrt -u user_id instance_name <>创建视图、表、模式 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;
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=)with check option
当此视图用于更新数据或插入新值时,with check option 限制了dept列的输入值
<4>修改表(列,主键,唯一约束,检查约束)
)添加新列 alter table tablename ADD COLUMN columnname 数据类型
)添加约束
)修改表中字段 alter table tablename alter columnname set data type 数据类型
) 添加主键 alter table tablename add primary key(c1,c2)
<>删除模式、表、视图
drop schema schName <CASCADE|RESTRICT>
CASCADE(级联)表示删除模式的同时删除该模式中所有的数据库对象
RESTRICT(限制)表示该模式下定义了数据库对象时,限制删除;没有任何数据库对象时才能删除
<>重新组织表及其索引
重组表数据 reorg table tableName index indexName(根据索引)
重组表索引 reorg indexes all for table tableName
<>重新收集表及其索引统计信息
runstats on table tableName for indexes all(跑批前重新收集所用表信息可以提高效率)
<>DB2自动增长主键方法
IDENTITY列
generated always as identity(start with ,increment by )将一个字段指定为自增长型字段,放在数据类型后。
将表的特权授予用户 grant select,update,delete on table tableName to user userName with grant option 将包特权授予同组 grant control on package packageName on group groupName with grant option
DB2语句详细资料的更多相关文章
- DB2 公共表表达式(WITH语句的使用)
----start 说起WITH 语句,除了那些第一次听说WITH语句的人,大部分人都觉得它是用来做递归查询的.其实那只是它的一个用途而已,它的本名正如我们标题写的那样,叫做:公共表表达式(Commo ...
- db2笔记
第七章:数据库备份与恢复 (恢复的概念,db2日志,数据库和表空间的备份,数据库和表空间的恢复,数据库和表空间的前滚,recover使用程序,数据库重建,监控备份恢复和复原,优化备份恢复和复原)1) ...
- DB2 错误 54001
DB2 语句太长或者太复杂 SQLSTATE=54001 对数据库的参数的修改: db2 update db cfg for DB_NAME using STMTHEAP 4096 db2 updat ...
- db2构建临时结果集
一 values ('1',2,3) 为一行 ‘1’ 2 3 行数据类型可以不同 values ('1',2,3),('f',5,6) 为两行 (values 1,2,3 ...
- whdxlib
1 数据库系统实现 实 验 指 导 书 齐心 彭彬 计算机工程与软件实验中心 2016 年 3 月2目 录实验一.JDBC 应用程序设计(2 学时) ......................... ...
- spring-mvc.xml 和 application-context.xml的配置与深入理解
在java框架这个话题,前几篇文章是基于搭建ssm项目框架,以及web.xml的配置讲解,本篇主要就ssm框架的其他配置文件进行深入讲解,他们分别是:1.application-context.xml ...
- python第六天 函数 python标准库实例大全
今天学习第一模块的最后一课课程--函数: python的第一个函数: 1 def func1(): 2 print('第一个函数') 3 return 0 4 func1() 1 同时返回多种类型时, ...
- 数据库(MSSQLServer,Oracle,DB2,MySql)常见语句以及问题
创建数据库表 create table person ( FName varchar(), FAge int, FRemark varchar(), primary key(FName) ) 基本sq ...
- Oracle、DB2、SQLSERVER、Mysql、Access分页SQL语句梳理
最近把平时在项目中常用到的数据库分页sql总结了下.大家可以贴出分页更高效的sql语句.sqlserver分页 第一种分页方法 需用到的参数: pageSize 每页显示多少条数据 pageNumbe ...
随机推荐
- Apache开启状态查看页面(原创贴-转载请注明出处)
=================写在前面的话================== 场景描述:有时候我们需要查看apache的运行状态,只需要开启apache的status功能就可以实现,但是stat ...
- discuz教程:discuz模板js与jQuery冲突的解决方案
今天在做discuz模板的时候,用到jquery的时候和原来主题js冲突.这个主要是Discuz X使用了$(id)作为dom节点的获取方法,而$符号刚好与jQuery的默认符号相冲突. 以下是基于之 ...
- Python之路,Day1 - Python基础1
本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else语 ...
- Try to write a script to send e-mail but failed
#-*-coding: utf-8 -*- '''使用Python去发送邮件但是不成功,运行后,等待一段时间, 返回[Errno 10060] A connection attempt failed ...
- Jekyll教程——精心收藏
以前总想搭建一个自己的个人网站,由于不懂php后台,所以在点点网开过自己的博客,后来慢慢向程序员转变,点点网的博客已经不能满足这个职业特定的需求,于是用worldpress搭建了自己的第一个网站,鼓捣 ...
- About vector
今天打vector又打炸了不!高!兴! vecotr头文件 #include<vector> 定义域 using namespace std; 或using std::vector; 初始 ...
- OCP笔记001
2. View the Exhibit to examine the description for the SALES table. Which views can have all DML ope ...
- 转!! PreparedStatement是如何防止SQL注入的
SQL注入最简单也是最常见的例子就是用户登陆这一模块,如果用户对SQL有一定的了解,同时系统并没有做防止SQL注入处理,用户可以在输入的时候加上'两个冒号作为特殊字符,这样的话会让计算机认为他输入的是 ...
- OpenCV学习笔记(二)——OpenCV环境变量配置
1. 假定电脑上已经安装了VS2010程序,若没有,首先安装vs2010. 下载OpenCV,下载的文件名为"OpenCV-2.3.1-win-superpack". 2. 解 ...
- 【OS】实模式和保护模式区别及寻址方式
实模式和保护模式区别及寻址方式 转载请注明出处:http://blog.csdn.NET/rosetta 64KB-4GB-64TB? 我记得大学的汇编课程.组成原理课里老师讲过实模式和保护模式的区别 ...