数据库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:秒

总结

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

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

相关文章
|
8天前
|
SQL 缓存 监控
大厂面试高频:4 大性能优化策略(数据库、SQL、JVM等)
本文详细解析了数据库、缓存、异步处理和Web性能优化四大策略,系统性能优化必知必备,大厂面试高频。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
大厂面试高频:4 大性能优化策略(数据库、SQL、JVM等)
|
19天前
|
SQL 关系型数据库 数据库
国产数据实战之docker部署MyWebSQL数据库管理工具
【10月更文挑战第23天】国产数据实战之docker部署MyWebSQL数据库管理工具
60 4
国产数据实战之docker部署MyWebSQL数据库管理工具
|
10天前
|
存储 SQL 数据库
深入浅出后端开发之数据库优化实战
【10月更文挑战第35天】在软件开发的世界里,数据库性能直接关系到应用的响应速度和用户体验。本文将带你了解如何通过合理的索引设计、查询优化以及恰当的数据存储策略来提升数据库性能。我们将一起探索这些技巧背后的原理,并通过实际案例感受优化带来的显著效果。
28 4
|
9天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第8天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统准备、配置安装源、安装 SQL Server 软件包、运行安装程序、初始化数据库以及配置远程连接。通过这些步骤,您可以顺利地在 CentOS 系统上部署和使用 SQL Server 2019。
|
11天前
|
SQL 关系型数据库 MySQL
go语言数据库中mysql驱动安装
【11月更文挑战第2天】
26 4
|
12天前
|
SQL 关系型数据库 MySQL
go语言中安装数据库驱动
【11月更文挑战第1天】
32 5
|
10天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第7天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统要求检查与准备、配置安装源、安装 SQL Server 2019、配置 SQL Server 以及数据库初始化(可选)。通过这些步骤,你可以成功安装并初步配置 SQL Server 2019,进行简单的数据库操作。
|
13天前
|
SQL 关系型数据库 MySQL
go语言中数据库操作
【10月更文挑战第22天】
27 4
|
12天前
|
关系型数据库 MySQL 数据库连接
go语言中打开数据库连接
【11月更文挑战第1天】
26 2
|
18天前
|
监控 关系型数据库 MySQL
数据库优化:MySQL索引策略与查询性能调优实战
【10月更文挑战第27天】本文深入探讨了MySQL的索引策略和查询性能调优技巧。通过介绍B-Tree索引、哈希索引和全文索引等不同类型,以及如何创建和维护索引,结合实战案例分析查询执行计划,帮助读者掌握提升查询性能的方法。定期优化索引和调整查询语句是提高数据库性能的关键。
85 1