西电数据库实验二:XDSQL与PolarDB对比实验

本文涉及的产品
云原生数据库 PolarDB MySQL 版,通用型 2核8GB 50GB
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
简介: 实验二 XDSQL与PolarDB对比实验姓名:贾瑞  学号:21009201172

实验二 XDSQL与PolarDB对比实验
姓名:贾瑞 学号:21009201172
2.1实验目的
XDSQL数据库是自主开发的一款微型数据库系统,具有简单的建库、建表、增删改查等功能,其SQL解释层采用lex和yacc实现,执行层采用C++实现,存储引擎则是使用最基础的方式实现,即每个数据库对应操作系统的一个文件夹,每个数据表对应操作系统中的一个文件。
2.2实验步骤

  1. 登录阿里云dms控制台,进入PolarDB for MySQL数据库;
  2. 下载XDSQL压缩包到本地电脑;
  3. 解压压缩包,运行XDSQL.exe,启动XDSQL;
  4. 在两个数据库内执行测试集内的SQL语句,根据运行结果去发现XDSQL的不足和不同SQL语句实现的难易程度。
    2.3SQL语句测试集
    2.3.1创建数据库
    SQL语句如下:
    CREATE DATABASE xjgl;
    (1)XDSL运行成功

(2)polarDB运行成功(所登录用户具有相应权限)

2.3.2切换数据库
SQL语句如下:
USE DATABASE xjgl;
(1)XDSL运行成功

(2)polarDB运行失败

2.3.3定义模式/删除模式
SQL语句如下:
CREATE SCHEMA WANG;
(1)XDSL运行失败

(2)polarDB运行成功

2.3.4基本表的定义、删除与修改
1.定义基本表
创建学生表Student、课程表Course、学生选课表SC,SQL语句如下
CREATE TABLE Student(Sno CHAR(9),Sname CHAR(20),Ssex CHAR(2),Sage INT,Sdept CHAR(20));
CREATE TABLE Course(Cno CHAR(4),Cname CHAR(40),Cpno CHAR(4),Ccredit INT);
CREATE TABLE SC(Sno CHAR(9),Cno CHAR(4),Grade INT);
(1)XDSL运行成功

(2)polarDB运行成功

2.删除基本表(删除Student表)
SQL语句如下:
DROP TABLE Student;
(1)XDSL运行成功

(2)polarDB运行成功

3.修改基本表
3.1向Student表增加”出生日期“列,数据类型为日期型
ALTER TABLE Student ADD birthdate DATE;
(1)XDSL运行失败

(2)polarDB运行成功

3.2向Student表增加Sno列为主码的约束条件
ALTER TABLE Student ADD PRIMARY KEY(Sno);
(1)XDSL运行失败

(2)polarDB运行成功

3.3向Student表增加Sname列为唯一值的约束条件
ALTER TABLE Student ADD UNIQUE(Sname);
(1)XDSL运行失败

(2)polarDB运行成功

2.3.5数据查询
1.插入数据
运行以下SQL语句
INSERT INTO Student VALUES('201215121','李勇','男',20,'CS');
INSERT INTO Student VALUES('201215122','刘晨','女',19,'CS');
INSERT INTO Student VALUES('201215123','王敏','女',18,'MA');
INSERT INTO Student VALUES('201215124','张立','男',19,'IS');
INSERT INTO COURSE VALUES('1','数据库','5',4);
INSERT INTO COURSE VALUES('3','信息系统','1',4);
INSERT INTO COURSE VALUES('4','操作系统','6',3);
INSERT INTO COURSE VALUES('5','数据结构','7',4);
INSERT INTO COURSE VALUES('7','PASCAL语言','6',4);
INSERT INTO SC VALUES('201215121','1',92);
INSERT INTO SC VALUES('201215121','2',85);
INSERT INTO SC VALUES('201215121','3',88);
INSERT INTO SC VALUES('201215122','2',90);
INSERT INTO SC VALUES('201215122','3',80);
(1)XDSL运行成功

(2)polarDB运行成功

运行以下语句
INSERT INTO COURSE VALUES('2','数学',NULL,2);
(1)XDSL运行失败

(2)polarDB运行成功

2.更新数据
运行以下语句
UPDATE Student SET Sage=Sage+1;
(1)XDSL运行失败

(2)polarDB运行成功

运行以下语句
UPDATE Course SET Cpno='1' WHERE Cno='6';
(1)XDSL运行成功

(2)polarDB运行成功

