主键和外键

2023-12-08

我有3张桌子

   Student    Loan    Book
 - StudentID  LoanID  BookID

我需要设置哪些外键,以便在给出学生姓名时,搜索该学生的所有贷款并显示书籍详细信息


这是从如此模糊的要求开始的:

CREATE TABLE dbo.Students
(
  StudentID INT PRIMARY KEY
  -- , other columns about students
);

CREATE TABLE dbo.Loans
(
  LoanID    INT PRIMARY KEY,
  StudentID INT NOT NULL FOREIGN KEY REFERENCES dbo.Students(StudentID)
  -- , other columns about loans
);

CREATE TABLE dbo.Books
(
  BookID INT PRIMARY KEY,
  -- , other columns about books
);

CREATE TABLE dbo.StudentBooks
(
  StudentID INT NOT NULL FOREIGN KEY REFERENCES dbo.Students(StudentID),
  BookID    INT NOT NULL FOREIGN KEY REFERENCES dbo.Books(BookID)
);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

主键和外键 的相关文章

  • 将每月数据分解为每日数据

    我有一家公司的预算数据 采用以下每月格式 SqlFiddle 链接在这里 http sqlfiddle com 3 09263 1 Dept YearMonth Budget 001 201301 100 001 201302 110 00
  • 为列名创建动态选择获取值 - 在 SQL Server 中

    请帮助我创建一个选择 SQL 语句 其中的结果列名称是从原始表中的列值获取的 表名是Device Part 用户可以输入很多DeviceCode其中有许多动态PartTypeName PartTypeName 值为PartInfo 这可能有
  • 如何在 mysql 或 JDBC 的表中自动插入外键引用?

    我正在使用MySQL 我的问题是如何自动将新添加的行插入外键表中 一个例子可以澄清我的问题 我有两个表 员工 和 薪水 CREATE TABLE Employee emp id int NOT NULL AUTO INCREMENT nam
  • 删除 DB 但不删除 *.mdf / *.ldf

    我正在尝试自动化分离和删除数据库的过程 通过 VBS objshell run 如果我手动使用 SSMS 分离和删除我可以将数据库文件复制到另一个位置 但是如果我使用 sqlcmd U sa P MyPassword S local Q A
  • 在调用存储过程 Sql Server 2008 时使用嵌套存储过程结果

    是否可以在另一个存储过程中使用一个存储过程的结果 I e CREATE PROCEDURE dbo Proc1 ID INT mfgID INT DealerID INT AS BEGIN DECLARE Proc1Result UserD
  • 尝试使用 SQL 身份验证登录失败

    我正在尝试使用 sa 用户名及其密码连接到 SQL Server 2008 在 SQL Server 日志文件中我看到以下错误 用户 sa 登录失败 原因 尝试使用 SQL 登录 认证失败 服务器配置为 Windows 身份验证 仅有的 当
  • 在 SQL Server 数据库之间传递用户定义的表类型

    我在 SQL Server 的一个数据库中有一个用户定义的表类型 我们称之为DB1 我的类型的定义非常简单 仅包含 2 列 创建我的类型的脚本如下 CREATE TYPE dbo CustomList AS TABLE ID int Dis
  • 插入并发问题-多线程环境

    我有一个问题 即使用完全相同的参数在完全相同的时间调用相同的存储过程 存储过程的目的是获取记录 如果存在 或创建并获取记录 如果不存在 问题是两个线程都在检查记录是否存在并报告错误 然后都插入新记录 在数据库中创建重复记录 我尝试将操作保留
  • 如何检查是否启用了更改跟踪

    我试图在运行之前确定我的数据库是否已启用更改跟踪ALTER DATABASE命令来启用它 我试图防止这些脚本多次运行时出现错误 我签到了sys databases and sys dm tran commit table但无法找到我要找的东
  • 如何查询多个链接服务器?

    链接一些 SQL Server 2008 服务器 实例后 我想对这些服务器进行更通用的查询 我知道我必须像这样指定查询的命运 select from SRV INSTANCE dbname dbo foo 但是 我会针对多个链接服务器运行此
  • 如何使用sql脚本更改列的属性

    如何使用 sql 脚本更改列的属性 这是我尝试过但出现错误的方法 ALTER TABLE dbo tblBiometricPattern COLUMN BiometricPatternID TINYINT NOT NULL IDENTITY
  • 批量插入不适用于 NULL 数据

    当我从 CSV 文件将批量数据插入到表中时 它不起作用 显示错误 第 2 行第 9 列的批量加载数据转换错误 类型不匹配或指定代码页的字符无效 csv 文件中的第 9 列值为空 我该如何处理这个问题 根据这些信息 我认为目标表的特定字段被定
  • 如何在 SQL Server 中保持数据行内

    我正在尝试找出如何检测数据是否在VARCHAR n SQL Server 2008 中的列存储在行内或行外 有谁知道如何做到这一点 另外 如果我们需要数据 有没有办法将数据保持在行中 要查看某个值是行内还是行外 您可以使用DBCC PAGE
  • 包含列和行总计的 SQL 数据透视表

    我正在尝试将行和列总计添加到该数据透视表中 create table test4 city nvarchar 10 race nvarchar 30 sex nvarchar 10 age int insert into test4 val
  • 如何判断一个引用的对象是否可以删除?

    我有一个名为 Customer 的对象 它将在其他表中用作外键 问题是我想知道是否可以删除 客户 即 它没有在任何其他表中引用 Nhibernate 可以做到这一点吗 你所要求的是找到的存在CustomerPK值在引用表FK列中 有很多方法
  • IIF(...) 不是公认的内置函数

    我正在尝试在 Microsoft SQL Server 2008 R2 中使用它 SET SomeVar SomeOtherVar IIF SomeBool value when true value when false 但我收到一个错误
  • SqlCommand.Dispose() 在 SqlTransaction.Commit() 之前?

    在提交事务之前处理分配给事务的命令是否有效 我自己测试了以下代码 它似乎工作得很好 但这是一个相当小的例子 所以我正在寻找是否有人确实知道的确认 internal static void TestTransaction try Progra
  • 消息 203,级别 16,状态 2,不是有效标识符

    我收到以下错误 消息 203 级别 16 状态 2 过程 getQuestion 第 18 行名称 select top 1 from tlb Question inner join tlb options on tlb options q
  • MySQL InnoDB 约束不起作用

    我偶然发现 innoDB 约束的奇怪行为 但找不到原因 我有包含数据的表格 下面列出了它们的结构 CREATE TABLE contents id int 10 unsigned NOT NULL AUTO INCREMENT title
  • SQL存储过程执行时间差异

    我在 win form 应用程序中遇到奇怪的问题 我正在调用一个存储过程 并且执行大约需要 6 秒 此存储过程接受多个参数 包括一个输出参数 从应用程序级别我使用 Dim dt1 DateTime Now cmd ExecuteNonQue

