资源描述:
《ch6 oracle 9i数据库对象的管理ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Ch6Oracle9i数据库对象的管理主要内容6.1管理表6.2管理索引6.3管理视图6.4管理同义词和序列6.5管理簇6.6管理过程、函数和包关于方案在Oracle数据库中,每个用户都拥有自己的方案,方案的名称与用户的名称相同默认情况下,所有用户创建的对象都位于自己的方案中,即Oracle用方案的方法将数据库按用户进行划分6.1管理表表的概念是数据库中的主要对象每个表具有表名、列和行列:列名、数据类型、精度、行:对应单个记录的列信息的集合约束:NOTNULL、UNIQUE、CHECK、PRIMARYKEY、FOREIGNKEY(ENABLE、DISABLE、V
2、ALIDATE、NONVALIDATE)分类:永久表和临时表6.1管理表——创建表使用企业管理器使用SQL语句CREATETABLECREATETABLESCOTT.S(SNOVARCHAR2(6byte)NOTNULL,SNAMEVARCHAR2(6byte),SSEXVARCHAR2(2byte),SAGEVARCHAR2(2byte),SCLASSVARCHAR2(20byte),CONSTRAINTCK_AGECHECK(SAGEBETWEEN18AND24),CONSTRAINTCK_SEXCHECK(SSEXIN('男','女')),CONSTRAI
3、NTPK_SNOPRIMARYKEY(SNO)USINGINDEXTABLESPACESYSTEMLOGGING);创建表——CCREATETABLESCOTT.C(CNOVARCHAR2(3)NOTNULL,CNAMEVARCHAR2(20),CCREDITNUMBER(1),CONSTRAINTPK_CNOPRIMARYKEY(CNO));CRATETABLE——SCCREATETABLESCOTT.SC(SNOVARCHAR2(6)NOTNULL,CNOVARCHAR2(3)NOTNULL,GRADENUMBER(4,1)NOTNULL,CONSTRAIN
4、TPK_CNO_SNOPRIMARYKEY(SNO,CNO),CONSTRAINTFK_SNOFOREIGNKEY(SNO)REFERENCESSCOTT.S(SNO)ONDELETECASCADE,CONSTRAINTFK_CNOFOREIGNKEY(CNO)REFERENCESSCOTT.C(CNO)ONDELETECASCADE);创建表-复制数据CREATETABLEscott.newCASSELECTcno,cname,ccreditfromscott.c用INSERT复制整个表INSERTINTO表名(字段列表)SELECT(字段名1,字段名2,..
5、.)FROM另外的表名INSERTINTOscott.newCSELECTcno,cname,ccreditFROMscott.c删除、重命名表删除表企业管理器SQL语句:droptable表名[cascadeconstraints]重命名表ALTERTABLE旧表名RENAMETO新表名ALTERTABLESCOTT.newCRENAMETONEWC1;查看表企业管理器方案->SYSTEM->表:查看/编辑详细资料P104表6.1编辑表语法altertable表名[modify(列名数据类型[列约束][,列名数据类型[列约束]…)]add(列名数据类型[列约束
6、][,列名数据类型[列约束]…)]addconstraint表约束条件名约束条件drop[列名[,列名]][disable
7、enable
8、dropconstraint表约束条件名]编辑表修改列的数据类型ALTERTABLESCOTT.SMODIFY(SNAMEVARCHAR2(10),SAGENUMBER(3));增加列ALTERTABLESCOTT.SADD(SADDRESSVARCHAR2(20),POLITICSVARCHAR2(15));增加约束ALTERTABLEscott.cADDCONSTRAINTpk_cnoprimarykey(cno);给表或
9、列添加注释可使用COMMENTON语句给表或列添加注释,以便描述表或列的使用方法COMMENTONTABLESIS'这是描述学生信息的表';想显示关于表的注释,可以查询DBA_TAB_COMMENT、ALL_TAB_COMMENT或者USER_TABL_COMMENTSELECTTABLE_NAME,TABLE_TYPE,COMMENTSFROMUSER_TAB_COMMENTSWHERETABLE_NAME='S';给列添加注释COMMENTONCOLUMNS.SNAMEIS'该列表示学生的姓名';要显示列注释,可以使用USER_COL_COMMENT或DBA
10、_COL_COMMENT