论坛首页 入门技术论坛

oracle辅导(2--3)

浏览 1240 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-12-03  

多对多

student tabel (学生表)                                

S_id

(PK)

 

S_name

address

 

 

 

 

zhongjian table(中间表)

S_id

(PK,FK)

 

C_id

(PK,FK)

grade

 

 

 

 

Course table(课程表)

C_id

(PK)

 

Course_name

Course_desc

 

 

 

 

建表和其他相关操作

 

DDL语句

 

创建表:

   create    table  表名   (    字段名1    类型(数据长度)(default ...)   约束条件,   字段名2    类型(数据长度)    约束条件 );

 

Oracle数据库中的数据类型

 

varchar(长度),可变长字符串,char(长度) 定长

number(..,..),number 表示浮点数,或者是整数

long 大对象,clog 字符的大对象,相当于文本文件在表中只存放一个相当于只针对值

            blog 二进制的大对象,也是以相当于指针的形式存放的。

 

primary key约束:

 

主键约束的定义:

第一种定义形式:

列级约束,在字段定义之后,定义针对该字段的约束。

create table   test(c  number  primary key  ); 列级约束

 

第二种定义形式:

表级约束,是在所有字段都定义好后,定义约束。

create table  test(c  number , primary key(c) ) ; 表级约束

 

create table   test( c1  number  constraints   pkc1  primary key );

此约束有名字:  pkc1

 

create table   test(c number , c2  number ,  primary key (c ,c1) ) ; 用表级约束可以实现联合主键

 

 

foregin  key   (fk)   外键约束:

(先定义父表,再定义子表)

carete   table  parent(c1 number  primary key);

create   table  child(c  number primary key , c2 number  references parent(c1) on delete casade);列级约束定义,定义父子表纪录的级连删除

 

carete   table  parent(c1 number  primary key );

create table child( c number primary key ,  c2  number  , foreign key(c2)  references  parent(c1) on delete casade set null); 表级约束定义,定义父子表纪录的级连将FK置空。

论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics