十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
就是在表与表之间建立起链接就行了,这个链接就叫做外键—FC;列入:create
网站设计制作、成都网站制作的关注点不是能为您做些什么网站,而是怎么做网站,有没有做好网站,给创新互联公司一个展示的机会来证明自己,这并不会花费您太多时间,或许会给您带来新的灵感和惊喜。面向用户友好,注重用户体验,一切以用户为中心。
table
stu(stuid
int,sName
varchar2(20));
create
table
score(stid
int,cid
int);
alter
table
stu
add
constraint
pk_stuid
primary
key(stuid);
alter
table
score
add
constraint
fk_stuid
foreign
key(stid)
references
stu(stuid);
stuid这个属性就是foreign
key就是外键;他就是链接stu表和score表的桥梁。
可以,表与表关系,主要就是主外健及级联关系等,例如,通过OEM,你可以在ORACLE自带的方案SCOTT中,可以看到EMP表的部门字段与DEPT的主外关联关系。点下面的《显示SQL》你就可以看到对应的SQL语句。(在oracle9i下,选中EMP表,点右边的约束条件,就可以看到)这是图形方式,如果想在SQLPLUS下看,等你深入一点后自然明白.
主外键需要依托多表来创建,方法如下:
创建主表:
CREATE TABLE SCOTT.DEPT
(DEPTNO NUMBER(2,0) PARIMARY KEY,
DNAME VARCHAR2(14),
LOC VARCHAR2(13));
创建副表及外键:
CREATE TABLE EMP
(EMPNO NUMBER(4,0) PRIMARY KEY,
ENAME VARCHAR2(10),
JOB VARCHAR2(9),
MGR NUMBER(4,0),
HIREDATE DATE,
SAL NUMBER(7,2),
COMM NUMBER(7,2),
DEPTNO NUMBER(2,0),
CONSTRAINT FK_DEPTNO FOREIGN KEY (DEPTNO) REFERENCES DEPT (DEPTNO));
你是在编制FORM程序的话,两个表即使有主从关系也要在form块之间建立关系,但不用写POST-QUERY。
去掉“自动关联数据库”选项,点击“创建关系 ”,选择主表及关联项,在关联条件框中可看到关联等式。
create public batabase link a_to_b\x0d\x0aconnect to (被操作表所在库的用户名) identified by (被操作表所在库的密码)\x0d\x0ausing ‘(被操作表所属实例名)’;\x0d\x0a然后在操作实例中进行测试:\x0d\x0aselect 1 from dual@a_to_b;\x0d\x0a如果有正确结果 那么你就建立了一个dblink了。\x0d\x0a \x0d\x0a这个时候就可以 跨库查询了。
例如下面这两个表中分别存的时员工的基本信息和公司的部门信息。我们为\x0d\x0acreate table dept\x0d\x0a(deptno number(10) not null,\x0d\x0adeptname varchar2(30) not null,\x0d\x0aconstraint pk_dept primary key(deptno));\x0d\x0a和\x0d\x0acreate table emp\x0d\x0a( empno number(10) not null,\x0d\x0afname varchar2(20) ,\x0d\x0alname varchar2(20) ,\x0d\x0adept number(10) ,\x0d\x0aconstraint pk_emp primary key(empno));\x0d\x0a\x0d\x0a然后我们现在增加外键试一下on delete cascade\x0d\x0a\x0d\x0aalter table emp\x0d\x0aadd constraint fk_emp_dept foreign key(dept) references dept(deptno) on delete cascade;\x0d\x0a先增加外键。然后插入数据。\x0d\x0ainsert into dept values(1,’销售部’);\x0d\x0ainsert into dept values(2,’财务部’);\x0d\x0ainsert into emp values (2,’Mary’,'Song’,1);\x0d\x0ainsert into emp values (3,’Linda’,'Liu’,2);\x0d\x0ainsert into emp values (4,’Linlin’,'Zhang’,1);\x0d\x0a然后现在我要删除销售部,会有什么后果呢?\x0d\x0adelete from dept where deptno = 1;\x0d\x0a我们发现除了dept中的一条数据被删除了,emp中两条数据也被删除了,其中emp中的两条数据是参照了销售部的这条数据的,这就很容易理解on delete cascade了。