3.删除数据
运行以下SQL语句:
DELETE FROM SC WHERE Sno='201215121' AND Cno='1';
(1)XDSL运行成功

(2)polarDB运行成功

4.查询数据
运行以下SQL语句:
SELECT * FROM Student;
(1)XDSL运行成功

(2)polarDB运行成功

运行以下SQL语句:
SELECT Sname,Sage FROM Student WHERE Sage<20;
(1)XDSL运行成功

(2)polarDB运行成功

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍如何基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
10天前
|
Cloud Native 关系型数据库 MySQL
免费体验!高效实现自建 MySQL 数据库平滑迁移至 PolarDB-X
PolarDB-X 是阿里云推出的云原生分布式数据库,支持PB级存储扩展、高并发访问与数据强一致,助力企业实现MySQL平滑迁移。现已开放免费体验,点击即享高效、稳定的数据库升级方案。
免费体验!高效实现自建 MySQL 数据库平滑迁移至 PolarDB-X
|
3月前
|
存储 关系型数据库 分布式数据库
喜报|阿里云PolarDB数据库(分布式版)荣获国内首台(套)产品奖项
阿里云PolarDB数据库管理软件(分布式版)荣获「2024年度国内首版次软件」称号,并跻身《2024年度浙江省首台(套)推广应用典型案例》。
|
4月前
|
关系型数据库 分布式数据库 数据库
再获殊荣,阿里云PolarDB数据库蝉联SIGMOD最佳论文奖
内存池化技术新突破,阿里云PolarDB蝉联SIGMOD最佳论文奖
|
12天前
|
关系型数据库 MySQL 分布式数据库
阿里云PolarDB云原生数据库收费价格:MySQL和PostgreSQL详细介绍
阿里云PolarDB兼容MySQL、PostgreSQL及Oracle语法,支持集中式与分布式架构。标准版2核4G年费1116元起,企业版最高性能达4核16G,支持HTAP与多级高可用,广泛应用于金融、政务、互联网等领域,TCO成本降低50%。
|
3月前
|
关系型数据库 分布式数据库 数据库
阿里云PolarDB数据库蝉联SIGMOD最佳论文奖
阿里云PolarDB凭借全球首创基于CXL Switch的分布式内存池技术,在SIGMOD 2025上荣获工业赛道“最佳论文奖”,连续两年蝉联该顶会最高奖项。其创新架构PolarCXLMem打破传统RDMA技术瓶颈,性能提升2.1倍,并已落地应用于内存池化场景,推动大模型推理与多模态存储发展,展现CXL Switch在高速互联中的巨大潜力。
阿里云PolarDB数据库蝉联SIGMOD最佳论文奖
|
4月前
|
Cloud Native 关系型数据库 分布式数据库
客户说|知乎基于阿里云PolarDB,实现最大数据库集群云原生升级
近日,知乎最大的风控业务数据库集群,基于阿里云瑶池数据库完成了云原生技术架构的升级。此次升级不仅显著提升了系统的高可用性和性能上限,还大幅降低了底层资源成本。
|
6月前
|
关系型数据库 分布式数据库 数据库
一库多能:阿里云PolarDB三大引擎、四种输出形态,覆盖企业数据库全场景
PolarDB是阿里云自研的新一代云原生数据库,提供极致弹性、高性能和海量存储。它包含三个版本:PolarDB-M(兼容MySQL)、PolarDB-PG(兼容PostgreSQL及Oracle语法)和PolarDB-X(分布式数据库)。支持公有云、专有云、DBStack及轻量版等多种形态,满足不同场景需求。2021年,PolarDB-PG与PolarDB-X开源,内核与商业版一致,推动国产数据库生态发展,同时兼容主流国产操作系统与芯片,获得权威安全认证。
|
8月前
|
存储 NoSQL 关系型数据库
PolarDB开源数据库进阶课17 集成数据湖功能
本文介绍了如何在PolarDB数据库中接入pg_duckdb、pg_mooncake插件以支持数据湖功能, 可以读写对象存储的远程数据, 支持csv, parquet等格式, 支持delta等框架, 并显著提升OLAP性能。
464 2
|
5月前
|
Cloud Native 关系型数据库 分布式数据库
阿里云PolarDB与沃趣科技携手打造一体化数据库解决方案,助推国产数据库生态发展
阿里云瑶池数据库与沃趣科技将继续深化合作,共同推动国产数据库技术的持续创新与广泛应用,为行业生态的繁荣注入更强劲的技术动力。
阿里云PolarDB与沃趣科技携手打造一体化数据库解决方案,助推国产数据库生态发展