随机推荐

  • 在phpStorm中指定php.ini

    我已经设置了我的 PHP 环境 PHPRC环境变量指向php ini Since PHPRC在 bash 启动期间设置 但从未为 phpStorm 设置 这意味着 phpStorm 使用了错误的php ini对于 CLI 这尤其令人烦恼 因
  • imshow() 的数字太小

    我正在尝试使用 imshow 可视化 numpy 数组 因为它类似于 Matlab 中的 imagesc imshow random rand 8 90 interpolation nearest 得到的图形在灰色窗口的中心非常小 而大部分
  • 从模式计算多个 data.frame 列的最佳方法

    我定期接收数据data frame宽格式如下 head data date NSW 1 AUS 1 NSW 2 AUS 2 1 2000 01 01 0 38358623 1 78824221 0 995984590 1 0744594 2
  • PHP中socket编程获取客户端IP

    我正在使用 PHP 编写一个使用套接字库的应用程序 如何获取客户端的IP 谢谢你的帮助 Use 套接字获取对等点名称
  • 我真的需要为 const 对象实现用户提供的构造函数吗?

    我有代码 class A public A default private int i 1 int main const A a return 0 它在 g 上编译得很好 参见ideone 但在 clang 上失败并出现错误 const 类
  • Three.js - 绕特定轴旋转对象

    我用过三个 REVISION 68 我已经按轴完成了旋转 OBJECT X z http jsfiddle net eVkgs 39 当我更改位置 OBJECT X 时 CubeGeometry applyMatrix new THREE
  • 如何让 Spring Data Neo4j 和 Spring Data JPA 协同工作?

    我有一个应用程序 它使用 MySQL 并通过 REST Neo4j 服务器版本执行一些批处理作业 我不知道如何让它们正确地协同工作 我可以让它们同时工作 但不能同时工作 我发现的帖子并不特定于 Neo4j 的服务器版本 也许这就是问题所在
  • Python 写入 .txt 文件时换行符“\n”不起作用

    for word in keys out write word str dictionary word n out open alice2 txt r out read 由于某种原因 Python 并没有为字典中的每个单词换行 而是在每个键
  • 使用 TFS 2015 .NET 客户端库从模板创建构建定义

    我正在使用 NET 客户端库VSTS TFS 2015 根据我在另一个团队项目中获取的模板以编程方式创建构建定义 我可以使用以下方法获取构建定义模板 2 0 BuildDefinitionTemplate builddeftemplate
  • 通过 std::bit_cast()ed 指针进行别名访问

    违反严格别名规则会产生未定义的行为 例如当通过网络将结构发送到 char 缓冲区时 然后该 char 指针是 C 风格 std reinterpret cast 转换为结构体指针 The C std bit cast 功能看起来它可以用来以
  • 带乳胶的轴刻度标签的无衬线字体

    我第一次尝试将 Latex 与 matplotlib 一起使用 似乎在使用 Latex 时 matplotlib 使用衬线字体作为轴标签 我尝试使用显式将字体系列设置为 sans serif rc font family sans seri
  • 如何更改 WPF 中 TextBox 的禁用背景颜色

    我看到以下与我的问题相关的线程 WPF ComboBox 禁用时的背景颜色 上面涉及更改内容模板ComboBox 我正在使用 WPF 对样式和模板有些陌生 我想更改禁用的暗灰色背景颜色TextBox到其他颜色 我们用TextBoxes在我们
  • 用于没有固定列的 HTML 动态布局的 CSS?

    我想设置这样的布局 两列都是动态的 一个由内容设置 第二个由第一列和最小宽度设置 我找到了许多解决方案 其中列的宽度是固定的 但它没有解决这个问题 看看我想要在屏幕上实现什么 我应该使用什么CSS 对于这样的东西有不同的方法 一个简单的方法
  • 将 vertex.label 放置在 igraph 中的圆形布局之外

    我有一个圆形布局 igraph 我希望顶点标签显示在圆形区域之外 尝试玩周围vertex label cex and vertex label degree但没有用 请指教 vertex label degree需要一些认真的 但简单的 调
  • matplotlib 动画保存不遵守 blit=True 但它似乎在 plt.show() 中工作得很好

    我对 Python 很陌生 正在尝试使用 matplotlib 对文本进行动画处理 使用几个在线示例得出以下代码 import matplotlib pyplot as plt import matplotlib animation as
  • 如何在 Mac OS X 中获取指向二进制部分的指针?

    我正在编写一些代码 将一些数据结构存储在一个特殊的命名二进制部分中 这些都是同一结构的实例 分散在许多 C 文件中 并且不在彼此的范围内 通过将它们全部放在指定的部分中 我可以迭代它们 这与 GCC 和 GNU ld 完美配合 由于缺少而在
  • 核心数据设计——如何同时拥有应用数据和用户数据?

    我遇到的情况是 我有一组随我的应用程序附带的基本信息 用户可以添加或编辑此信息 但有时 我需要能够更新基础数据 我不想触及用户更改 添加 我看过这个问题 但所使用的类比有点陌生 这一定是一个常见问题 我希望听到此类混合数据集的实践和经验 我
  • 如何使用多项逻辑回归解决多标签分类问题?

    我必须根据其他属性来预测学生所在的课程类型 prog是一个分类变量 指示学生所在课程的类型 普通 1 学术 2 或 职业 3 Ses是一个分类变量 表示某人的社会经济阶层 低 1 中 2 和 高 3 read write math scie
  • 在R中绘制频率密度直方图

    使用 R 任何人都可以告诉我如何绘制一个简单的直方图 并且以下数据的箱之间没有间隙 Class Width Freq Dist 0 lt x lt 5 0 2 5 lt x lt 15 0 1 15 lt x lt 20 1 2 20 lt
  • 主键和外键

    我有3张桌子 Student Loan Book StudentID LoanID BookID 我需要设置哪些外键 以便在给出学生姓名时 搜索该学生的所有贷款并显示书籍详细信息 这是从如此模糊的要求开始的 CREATE TABLE dbo