1、随需应变 快速构建 卓越品质 成就你我,面向成功 开放交流 协作创新 价值提升,单击此处编辑母版标题样式,单击此处编辑母版文本样式,二级,三级,四级,五级,*,中创软件,2013,年,7,月,2013,中创软件新员工培训,DB2,数据库基础,培训提纲,一、,DB2,数据库的构成,二、,SQL,介绍,三、,DB2,的安装,四、,操作练习,DB2,构成,什么是数据库系统,数据库系统是由数据库及其管理软件组成的系统,。,数据库,存储在计算机内的、有组织、可共享的数据集合。,硬件,软件,操作系统、,数据库管理系统,(DBMS),、应用软件,等。,人员,系统分析师、程序员、数据库管理员、最终,用户。,
2、DB2,构成,常用数据库都有哪些?,Oracle,DB2,SQL Server,Sybase,MySql,Postgre,Access,人大金仓,KingBase,武汉达梦,DM,东,软,OpenBase,DB2,构成,DB2,的对象,(,一,),域或节点,domain or node,实例,instance,数据库,db,模式,schema,表,table,domain,Instance 1,Instance 2,DB 1,DB 2,Schema 1,Schema 2,t1,t2,t3,DB2,构成,DB2,的对象,(,二,),数据库,DB,用户和模式,表,空间,缓冲池,表,视图,索引,约束
3、序列,触发器,存储过程,表空间,(,通过改变存储方式来提高性能,),按,用途来分:,目录表空间,、,系统临时表空间,、用户临时表空间、,常规表空间,、长表空间,按管理方式,:,系统管理表空间,SMS,、数据库管理表空间,DMS,缓冲池(,通过减少磁盘,I/O,来提高性能,),减少读时的,I/O,操作。,DB2,构成,DB2,的对象,(,三,),表空间,表空间的组成,容器,一个表空间可以由多个容器(数据文件或设备)组成,。,主要,参数,页大小、预取大小,缓冲池,一,个表空间只能使用一个缓冲池,且表空间的页大小必须和缓冲池,的,页大小,匹配,。,4K,缓冲池,8K,缓冲池,C1,C2,C3,C1
4、C2,C1,C2,C3,C1,表空间,1(4K),表空间,2(8K),表空间,3(8K),表空间,4(4K),DB2,构成,DB2,的对象,(,四,),表,表的组成,字段,索引,约束,主要特性,存储表空间:数据表空间、索引表空间、,Lob,表空间,表,1,C1,C2,C3,C1,C2,C3,C1,数据表空间,(8K),索引表空间,(4K),LOB,表空间,4(32K),表记录的大小必须与表空间页大小相匹配,培训提纲,一、,DB2,数据库的构成,二、,SQL,介绍,三、,DB2,的安装,四、,操作练习,SQL,介绍,什么是,SQL,SQL(structured query language),
5、是用于访问和处理数据库的标准的计算机语言。,DDL(,数据定义语言,),用于创建、修改、删除数据库对象:,create,、,alter,、,drop,DML(,数据操作语言,),用于,对数据库中的数据进行操作:,insert,、,delete,、,update,、,select,SQL,介绍,SQL,基础,create,Create,表,语法:,CREATE,TABLE,表名称,(,列,名称,1,数据类型,列,名称,2,数据类型,列,名称,3,数据类型,.,)in data_sp index in idx_sp;,索引,语法:,CREATE INDEX,索引名,ON,表名,(,字段,1,字段,
6、2,),;,SQL,介绍,SQL,基础,alter,Alter table,增加字段,语法:,ALTER,TABLE,表名称,ADD,column column_name,datatype,;,删除字段,语法:,ALTER TABLE,表名称,drop,column column_name;,修改字段类型,语法:,ALTER TABLE,表名称,alter column,column_name datatype,SQL,介绍,SQL,基础,drop,drop,表,语法:,DROP,TABLE,表,名称,;,索引,语法:,DROP INDEX,索引名称,;,SQL,介绍,SQL,基础,inser
7、t,insert,插入单条记录,语法:,INSERT INTO,TABLE,表,名称,(,字段,1,)values(,值,1,);,从其他表中获取数据插入到另一个表,语法:,INSERT INTO TABLE,表名称,(,字段,1,)select,字段,1,from,表名称,where;,SQL,介绍,SQL,基础,update,update,更新表中符合条件的记录,语法:,UPDATE,表名称,SET,字段,1=,值,1,where;,用一个表中的数据更新另一个表中的数据,语法:,update,表,1 set(,字段,1,)=(select,字段,1,from,表,2 where)where
8、SQL,介绍,SQL,基础,delete,delete,删除表中符合条件的记录,语法:,DELETE FROM,表名称,where;,SQL,介绍,SQL,基础,select,select,查询表中符合条件的记录,语法:,SELECT,字段,1,FROM,表名称,where;,连表查询,內连接,join,,,inner join,select a.*,b.*from a join b on a.,字段,1=b.,字段,1 where,结果:,a,表、,b,表中都存在的记录。,外连接,左外连,left join,left outer join,select a.*,b.*from a lef
9、t outer join b on a.,字段,=b.,字段,结果:,a,表记录都保留,右外联,right join,right outer join,select a.*,b.*from a,right,outer join b on a.,字段,=b.,字段,结果,:,b,表,记录都保留,SQL,介绍,SQL,基础,select,select,全连接,full join,full outer join,select a.*,b.*from a fullouter join b on a.,字段,=b.,字段,结果:,a,表、,b,表记录都保留,右外联,right join,right ou
10、ter join,select a.*,b.*from a,right,outer join b on a.,字段,=b.,字段,结果,:,b,表,记录都,保留,交叉,连接,select,a.*,b.*from a,cross join,结果:返回笛卡尔积结果集,SQL,介绍,SQL,基础,常用函数,函数,sum,count,avg,max,min,语法:,SELECT,字段,1,sum(,字段,3),count(,字段,3),avg(,字段,3),max(,字段,3),min(,字段,3,),FROM,表名称,where group by,字段,1;,日期、时间,Current date,当
11、前日期,current time,当前时间,y,ear,、,month,、,day,函数,字符串函数,concat,字符串连接函数,substr,去子字符串函数,a|b|c,字符串连接,序号,函数,row_number(),和,rank(),函数,培训提纲,一、,DB2,数据库的构成,二、,SQL,介绍,三、,DB2,的安装,四、,操作练习,DB2,安装,安装,DB2 V9.7,参考,db2,安装手册安装,db2V9.7.,安装,Sybase,培训提纲,一、,DB2,数据库的构成,二、,SQL,介绍,三、,DB2,的安装,四、,操作练习,操作练习,启停实例,创建数据库,db2cmd,停止数据库
12、实例,db2stop force,启动数据库实例,db2start,查看实例下有哪些数据库,db2 list db directory,删除掉已有的数据库,db2 drop db sample,创建,数据库,create db test on d:using codeset GBK territory CN,连接数据库,db2,connect to test,操作练习,创建缓冲池、表空间,db2cmd,创建缓冲池,CREATE BUFFERPOOL,testbp,IMMEDIATE SIZE 250 PAGESIZE,4,K,创建表空间,CREATE REGULAR TABLESPACE,da
13、ta_sp PAGESIZE 4,K MANAGED BY DATABASE USING(FILE E:,db2datadata1 16000,FILE E:,db2datadata2,16000,),bufferpool testbp;,CREATE REGULAR TABLESPACE,idx_sp,PAGESIZE 4 K MANAGED BY DATABASE USING(FILE E:,db2dataidx1,8,000,FILE E:,db2dataidx2,8,000,)bufferpool testbp;,查看表空间,db2 list dablespaces,for test
14、show detail,查看,data_sp,和,idx_sp,的容器,db2 list tablespace containers for,表空间号,操作练习,创建表,db2cmd,创建表,CREATE,table companys(company_no int not null,company_name varchar(200)not null,region_code,char(4)not null)in data_sp index in idx_sp;,create table sales(sale_seq bigint,GENERATEDALWAYSASIDENTITY(STARTWI
15、TH1,INCREMENTBY1),primarykeynot,null,company_no int not null,sale_name varchar(60)not null,goods_name varchar(80),sale_num,int not null,sale_sum decimal(14,2)not null)in data_sp index in idx_sp;,创建索引,create index idx_sales_comp_no,on sales(company_no asc);,操作练习,insert,、,update,、,delete,db2cmd,Insert
16、Update,:将,sales,表中,,sale_num,小,15,的,sale_sum,都增加,100,Delete,:将,sale,表中,,sale_name,为美美、彤彤的记录都删掉,操作练习,select,和函数,db2cmd,按,company_no,汇总,sales,表中的总的,sale_num,和,sale_sum,按,sale_name,汇总,sale_num,,并取出,sale_num,大于的,sale_name,取出,region_code,等于,0755,的销售记录,取出,company_no,在,companys,中不存在的销售记录,取,出卖出两件及以上商品的,sale_name,此课件下载可自行编辑修改,供参考!,感谢您的支持,我们努力做得更好!,






