数据库SQL语言实战(一)

简介: 数据库SQL语言实战(一)



创建SQL表

题目一

创建学生信息表(学生编号、姓名、性别、年龄、出生日期、院系名称、班级):

    test1_student:sid char 12 not null、name varchar 10 not null、sex char 2、age int、

birthday date、dname varchar 30、class varchar 10

create table student(
  sid char(12) not null,
  name varchar(10) not null,
  sex char(2),
  age int,
  birthday date,
  dname varchar(30),
  class varchar(10)
)

关键点:

1、 SQL语言不区分大小写

2、 学号、性别这种数据才可以用char固定类型,姓名这种必须使用varchar

3、 日期数据使用birthday类型

题目二

创建课程信息表(仅考虑一门课程最多一个先行课的情况)(课程编号、课程名称、先行课编号、学分)

test1_course:cid char 6 not null、name varchar 40 not null、fcid char 6、credit numeric 4,1(其中4代表总长度,1代表小数点后面长度)。

create table test1_course(
  cid char(6) not null,
  name varchar(40) not null,
  fcid char(6),
  credit numeric(4,1)
)

关键点:

1、 not null表示属性值不可为空

2、 主键=不可重复+不可为空

3、 numeric数据类型意思是浮点数,前者表示总共几位数,后者表示小数点后几位数

题目三

创建学生选课信息表(学号、课程号、成绩、教师编号、选课时间)

test1_student_course:sid char 12 not null、cid char 6 not null、

score numeric 5,1(其中5代表总长度,1代表小数点后面长度)、tid char 6、sctime date。

create table test1_student_course
(
  sid char(12) not null,
  cid char(6) not null,
  score numeric(5,1),
  tid char(6),
  sctime date
)

插入数据

题目一

给表test1_student插入2行数据。

insert into test1_student values(201800020102,'李华','女',20,to_date('19950303','yyyymmdd'),'软件学院','2009')
//一次只能执行一条插入语句
insert into test1_student values(201800020101,'王欣','女',21,to_date('19940202','yyyymmdd'),'计算机学院','2010')

关键点:

1、 一般插入语句一次只能执行一条

2、 birthday数据类型插入时要用to_date('19950303','yyyymmdd')

3、 SQL中的字符串用单引号表示

题目二

给表test1_course插入2行数据

insert all
    into test1_course values('300002','数据库','300001',2.5)
    into test1_course values('300001','数据结构',null,2)
select * from dual

关键点:

1、利用insert all

       into

       into

               select * from dual

实现多行插入

题目三

给表test1_student_course插入2行数据。

insert into test1_student_course values('201800020101','300002',92.6,'200102',to_date('2009-07-15 10-10-10','yyyy-mm-dd hh24-mi-ss'))
insert into test1_student_course values('201800020101','300001',91.5,'200101',to_date('2009-07-15 09-09-09','yyyy-mm-dd hh24-mi-ss'))

关键点:

1、birthday数据类型的插入:to_data('20080715 101010‘,‘yyyymmdd hh24miss’)

插入中两个引号中的数据和其类型一一对应;数据及其格式一一对应

插入中y:年; m:月 ;d:天; hh24:24进制时间; mi:分钟; s:秒

总结

本文的所有题目均来自《数据库系统概念》(黑宝书)、山东大学数据库实验一。不可用于商业用途转发。

如果能帮助到大家,大家可以点点赞、收收藏呀~

相关文章
|
2月前
|
SQL 关系型数据库 数据库
Python SQLAlchemy模块:从入门到实战的数据库操作指南
免费提供Python+PyCharm编程环境,结合SQLAlchemy ORM框架详解数据库开发。涵盖连接配置、模型定义、CRUD操作、事务控制及Alembic迁移工具,以电商订单系统为例,深入讲解高并发场景下的性能优化与最佳实践,助你高效构建数据驱动应用。
305 7
|
3月前
|
SQL 数据管理 关系型数据库
SQL 语言入门:开启数据管理的大门
在数字化时代,数据已成为核心资产,而 SQL 作为操作关系型数据库的标准语言,是数据从业者、程序员及办公人员必备技能。本文从基础概念讲起,详解 SQL 的核心用法,包括数据查询、插入、修改、删除及表结构操作,并通过实例演示帮助读者快速上手。掌握 SQL,不仅能提升数据处理效率,更为深入理解数据管理打下坚实基础。
|
3月前
|
SQL 人工智能 Linux
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
368 5
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
|
2月前
|
SQL 存储 监控
SQL日志优化策略:提升数据库日志记录效率
通过以上方法结合起来运行调整方案, 可以显著地提升SQL环境下面向各种搜索引擎服务平台所需要满足标准条件下之数据库登记作业流程综合表现; 同时还能确保系统稳健运行并满越用户体验预期目标.
189 6
|
3月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS费用价格:MySQL、SQL Server、PostgreSQL和MariaDB引擎收费标准
阿里云RDS数据库支持MySQL、SQL Server、PostgreSQL、MariaDB,多种引擎优惠上线!MySQL倚天版88元/年,SQL Server 2核4G仅299元/年,PostgreSQL 227元/年起。高可用、可弹性伸缩,安全稳定。详情见官网活动页。
|
3月前
|
关系型数据库 分布式数据库 数据库
阿里云数据库收费价格:MySQL、PostgreSQL、SQL Server和MariaDB引擎费用整理
阿里云数据库提供多种类型,包括关系型与NoSQL,主流如PolarDB、RDS MySQL/PostgreSQL、Redis等。价格低至21元/月起,支持按需付费与优惠套餐,适用于各类应用场景。
|
2月前
|
SQL Oracle 关系型数据库
SQL语言小结
针对数据库、表单和数据行的增删改,没有涉及到sql真正的用途也就是查询,sql提供的查询语句的关键字占 sql 语言的一半之多,查询语句还是得单拿出来讲,不然太多了。 因为没有涉及到查询,所以sql的新增和修改都是很笼统的做法,drop、alter drop、delete这些很容易,逻辑性也不强,再次说明sql的真正精髓在于查询,不然为啥叫做结构化查询语言
276 0
|
2月前
|
SQL 关系型数据库 MySQL
(SQL)SQL语言中的查询语句整理
查询语句在sql中占了挺大一部分篇幅,因为在数据库中使用查询语句的次数远多于更新与删除命令。而查询语句比起其他语句要更加的复杂,可因为sql是数据库不可或缺的一部分,所以即使不懂,也必须得弄懂,以上。
222 0
|
3月前
|
存储 数据库 开发者
Python SQLite模块:轻量级数据库的实战指南
本文深入讲解Python内置sqlite3模块的实战应用,涵盖数据库连接、CRUD操作、事务管理、性能优化及高级特性,结合完整案例,助你快速掌握SQLite在小型项目中的高效使用,是Python开发者必备的轻量级数据库指南。
285 0
|
3月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎,提供高性价比、稳定安全的云数据库服务,适用于多种行业与业务场景。

热门文章

最新文章