数据库|基于T-SQL添加默认约束、外键约束、内连接查询

哈喽,你好啊,我是雷工!
前边学习了基于T-SQL48_47.基于T-SQL添加数据、CRUD操作、标识列详解:《数据库|基于T-SQL向数据库数据表中添加、修改、删除数据》
接下来接着学习基于T-SQL添加默认约束、外键约束、内连接查询,以下为学习笔记。

01 默认约束

默认约束是用于指定列在插入数据时的默认值。
当向数据表中插入一行数据时,如果没有为某个列指定具体的值,那么该列将使用其默认约束定义的默认值。

在创建表时定义默认约束:

CREATE TABLE 表名(1 数据类型 DEFAUL 默认值,
    ……
)

例如:在作者表中为地址添加默认值“地址不详”
代码:

create table Author
(
       AuthorId int identity(10001,1) primary key,--作者编号,主键
       LoginAccount nvarchar(50)not null,--登录账号
       LoginPwd varchar(18)check(len(LoginPwd)>=8 and len(LoginPwd)<=18) not null,--登录密码
       AuthorName varchar(20)not null,--作者名字
       Phonenumber char(11)not null,--手机
       NowAddress nvarchar(100)default('地址不详')--地址
)
go

然后再次向数据表中添加数据时,如果有地址信息替换为对应地址信息,没有指定地址信息则显示“地址不详”。

测试结果如下:
在这里插入图片描述

02 外键约束

外键约束是数据库设计中的概念,用于确保有关系的两个表数据的一致性和完整性。
在关系数据库中,外键是一个列或列集合,它指向另一个关联表中的主键或唯一键。

作用:当我们在外键表中,添加数据的时候,如果和主表建立引用关系,则会自动的从主表中对应的字段中查询数据是否一致,不一致的话会拒绝插入。
保证数据一致。
示例:

2.1、创建账号类型表:

代码如下:

--账号类型表
if exists(select*from sysobjects where name='AccountType')
drop table AccountType
go
create table AccountType
(
       TypeId int identity(10,1)primary key,--类型编号
       TypeName varchar(20)not null--类型名称
)
go

2.2、添加类型

向账号类型表中添加【科技】、【美食】、【综合】三个类型
代码如下:

--添加账号分类
insert into AccountType(TypeName)values('科技'),('美食'),('综合')

查询账号类型表的信息
代码如下:

select*from AccountType

2.3、查询结果:

在这里插入图片描述

2.4、创建账号表

创建账号表,其中TypeId列为外键,指向账号分类表的TypeId列
代码如下:

--账号表
if exists(select*from sysobjects where name='Account')
drop table Account
go
create table Account
(
       AccountId int identity(10001,1) primary key,--账号编号
       AccountName varchar(20)not null,--账号名称
       AccountContent nvarchar(500)not null,--账号简介
       originality int not null,--原创数
       TypeId int references AccountType(TypeId) not null--外键约束
)
go

2.5、向账号表添加信息

当添加的信息中TypeId值(9)在账号类型表中不存在时,插入报错。
代码及执行结果如下:

在这里插入图片描述
当添加的信息中TypeId值为11,在账号类型表中存在时,则可正常插入。
代码及执行结果:

在这里插入图片描述

查询插入结果为:
在这里插入图片描述

03 内连接查询

通过inner join连很查询两个表的信息。
代码示例:

select AccountName,AccountContent,originality,Account.TypeId,AccountType.TypeName from Account
inner join AccountType on Account.TypeId=AccountType.TypeId

查询结果:
在这里插入图片描述

04、后记

以上为基于T-SQL添加默认约束、外键约束、内连接查询相关的基础内容,
有对相关内容感兴趣的小伙伴,欢迎点个关注,我们一起学习进步。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/653254.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于直接二元搜索的片上偏振分束器设计 (Nature Photonics, 9, 6, (2015))案例复现

时间—2024.6.08 腾讯会议 智能算法驱动的光子学设计与应用

Python装饰器的应用

