【SQL Server】教材数据库(1)

1 利用sql建立教材数据库,并定义以下基本表:

学生(学号,年龄,性别,系名)

教材(编号,书名,出版社编号,价格)

订购(学号,书号,数量)

出版社(编号,名称,地址)

定义主码、外码、和价格、数量的取值范围。

2 在三个表中输入若干记录,注意如果输入违反完整性约束条件的记录系统有何反应。

新建查询,使用sql语句创建教材数据库

create database jiaocai                   
on primary(
  name = jiaocai,
  filename = 'D:\data_place\jiaocai_data.mdf',
  size = 10mb,
  filegrowth = 1mb
)

log on(
  name = jiaocai_log,
  filename =  'D:\data_place\jiaocai_data.ldf', 
  size = 5mb,
  maxsize = 15mb,
  filegrowth = 10%
)

分别创建学生,教材,出版社,订购表,为属性添加约束。

use jiaocai
create table student(
  id        varchar(30) primary key not null,
  name      varchar(10) not null,
  age       int,
  sex       varchar(6),
  dept      varchar(10)
)   
create table publish(
  id        varchar(30) primary key not null,
  name      varchar(20) not null,
  address   varchar(40)
)
create table book(
  id        varchar(30) primary key not null,
  title     varchar(30),
  c_id      varchar(30) foreign key references publish(id),
  price     int check(price > 0 and price < 200)
)
create table orders(
  s_id      varchar(30) foreign key references student(id),
  b_id      varchar(30) foreign key references book(id),
  number    int check(number > 0 and number < 2000)
)

使用insert into批量向各个表中添加数据


insert into dbo.student(id,name,age,sex,dept) 
values
('2201331','张伟',18,'男','计算机'),
('2202332','王晶',20,'男','光电'),
('2203333','刘丽',19,'女','汉语言'),
('2204334','严正',21,'男','大数据'),
('2205335','蒋婷',18,'女','汉语言'),
('2206336','杨智',19,'女','英语'),
('2207337','周子涵',20,'男','俄语'),
('2208338','王飞',19,'男','机电'),
('2209339','吴昊',18,'女','中文'),
('2210340','徐峰',20,'男','计算机')
insert into dbo.publish(id,name,address)values
('jj01','安徽出版社','安徽'),
('gg01','高教出版社','北京'),
('dd01','长春出版社','长春'),
('aa01','九州出版社','海口'),
('ee01','江苏出版社','江苏'),
('hh01','重庆出版社','重庆'),
('zz01','青岛出版社','青岛'),
('yy01','山东出版社','山东')
insert into dbo.book(id,title,c_id,price)values
('j1','C语言','jj01',50),
('g1','光学应用基础','gg01',68),
('h1','中国古代诗选','hh01',58),
('d1','spark语言基础','dd01',77),
('y1','商务英语','yy01',30),
('e1','计算机俄语','ee01',88),
('a1','机械制图','aa01',56),
('z1','大学语文','zz01',40)
insert into dbo.orders(s_id,b_id,number)values
('2201331','j1',1),
('2202332','g1',2),
('2203333','h1',1),
('2204334','d1',1),
('2205335','y1',1),
('2206336','e1',1),
('2207337','a1',1),
('2208338','z1',1)

这样数据库和对应的带有数据的数据表就创建好了。

use jiaocai
insert into dbo.student(id,name,age,sex,dept) 
values('2209339','王明义',19,'男','计算机')

执行以上sql语句发现添加数据失败,原因是学号作为主键,主键具有唯一标识不能重复。

更换学号后执行成功

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RP2040 C SDK I2C外设使用

RP2040 C SDK I2C外设使用 &#x1f4cc;相关篇《RP2040 VSCode C/C开发环境快速部署》&#x1f4cd;I2C API 外设&#xff1a;https://www.raspberrypi.com/documentation/pico-sdk/hardware.html#group_hardware_i2c&#x1f527;驱动I2C ssd1306 屏幕需要使用到的库&#xf…

模仿微信小程序wx.showModal自定义弹窗,内容可以修改

实现以下弹框样式功能 1.在components新建一个文件showModel.wpy作为组件&#xff0c;复制下面代码 <style lang"less" scoped> .bg_model {display: flex;justify-content: center;align-items: center;// 弹框背景.bg_hui {width: 100%;height: 100%;posi…

二十三种设计模式-工厂方法模式

工厂方法模式是一种创建型设计模式&#xff0c;其核心思想是通过定义一个创建对象的接口&#xff0c;让子类决定实例化哪一个类。工厂方法模式将对象的实例化推迟到子类中进行&#xff0c;从而使得扩展变得容易&#xff0c;而不需要修改现有的代码&#xff0c;符合开闭原则&…

25上半年软考高级系统分析师易混淆知识点

第1章 系统工程与信息系统基础 易混淆点1&#xff1a;系统工程生命周期与信息系统的生命周期 1、系统工程生命周期阶段 探索性研究→概念阶段→开发阶段→生产阶段→使用阶段→保障阶段→退役阶段 2、信息系统的生命周期 产生阶段→开发阶段&#xff08;单个系统开发&…

WebP Vs. PNG:哪种图像格式适合您的网站?

图像对任何网站都至关重要,可以增强视觉吸引力和用户体验。但是,图像也会显着影响网站的加载时间,因此必须针对 Web 使用对其进行优化。一种方法是使用正确的图像格式。

mysql乱码、mysql数据中文问号

网上排出此错误方法的很多&#xff0c;但是 都不简洁&#xff0c;找不到根本原因 主要排查两点&#xff1a; 1.代码中jdbc链接的编码规则 urljdbc:mysql://localhost:3306/title?useUnicodetrue&amp;characterEncodingutf8 将characterEncoding设置为utf8 2.设置mysq…

