YashanDB学习-数据库SQL基础操作

ops/2024/10/20 0:24:43/

YashanDB学习-数据库SQL基础操作

  • 1、 创建用户、创建角色、授权用户、切换用户、修改密码
  • 2、表空间
  • 3、表
  • 4、索引
  • 5、数据
  • 6、事务

1、 创建用户、创建角色、授权用户、切换用户、修改密码

注:切换对象须具有登录会话的权限方可进行切换操作

# 创建用户 账号yashan 密码yashan
SQL> CREATE USER yashan IDENTIFIED BY yashan;# 创建角色
SQL> CREATE ROLE yashan_role;# 授权用户登录会话权限
SQL> GRANT CONNECT TO yashan;
# 授权用户创建资源权限
SQL> GRANT RESOURCE TO yashan;# 切换用户
SQL> conn yashan/yashan;# 修改密码
SQL> ALTER USER yashan IDENTIFIED BY ‘yashan123’;

2、表空间

表空间是数据库的逻辑存储结构,所有数据库对象均存储于指定的表空间内

# 创建表空间
SQL> CREATE TABLESPACE ts_yashan;# 查看表空间
SQL> SELECT TABLESPACE_NAME FROM DBA_TABLESPACES;# 修改表空间
# 表空间增加一个数据文件
SQL> ALTER TABLESPACE ts_yashan ADD DATAFILE;
# 收缩表空间大小
SQL> ALTER TABLESPACE ts_yashan SHRINK SPACE;# 删除表空间
SQL>DROP TABLESPACE ts_yashan;

3、表

表是数据库用来存放数据的一个集合,一般与实体对象一一对应,如人员表、部门表、公司表等,一般由行和列这两个二维信息来组织表数据

# 创建表
SQL> CREATE TABLE tb_yashan(c1 INT,c2 VARCHAR(10));# 查看表
# 通过查询USER_TABLES视图查看当前用户中已存在的表名称
SQL> SELECT TABLE_NAME,TABLE_TYPE FROM USER_TABLES;
# 执行SELECT语句查看表中具体信息
SQL> SELECT c1,c2 FROM tb_yashan;# 修改表
# 修改表名称
SQL> ALTER TABLE tb_yashan RENAME TO tab_yashan;
# 在表中新增列字段
SQL> ALTER TABLE tab_yashan ADD(c3 NUMBER);
# 修改表中列字段的数据类型
SQL> ALTER TABLE tab_yashan MODIFY c3 FLOAT;# 删除表
SQL> DROP TABLE tab_yashan;

4、索引

索引是一种物理的对数据库表中一列或多列的值进行排序的存储结构,它是某个表中一列或若干列值的集合,是指向表中物理标识这些值所在行的逻辑指针清单

# 创建索引
SQL> CREATE INDEX index1 on tb_yashan(c1);# 查看索引
# 查看当前用户的索引信息
SQL> SELECT * FROM USER_INDEXES;
# 查看当前用户的索引名称
SQL> SELECT INDEX_NAME FROM USER_INDEXEES;# 删除索引
SQL> DROP INDEX inde1;

5、数据

# 插入数据
# 插入一行数据
SQL> INSERT INTO tb_yashan VALUES(4,’hello’);
# 插入多行数据
SQL> INSERT INTO tb_yashan VALUES(1,’world’),(2,’nihao’),(3,’shijie’);# 提交
SQL> COMMIT;# 删除数据
# 删除指定数据
SQL> DELETE FROM tb_yashan WHERE c1=1;
# 删除所有行
SQL> DELETE tb_yashan;
# 删除表中所有数据
SQL> TRUNCATE TABLE tb_yashan;# 更新数据
# 更新指定数据
SQL> UPDATE tb_yashan SET c1=5 WHERE c1=1;
# 批量更新数据
SQL> UPDATE tb_yashan SET (c1,c2)=(7,’newvalue’) WHERE c1=3;# 查询数据
# 查询表中数据
SQL> SELECT c1,c2 FROM tb_yashan;
# 根据字段大小顺序进行排序
SQL> SELECT c1,c2 FROM tb_yashan ORDER BY c1;
# 条件查询
SQL> SELECT c1,c2 FROM tb_yashan WHERE c1=5;

6、事务

提交事务前,用户在事务过程做的任何修改只有自己能看到其他用户无法看到,并可以通过回滚操作恢复将数据恢复
提交事务后,其它用户可看到修改后的数据此时无法通过回滚操作恢复数据

# 提交事务
SQL> COMMIT;# 回退事务
SQL> ROLLBACK;

http://www.ppmy.cn/ops/126839.html

相关文章

代码复现(五):GCPANet

文章目录 net.py1.class Bottleneck:残差块2.class ResNet:特征提取3.class SRM:SR模块4.class FAM:FIA模块5.class CA:GCF模块6.class SA:HA模块7.class GCPANet:网络架构 train.pytest.py 论文…

【分布式微服务云原生】探索RESTful API:构建高效网络服务的秘诀

探索RESTful API:构建高效网络服务的秘诀 摘要: 在本文中,我们将深入探讨RESTful API的核心原则、设计最佳实践,并提供实际的Java代码示例和流程图。您将了解到如何利用HTTP方法、资源定位、状态码等关键概念来设计和实现一个高效…

关于使用conda和pip二者安装包

想安装另外的不在Anaconda中的Python包: 方式1:conda install package_name 方式2:pip install package_name 想升级另外的不在Anaconda中的Python包: conda update package_name pip install --upgrade package_name 注意&am…

【Petri网导论学习笔记】Petri网导论入门学习(五)—— 1.3 库所/变迁系统与加权Petri网

导航 1.3 库所/变迁系统与加权Petri网定义1.10P/T系统组成原型Petri网P/T系统与Petri网的转化示例 1.3 库所/变迁系统与加权Petri网 库所/变迁系统(简称P/T系统)(Place/Transition)在原型Petri网上增加了 S S S上的容量函数和 F …

Redis缓存穿透

缓存穿透 什么是缓存穿透 缓存穿透是指客户端请求的数据在缓存中和数据库中都不存在,这样缓存永远不会生效,这些请求都会打到数据库 解决缓存穿透的方法 解决缓存穿透有两种方案: 1.缓存空对象 优点:实现简单,维护方便 缺点:额外的内存消耗;可能存在短期的不一致(缓存null…

进入 Searing-66 火焰星球:第一周游戏指南

Alpha 第四季已开启,穿越火焰星球 Searing-66,带你开启火热征程。准备好勇闯炙热的沙漠,那里有无情的高温和无情的挑战在等待着你。从高风险的烹饪对决到炙热的冒险,Searing-66 将把你的耐力推向极限。带上充足的水,天…

minidump文件在另一台电脑的VS打上不开,可否在另一台电脑的windbg打开呢

是的,MINIDUMP文件可以在另一台电脑的WinDbg中打开进行分析。MINIDUMP文件是Windows系统产生的一种二进制文件,用于记录程序崩溃时的状态,通常用于调试和故障排查。以下是如何在另一台电脑上使用WinDbg打开MINIDUMP文件的步骤: 确…

HTTP cookie 与 session

一种关于登录的场景演示 - B 站登录和未登录 问题:B 站是如何认识我这个登录用户的?问题:HTTP 是无状态,无连接的,怎么能够记住我? 一、引入 HTTP Cookie 定义 HTTP Cookie(也称为 Web Cooki…