Python 中的装饰器是一种语法糖&#xff0c;可以在运行时&#xff0c;动态的给函数或类添加功能。装饰器本质上是一个函数&#xff0c;使用 函数名就是可实现绑定给函数的第二个功能 。它的作用就是在不修改被装饰对象源代码和调用方式的前提下为被装饰对象添加额外的功能。 …

小程序大能量:盲盒平台搭建与营销策略

一、引言 在移动互联网的浪潮下&#xff0c;小程序以其轻量级、即用即走的特点&#xff0c;成为了商家与消费者沟通的新桥梁。盲盒经济作为近年来兴起的消费趋势&#xff0c;结合小程序平台&#xff0c;不仅为用户带来了全新的购物体验&#xff0c;也为商家带来了更多的商业机…

【前端常见面试题整理】

开放性的题目 自我介绍 突出学习能力 我想换工作的主要原因是 介绍项目 平时是如何学习前端开发的 主要就是两个途径&#xff0c;一个是查阅官方文档&#xff0c;然后就是在网上查找技术资料或者视频去学习。平时没事的时候也会看看github&#xff0c;同时关注一些社区和IT网…

企企通入选第一新声《2024年中国CIO数字化产品选型白皮书》供应链数字产品可信名录

近日&#xff0c;第一新声研究院根据多年产业数字化研究&#xff0c;历经近半年时间&#xff0c;并综合近200位CIO调研与推荐意见&#xff0c;发布《2024年中国CIO数字化产品选型白皮书》&#xff0c;并推出企业CIO选型指南及可信产品名录。企企通凭借其优秀的采购数字化与供应…

概率分布函数与误差函数的关系

正态函数&#xff08;高斯分布&#xff09; 对其求[b,x]区间的积分 标准误差函数 以下两个方程相等&#xff08;a,b取值任意&#xff09; 两个函数重合 可知正态函数 f(t) 在[b,x]的区间上积分等于 引用desmos计算器&#xff1a;Desmos | Lets learn together.

【研0深度学习】李宏毅2024春《生成式人工智能导论》持续更新...

文章目录 第1讲 什么是生成式人工智慧&#xff1f;第2讲 今日的生成式人工智慧厉害在哪里&#xff1f;第3-5讲 训练不了人工智慧&#xff0c;你可以训练你自己&#xff08;在不训练模型的情况下强化语言模型的方法&#xff09;第6讲 大模型修炼史——第一阶段 自我学习 累计实力…

Linux 系统中 ODBC 驱动的安装与配置指南

Linux 下的 ODBC 包 从发布包中获取&#xff0c;包名为 openGauss-*.*.0-ODBC.tar.gz。Linux 环境下&#xff0c;开发应用程序要用到 unixODBC 提供的头文件&#xff08;sql.h、sqlext.h 等&#xff09;和库 libodbc.so。这些头文件和库可从 unixODBC-2.3.0 的安装包中获得。 …

JavaWeb开发 2.Web开发 Web前端开发 ①介绍

内心一旦平静&#xff0c;外界便鸦雀无声 —— 24.5.27 一、初识Web前端 网页有哪些部分组成? 文字、图片、音频、视频、超链接 ...网页&#xff0c;背后的本质是什么? 前端代码前端的代码是如何转换成用户眼中的网页的? 通过浏览器转化(解析和渲染)成用户看…

PID控制中的积分到底是什么,为什么它可以将矩形线转换为曲线?simulink搭建PID控制,积分模块1/s

PID控制中的积分到底是什么&#xff0c;为什么它可以将矩形线转换为曲线&#xff0c; 这个问题呢其实道理很简单&#xff0c;用到的是初中的知识 我们做几个测试案例 如下面matlab搭建了积分1/s 那显示如下&#xff08;红色曲线相当于加速度、蓝色曲线相当于速度&#xff09;&a…

WHLUG活动回顾 | 4大技术分享!干货满满,热闹非凡!