INT303 Big Data Analytics 笔记

Lecture1 Introduction 不考&#xff01; “Data Mining is the study of collecting, processing, analyzing, and gaining useful insights from data” EXPLORATORY ANALYSIS Make measurements to understand what the data looks like first steps when collecting da…

Web漏洞之CSRF和SSRF

Web漏洞之CSRF和SSRF CSRF CSRF&#xff08;Cross Site Request Forgery&#xff0c;跨站请求伪造&#xff09;是一种通过利用用户身份认证信息&#xff0c;诱导用户执行非预期请求的攻击方式。 一、基础知识 1. 漏洞原理 CSRF 的核心在于黑客利用用户的身份认证信息&…

【YashanDB知识库】hive初始化崖山报错YAS-04209

本文内容来自YashanDB官网&#xff0c;原文内容请见 https://www.yashandb.com/newsinfo/7849008.html?templateId1718516 【问题分类】功能使用 【关键字】hadoop&#xff0c;hive&#xff0c;YAS-02058 【问题描述】hive初始化崖山报错&#xff1a; 0: jdbc:yasdb://192…

Unity3D仿星露谷物语开发12之创建道具列表

1、目标 道具是游戏的核心部分&#xff0c;道具包括你可以拾取的东西&#xff0c;你可以使用的工具和你能种的东西等。 本节就是创建道具的信息类。同时了解ScriptableObject类的使用。 2、创建道具枚举类 修改Assets -> Scripts -> Enums.cs脚本&#xff0c; 新增如…

如何修复 WordPress 中的“Error establishing a database connection”问题

如何修复 WordPress 中的“Error establishing a database connection”问题 在使用 WordPress 建站时&#xff0c;如果你看到“Error establishing a database connection”的提示&#xff0c;不要慌张。这通常意味着网站无法连接到数据库&#xff0c;因此无法显示内容。下面…

Linux内核 -- Netlink多播组消息处理技术

Netlink多播组消息处理技术文档 概述 Netlink是一种用户态与内核态之间通信的机制&#xff0c;支持单播和多播模式。多播组允许多个用户态进程接收同一组的广播消息&#xff0c;广泛应用于网络事件、系统通知等场景。 本文将详细介绍如何在内核态发送多播组消息&#xff0c;…

SQL 基础教程 - SQL SELECT 语句

SQL SELECT DISTINCT 语句 SELECT DISTINCT 语句用于返回唯一不同的值。 在表中&#xff0c;一个列可能会包含多个重复值&#xff0c;有时您也许希望仅仅列出不同&#xff08;distinct&#xff09;的值。 DISTINCT 关键词用于返回唯一不同的值。 SQL SELECT DISTINCT 语法 …

鸿蒙-三角形

Row() {}.leftTriangle(); // 向下 Styles function downTriangle() { .width(0) .height(0) .borderWidth({ left: 20, right: 20, top: 40 }) .borderColor({ left: Color.Transparent, right: Color.Transparent, top: Color.Red }) } // 向上 Styles function upTr…

使用Anaconda管理R语言环境,并使用Jupyter Notebook编写R语言

文章目录 Anaconda中创建R环境0 官方教程存在的问题1 创建R语言环境2 安装常用包集合&#xff1a;r-essentials3 用VS Code的Jupyter插件写R 相信一直使用Python搞数据分析、机器学习的同学们会习惯使用 Anaconda管理不同的Python环境&#xff0c;并使用Jupyter Notebook&#…

3.5mm耳机接口硬件连接

结构 以最复杂的结构为例 简单的结构无非就是没有MIC&#xff08;麦克风&#xff09;接口 上图的5就是Detect的作用 上面这两款产品都为3.5mm的音频插座&#xff0c;图一 为连接4节的音频座&#xff0c;而且有两个开关&#xff0c;1接地&#xff0c;2接MIC&#xff0c;3接左声…

第25天:信息收集-项目系统一键打点资产侦察企查产权空间引擎风险监测利器部署

#知识点 1、信息收集-项目推荐-自动化环境部署 2、信息收集-项目推荐-自动化资产收集管理 一、自动化-网络空间-Yakit&TscanPlus 项目地址&#xff1a;https://www.yaklang.com/ 项目地址&#xff1a;https://github.com/TideSec/TscanPlus 集成Fofa、Hunter、Quake、Zoome…

plantuml的picoweb无法渲染分页图表的问题

1. 背景 使用plantuml自带的picoweb在渲染分页图表时&#xff0c;vscode无法换页&#xff0c;但是使用plantuml官网渲染则没问题。查看plantuml官网的picoweb的说明&#xff0c;picoweb只是plantuml服务的最小实现。因此考虑可能是plantuml服务不全导致的上述问题。 2. docke…

vue3学习笔记(11)-组件通信

1.props 父传子 子传夫 父传子 接收用defineProps([]) 空字符串也是假 2.自定义事件 $event:事件对象 ref定义的数据在模板里面引用的时候可以不用.value 3.子传父 宏函数 触发事件 声明事件 defineEmits() 挂载之后3s钟触发 4.命名 肉串命名 5.任意组件通信 mitt pubs…

1 数据库(下):多表设计 、多表查询 + SQL中的with查询语法(MySQL8.0以后版本才支持这种新语法)+ 数据库优化(索引优化)

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、多表设计1 多表设计-概述2 三种多表关系一对多&#xff08;多对一&#xff09;&#xff08;1&#xff09;无外键约束&#xff08;逻辑外键&#xff09;&…