数据库实验报告 数据定义操作 3

实验报告(第3次)

实验名称  数据定义操作                                                    实验时间 10月12日1-2节

一、实验内容

1、本次实验是用sql语句创建库和表,语句是固定的,要求熟记这些sql语句。

二、源程序及主要算法说明

CREATE TABLE Student          (Sno   CHAR(9) PRIMARY KEY, /* 列级完整性约束条件*/                  Sname  CHAR(20) UNIQUE, /* Sname取唯一值*/Ssex    CHAR(2),Sage   SMALLINT,Sdept  CHAR(20)); CREATE TABLE  Course( Cno       CHAR(3) PRIMARY KEY,Cname  CHAR(30),            Cpno     CHAR(3) ,                                      Ccredit  SMALLINT,FOREIGN KEY (Cpno) REFERENCES  Course(Cno) );CREATE TABLE  SC(Sno  CHAR(9), Cno  CHAR(3),  Grade    SMALLINT,PRIMARY KEY (Sno,Cno),  FOREIGN KEY (Sno) REFERENCES Student(Sno),FOREIGN KEY (Cno) REFERENCES Course(Cno));CREATE TABLE 成绩(学号 char(8) not null,课程号 char(8) not null,成绩  int CHECK(成绩>=0  and 成绩<=100))CREATE  TABLE 学生(   学号  char(10),姓名  char(10),性别  char(2)  DEFAULT '男')

三、测试数据及结果

任务

点击“新建查询”——在命令行使用命令建立数据库

创建了数据库后点执行,右击数据库“刷新”,即可看到左边出现了students数据库。

查看students的属性可以看到创建的数据文件和日志文件如下图所示

打开D盘即可看到创建的school数据库的数据文件和日志文件

2.根据下图创建带有两个数据文件和两个日志文件的数据库test.

鼠标右击数据库刷新即可看到test数据库,右击test数据库查看test属性

3.一句话创建默认数据库:create database wj31;

修改数据库名字:alter database  原数据库名 modify name=新数据库名;

删除数据库语句:drop database 数据库名;删除后刷新才可以看到

4:查看全部数据库 sp_helpdb;

5:查看数据库的文件信息: sp_helpdb 数据库名;

6:用SQL语句在数据库创建表;

7:建好表后,再次添加一列: alter table 表名 add 列名 类型null;

8:把room 的类型改为char(6): alter table student alter column room char(6)

9:删除student表的room列

10:删除student表

按照给定的源程序创建三个表

结果

1-1:用SQL语句删除sc表的外键约束

删除前

删除后

1-2:用SQL语句删除student表的主键约束

删除前

删除后

1-3:用SQL语句添加student表的主键约束

添加前

添加后

1-4:给sc表的添加外键约束。

添加前

添加后

2-1:删除成绩的check约束

删除前

删除后

2-2:添加成绩的check约束

添加前

添加后

3-1:删除上例建立的default约束

删除前

删除后

3-2:为性别添加default

添加前

添加后

3-3:为姓名添加unique约束

添加前

添加后

四、出现的问题和解决方案

问题:列级约束中未给约束起别名则默认约束名称连接符为两个“_”

解决方法:直接从图形化界面的中寻找约束或键的名称复制即可

五、心得体会与自我评价

本次实验虽较为简单,但仍需细心并耐心按照实验文档指示完成。

六、教师评语

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

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

相关文章

霍夫圆变换全面解析(OpenCV)

文章目录 一、霍夫圆变换基础1.1 霍夫圆变换概述1.2 圆的数学表达与参数化 二、霍夫圆变换算法实现2.1 标准霍夫圆变换算法流程2.2 参数空间的表示与优化 三、关键参数解析3.1 OpenCV中的HoughCircles参数3.2 参数调优策略 四、Python与OpenCV实现参考4.1 基本实现代码4.2 改进…

记录一次修改nacos安全问题导致服务调用出现404

1、nacos默认值修改 nacos.core.auth.plugin.nacos.token.secret.key**** nacos.core.auth.server.identity.key******** nacos.core.auth.server.identity.value************ 重启nacos, 这时候微服务的token认证会立即失效&#xff0c;等待自动重连认证或者手动重启服务 2、…

Python面试总结

hello&#xff0c;大家好&#xff0c;我是potato&#xff0c;我总结一下最近的面试遇到的问题~ 1.Python开发&#xff08;软通动力&#xff09; 自我介绍主要问了项目(YOLOv11)项目遇到的难点和解决方法is&#xff0c;列表和元组的区别Python多线程有什么问题&#xff1f;Pyt…

5.18 day24

知识点回顾&#xff1a; 元组可迭代对象os模块 作业&#xff1a;对自己电脑的不同文件夹利用今天学到的知识操作下&#xff0c;理解下os路径。 元组 元组的特点&#xff1a; 有序&#xff0c;可以重复&#xff0c;这一点和列表一样 元组中的元素不能修改&#xff0c;这一点…

Uniapp中小程序调用腾讯地图(获取定位地址)

1、先配置权限&#xff1a; 这是上图的代码&#xff1a; "permission": { "scope.userLocation": { "desc": "你的位置信息将用于小程序位置接口的效果展示" } } 第二步&#xff1a;写代码&#xff1a; //下面是uniapp的模版代码 主…

写spark程序数据计算( 数据库的计算,求和,汇总之类的)连接mysql数据库,写入计算结果

1. 添加依赖 在项目的 pom.xml&#xff08;Maven&#xff09;中添加以下依赖&#xff1a; xml <!-- Spark SQL --> <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-sql_2.12</artifactId> <version>3.3.0…

nginx服务器实验

