❶ sql表与表之间的关系怎么建啊
你是问的用SQL语言还是不用SQL语言编写。
这个建立表的关系可以直接在菜单栏上找到的,好像是“工具”那一栏,在下拉菜单中选择“关系”,就可以在直接通过拖动来建立表之间的关系。
❷ 如何设置SQL数据库表与表的关联关系
如果是 父子关系, 或者 一对多 关系。
可以通过 创建外键的方式, 在 父表 与 子表之间, 创建一个关联关系。
例如:
-- 创建测试主表. ID 是主键.
CREATE TABLE test_main (
id INT NOT NULL,
value VARCHAR(10),
PRIMARY KEY(id)
);
-- 创建测试子表.
CREATE TABLE test_sub (
id INT NOT NULL,
main_id INT ,
value VARCHAR(10),
PRIMARY KEY(id)
);
-- 插入测试主表数据.
INSERT INTO test_main(id, value) VALUES (1, 'ONE');
INSERT INTO test_main(id, value) VALUES (2, 'TWO');
-- 插入测试子表数据.
INSERT INTO test_sub(id, main_id, value) VALUES (1, 1, 'ONEONE');
INSERT INTO test_sub(id, main_id, value) VALUES (2, 2, 'TWOTWO');
SQL> -- 创建外键(默认选项)
SQL> ALTER TABLE test_sub ADD CONSTRAINT main_id_cons FOREIGN KEY (main_id) REFERENCES test_main;
Table altered.
SQL>
SQL> -- 测试删除主表数据. 将出错 ORA-02292: 违反完整约束条件
SQL> DELETE
2 test_main
3 WHERE
4 ID = 1;
DELETE
*
ERROR at line 1:
ORA-02292: integrity constraint (HR.MAIN_ID_CONS) violated - child record found
❸ SQL数据库的表与表之间的关系怎么连接
表与表之间是通过主外键链接的
可以通过‘数据库关系图’进行链接
将要连接的表选中,然后用鼠标拖动
列
例如
定义表Student、Course和SC之间的关系图。
要求:先要定义好三个表的主键SNO、CNO、(SNO,CNO)
(1)
展开数据库“学生管理”节点,在“数据库关系图”上击右键,选择“新建数据库关系图”命令,弹出新建数据库关系图向导,选择要添加到关系图中的表Student、Course和SC,这三个表将出现在新关系图窗口中。每个表显示包含的属性和定义的主键,拖动标题栏可以改变它们在窗口中的位置。
(2)
将Student表的属性SNO拖动到SC表的SNO上,松开鼠标弹出“创建关系”窗口,设置后单击“确定”按钮。在Student表和SC表之间会自动出现一条连线,说明创建关系成功。同样的方法可以创建Course表和SC表之间的关系。
(3)
单击关闭按钮保存。
(4)
试着修改或删除Student、Course和SC表中的数据,看看定义关系后有何作用。
❹ SQL数据库怎么样用命令建库及表,还有怎么样建立表之间的联系
create database student charset=utf8;
use student;
create table S(
s_id int primary key,
name varchar(20),
sex char(2),
brith datetime,
department varchar(20)
);
create table C(
c_id int primary key,
course varchar(20),
class_hour int
);
create table SC(
s_id int,
c_id int,
score int
);
SC表是中间表,多对多的关系,一个学生可以选修多门课程,一个课程可以被多个学生选修
建立外键,但是真实的系统当中可以不建立外键,只建立主键,只在查表当中关联查询键
alter table SC constraint FK_sID foreign key(s_id) references S(s_id); 中间表外键引用主表的主键
alter table SC constraint FK_cID foreign key(c_id) references C(c_id);
表关联查询 某某同学,某某课程,分数是多少
select S.name , C.course , SC.score
from S , C , SC
where S.s_id=SC.s_id and C.c_id=SC.c_id;
❺ sql server如何建立表间关系
1.在数据库库关系图里新建数据库关系图,如果弹出要创建的提示框点击是可以了
2.完成创建之后就在关系图域里右键,点击添加表,把需要建立关系的表添加进去
3.添加完表之后连接关系,把教师表里的教师ID拖动到学生表里的教师ID,
4.检查主外键表正确了没有,如果你想根据学生表查询教师信息那学生表就是主键表,反过来教师就是...
5.完成以上步骤之后就完成连接了,保存为关系图命名就完成了
❻ sql server怎么使用命令创建两个表的关系
sql server中表之间的关联关系是通过建立外键来实现的。
创建SQL的主键和外键约束的方法:
create table Student --建表格式:create table 自定义的表名
( --字段名一般为有一定意义的英文
StudentName nvarchar(15), -- 格式:字段名类型()括号里面的是允许输入的长度
StudentAge int, --int型的后面不需要接长度
StudentSex nvarchar(2) --最后一个字段后面不要逗号
)
--在创建表时就可以对字段加上约束:
create table Student
(
StudentNo int PRIMARY KEY IDENTITY(1,1), --加主键约束,还有标识列属性(两者构成实体完整性)
StudentName nvarchar(15) not null, --加非空约束,不加"not null" 默认为:可以为空
StudentSchool text(20) FOREIGN KEY REFERENCES SchoolTable(SchoolName), --加外键约束,格式:FOREIGN KEY REFERENCES 关联的表名(字段名)
StudentAge int DEFAULT ((0)), --加默认值约束
StudentSex nvarchar(2) CHECK(StudentSex=N'男' or StudentSex=N'女') --加检查约束,格式:check (条件表达式)
)
--外键约束:
alter table 表名
add constraint FK_字段名--"FK"为外键的缩写
foreign key (字段名) references 关联的表名(关联的字段名) --注意'关联的表名'和'关联的字段名'
❼ 如何在sql server 2005中建立各表之间的关系
数据库-----------数据库关系图--------新建图表,选择表
用列与列连接就行了,有提示输入
或在表—设计表—右健—关系选项—新增
或在查询分析器里用脚本如:alter
table
t
add
constraint
fk_t
on
foreign
key(t2_id)
references
t2(id)
删除规则和更新规则
指定当数据库的最终用户尝试删除或更新某一行,而该行包含外键关系所涉及的数据时所发生的情况。
如果设置为:
无操作:当在删除或更新主键表的数据时,将显示一条错误信息,告知用户不允许执行该删除或更新操作,删除或更新操作将会被回滚。
层叠:删除或更新包含外键关系中所涉及的数据的所有行。
设置空:这是sql
server
2005新增的功能。如果表的所有外键列都可以接受空值,则将该值设置为空。
设置默认值:这是sql
server
2005新增的功能。如果表的所有外键列都已定义了默认值,则将该值设置为该列定义的默认值。
❽ SQL数据库里面怎样设置表与表之间的关联
设置关联的两表或者多表、通过外键关联、外键字段是从表中的字段、外键(foreign
key)字段需要在主表做主键(primary
key)、
比如
学生表(学号
主键,姓名)
主表
课程表(课号
主键,课名)
主表
选了表(学号
外键,
课号
外键,成绩)
从表
这样三个表就关联了、记住建表顺序、先主表、再从表
然后可以使用代码或者图形界面管理器创建外键、创建完就关联了
外键的取值必须是主键的值