正式开始之前

由于自己本科专业不是计算机科班出身,所以自觉有许多计算机专业课需要补,我想数据库相关知识应该也非常重要。首先推荐一个网站:CS自学指南,里面汇总了很多国外名校的计算机相关课程,对自学计算机十分有帮助。我是学的 UCB CS186: Introduction to Database System,这个课的实验的语言是 Java,我以前并没有学过,而且我并不想用它的实验指导书推荐的 IDE——IntelliJ,而用 VS Code,并且还要用 Maven 这个工具。配置环境的过程遇到了很多坑,在此进行记录。

课程主页是:https://cs186berkeley.net/

课程视频可以看搬运到 B 站的:https://www.bilibili.com/video/BV13a411c7Qo

课程实验的代码是:https://github.com/berkeley-cs186/sp23-rookiedb

实验指导书是:https://cs186.gitbook.io/project/

资源汇总:https://github.com/PKUFlyingPig/CS186

他人的课程学习笔记:https://www.zhihu.com/column/c_1357378670412292096

知识点总结

数据库术语

关系型数据库由表格组成(又称关系)。一个表有一个名字,将下表称为

name age num_dogs
Ace 20 4
Ada 18 3
Ben 7 2
Cho 27 3

表由行(又称元组)和列(又称属性)组成,在这个例子中,列分别是 name,age,num_dogs

表查询

Project 0: Setup

实验指导书地址:https://cs186.gitbook.io/project/assignments/proj0

这个实验的目标是搭建环境。

openjdk11

下载

首先下载 openjdk11,地址是:https://jdk.java.net/java-se-ri/11-MR2,我用的是 Windows 系统,就选择对应的进行下载。

环境变量配置

下载解压完成之后,设置系统环境变量。

新建系统变量 JAVA_HOME,将其值设置为刚刚解压的路径,比如我的是 D:\Software\jdk-11.0.0.1

新建系统变量 Classpath,变量值设置为 .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; 如下图所示:

UCB-CS186-数据库系统概论-学习笔记-0-1.png

在系统变量的 Path 中添加新的一项 %JAVA_HOME%\bin,或者等价的 D:\Software\jdk-11.0.0.1\bin

最后 Win + R 输入 cmd 打开命令提示符,输入 java -version,若出现 java 版本信息,则说明配置好了。

Maven

介绍

Maven 是一个软件项目管理和构建工具,它主要用于管理 Java 项目的构建过程、依赖管理和项目报告生成等任务。它可以帮助开发人员自动化构建过程,从而减少手动配置和管理的工作量。

使用 Maven,可以定义项目的结构、依赖关系和构建过程。Maven 使用一个称为 Project Object Model (POM) 的 XML 文件来描述项目,其中包含了项目的配置信息、依赖项、构建插件以及其他相关信息。

Maven 提供了一组标准的构建生命周期(build lifecycle),例如编译、测试、打包、部署等,通过执行这些生命周期阶段,可以自动化执行各种构建任务。Maven 还提供了丰富的插件生态系统,使得可以扩展和定制构建过程,以满足项目的特定需求。

另外,Maven 还提供了依赖管理功能,通过在 POM 文件中声明项目所需的依赖项,Maven 可以自动下载和管理这些依赖项的版本和传递依赖关系。

总之,Maven 是一个功能强大的项目管理和构建工具,可以帮助开发人员更高效地管理和构建 Java 项目。

下载

从这个地址,https://maven.apache.org/download.cgi,可以下载 Maven,选择 Binary zip archive 下载。

环境变量配置

下载完毕后进行解压,我解压到的目录是 D:\Software\apache-maven-3.9.2,于是在环境变量 Path 中添加路径 D:\Software\apache-maven-3.9.2\bin 即可。

最后 Win + R 输入 cmd 打开命令提示符,输入 mvn -version,若出现 Maven 版本信息,则说明配置好了。

VS Code 配置

下载插件 Code RunnerExtension Pack for JavaDebugger for JavaMaven for JavaTest Runner for JavaProject Manager for JavaLanguage Support for Java(TM) by Red HatIntelliCode

接下来,Ctrl + ,,进入设置,搜索 Maven: Settings File,如下图所示,点击 在 settings.json 中编辑

UCB-CS186-数据库系统概论-学习笔记-0-2.png

然后根据你实际的安装位置,添加如下的配置。

UCB-CS186-数据库系统概论-学习笔记-0-3.png

之后编译代码,如果出现 BUILD SUCCESS 字样则说明编译成功。

mvn clean install -DskipTests