1.实验要求 1&#xff09;在Nginx服务器上搭建LNMP服务&#xff0c;并且能够对外提供Discuz论坛服务。 在Web1、Web2服务器上搭建Tomcat 服务。 2&#xff09;为nginx服务配置虚拟主机&#xff0c;新增两个域名 www.kgc.com 和 www.benet.com&#xff0c;使用http://www.kgc.…

Spring Boot 与 RabbitMQ 的深度集成实践(一)

引言 ** 在当今的分布式系统架构中&#xff0c;随着业务复杂度的不断提升以及系统规模的持续扩张&#xff0c;如何实现系统组件之间高效、可靠的通信成为了关键问题。消息队列作为一种重要的中间件技术&#xff0c;应运而生并发挥着举足轻重的作用。 消息队列的核心价值在于其…

c++多线程debug

debug demo 命令行查看 ps -eLf|grep cam_det //查看当前运行的轻量级进程 ps -aux | grep 执行文件 //查看当前运行的进程 ps -aL | grep 执行文件 //查看当前运行的轻量级进程 pstree -p 主线程ID //查看主线程和新线程的关系 查看线程栈结构 pstack 线程ID 步骤&…

10.7 LangChain v0.3架构大升级:模块化设计+多阶段混合检索,开发效率飙升3倍!

LangChain v0.3 技术生态与未来发展 关键词:LangChain Chains, Agents 架构, Retrieval Strategy, LangGraph, 模块化设计 3. LangChain 项目:Chains, Agents, Retrieval Strategy LangChain v0.3 通过 Chains-Agents-Retrieval 三位一体的技术栈,构建起完整的大模型应用开…

分布式 ID 生成的五种方法:优缺点与适用场景

0.简介 在分布式系统中&#xff0c;生成全局唯一的id是一个常见的需求。由于分布式系统的特性&#xff08;多节点&#xff0c;网络分区&#xff0c;时钟不同步等&#xff09;&#xff0c;传统的单机ID生成方式不再适用&#xff0c;所以一些分布式生成方式应运而生&#xff0c;…

基于单片机路灯自动控制仪仿真设计

标题:基于单片机路灯自动控制仪仿真设计 内容:1.摘要 本设计旨在解决传统路灯控制方式效率低、能耗大的问题&#xff0c;开展了基于单片机的路灯自动控制仪仿真设计。采用单片机作为核心控制单元&#xff0c;结合光照传感器、时钟模块等硬件&#xff0c;运用相关软件进行编程和…

计算机网络-MPLS VPN基础概念

前面几篇文章我们学习了MPLS的标签转发原理&#xff0c;有静态标签分发和LDP动态标签协议&#xff0c;可以实现LSR设备基于标签实现数据高效转发。现在开始学习MPLS在企业实际应用的场景-MPLS VPN。 一、MPLS VPN概念 MPLS&#xff08;多协议标签交换&#xff09;位于TCP/IP协…

LWIP的Socket接口

Socket接口简介 类似于文件操作的一种网络连接接口&#xff0c;通常将其称之为“套接字”。lwIP的Socket接口兼容BSD Socket接口&#xff0c;但只实现完整Socket的部分功能 netconn是对RAW的封装 Socket是对netconn的封装 SOCKET结构体 struct sockaddr { u8_t sa_len; /* 长…

windows 安装gdal实现png转tif,以及栅格拼接

windows 安装gdal实现png转tif&#xff0c;以及栅格拼接 一、安装gdal 网上有很多安装gdal的方法&#xff0c;此处通过osgeo4w安装gdal 1.下载osgeo4w 下载地址 https://trac.osgeo.org/osgeo4w/ 2、安装osgeo4w exe文件安装&#xff0c;前面部分很简单&#xff0c;就不再…

Node.js 源码概览

Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时环境&#xff0c;它的源码结构相当庞大且复杂。下面我将为你讲解 Node.js 源码的主要结构和关键组成部分。 源码结构 Node.js 的主要源码目录结构如下&#xff1a; node/ ├── lib/ # JavaScript 核心模…

Linux :线程 【生产者消费者模型】

Linux &#xff1a;线程 【生产者消费者模型与信号量】 &#xff08;一&#xff09;生产消费模型1、生产消费模式概念2、生产者消费者之间的关系3、生产者消费者模型优点 &#xff08;二&#xff09;基于BlockingQueue的生产者消费者模型1、基于阻塞队列模型2、模拟实现基于阻塞…

mac本地docker镜像上传指定虚拟机

在Mac本地将Docker镜像上传至指定虚拟机的完整步骤 1. 在Mac本地保存Docker镜像为文件 通过docker save命令将镜像打包为.tar文件&#xff0c;便于传输至虚拟机。 # 示例&#xff1a;保存名为"my_image"的镜像到当前目录 docker save -o my_image.tar my_image:ta…

C++跨平台开发经验与解决方案

在当今软件开发领域&#xff0c;跨平台开发已成为一个重要的需求。C作为一种强大的系统级编程语言&#xff0c;在跨平台开发中扮演着重要角色。本文将分享在实际项目中的跨平台开发经验和解决方案。 1. 构建系统选择 CMake的优势 跨平台兼容性好 支持多种编译器和IDE 强大…

Void: Cursor 的开源平替

GitHub&#xff1a;https://github.com/voideditor/void 更多AI开源软件&#xff1a;发现分享好用的AI工具、AI开源软件、AI模型、AI变现 - 小众AI Void&#xff0c;这款编辑器号称是开源的 Cursor 和 GitHub Copilot 替代品&#xff0c;而且完全免费&#xff01; 在你的代码库…