内容来源&#xff1a;deepin&#xff08;深度&#xff09;社区 2024 年 5 月 25 日下午&#xff0c;由 deepin&#xff08;深度&#xff09;社区华中科技大学开放原子开源俱乐部联合举办的武汉 Linux 爱好者线下沙龙活动&#xff08;WHLUG&#xff09;在华中科技大学成功举办。…

因智而兴 向“新”而行 | 软通动力携子公司鸿湖万联亮相数字中国建设峰会·智算云生态大会

5月23日至27日&#xff0c;第七届数字中国建设峰会在福州盛大召开。作为峰会的重要组成部分&#xff0c;由中国电信、中国电科、中国电子联合主办的第三届智算云生态大会同步召开。此次大会以“国云注智 聚力向新”为主题&#xff0c;深入探讨了智算云、人工智能、数据要素、量…

技术支持服务体系建设

作者黄凯&#xff0c;曾就职于阿里云&#xff0c;从事对外电商能力输出平台Linkedmall的研发工作。 背景 曾在某公司做过某项目的技术支持负责人&#xff0c;对技术支持服务体系的建设偶有心得。打算分享一下。 我们是个ToBToC的电商项目&#xff0c;最初随着项目的上线&…

如何部署一套高可用性的医院信息管理系统?基于华为云、SpringBoot、Vue及Jenkins、Gitlab的CI/CD流程

目录 一、项目背景 二、项目架构 三、项目部署流程 1、前端部署 2、后端部署 3、监控与运维 四、项目过程 一、项目背景 随着医疗信息化程度的不断加深&#xff0c;医院信息管理系统的稳定性和可用性成为了医疗机构日常运营的关键。在这个数字化时代&am…

干冰清洗机的清洗原理及应用

干冰清洗机的清洗原理及应用可以详细阐述如下&#xff1a; 一、清洗原理 干冰清洗机的清洗原理主要基于干冰的低温冷冻作用。干冰在常温下会迅速升华&#xff0c;吸收大量的热量&#xff0c;使周围的温度迅速降低。当干冰颗粒通过特殊的干冰清洗机喷射到清洗物体表面时&#…

数据库系统概论(个人笔记)(第三部分)

数据库系统概论&#xff08;个人笔记&#xff09; 文章目录 数据库系统概论&#xff08;个人笔记&#xff09;3、SQL介绍3.1 SQL查询语言概述3.2 SQL数据定义3.3 SQL查询的基本查询结构3.4 其他基本操作3.5 设置操作3.6 空值3.7 聚合函数3.8 嵌套子查询3.9 数据库的修改 3、SQL…

sklearn监督学习--k近邻算法

sklearn监督学习 一、分类与回归二、泛化、过拟合与欠拟合三、k近邻算法四、分析KNeighborsClassifier五、k近邻算法用于回归优点、缺点和参数 一、分类与回归 监督学习是最常用也是最成功的机器学习类型之一。监督机器学习问题主要有两种&#xff0c;分别叫做分类与回归。分类…

金蝶云星空与旺店通·企业版对接集成采购入库查询打通创建采购入库单

金蝶云星空与旺店通企业版对接集成采购入库查询打通创建采购入库单 数据源系统:金蝶云星空 金蝶K/3Cloud&#xff08;金蝶云星空&#xff09;是移动互联网时代的新型ERP&#xff0c;是基于WEB2.0与云技术的新时代企业管理服务平台。金蝶K/3Cloud围绕着“生态、人人、体验”&…

没人愿意和我们最好的工程师一起工作

几年前&#xff0c;有一位魔术般厉害的工程师&#xff08;我们叫他“乔恩”&#xff09;为我工作。他的代码写得很好&#xff0c;代码审查&#xff08;PRs&#xff09;也完成得很快。从技术角度来看&#xff0c;他是个出色的工程师。 我们从其他工程师那里得到了一些关于他的普…

IDEA通过tomcat运行注意事项

配置run--》edit configurations 以下的A B部分要保持一致 A和B的路径要保持一致