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

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

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

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

c 复制代码
# 创建用户 账号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、表空间

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

c 复制代码
# 创建表空间
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、表

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

c 复制代码
# 创建表
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、索引

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

c 复制代码
# 创建索引
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、数据

c 复制代码
# 插入数据
# 插入一行数据
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、事务

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

提交事务后,其它用户可看到修改后的数据此时无法通过回滚操作恢复数据

c 复制代码
# 提交事务
SQL> COMMIT;

# 回退事务
SQL> ROLLBACK;
相关推荐
正在走向自律4 分钟前
Ubuntu系统下Python连接国产KingbaseES数据库实现增删改查
开发语言·数据库·python·ubuntu·kingbasees·ksycopg2
没有bug.的程序员39 分钟前
Redis 内存管理机制:深度解析与性能优化实践
java·数据库·redis·性能优化·内存管理机制
小蒜学长1 小时前
基于SpringBoot+Vue的健身房管理系统的设计与实现(代码+数据库+LW)
java·数据库·vue.js·spring boot·后端
失散131 小时前
分布式专题——2 深入理解Redis线程模型
java·数据库·redis·分布式·架构
DemonAvenger1 小时前
数据库迁移实战:最小化停机时间的方法与经验分享
数据库·sql·性能优化
xhbh6661 小时前
Python操作MySQL的两种姿势:原生SQL与ORM框架SQLAlchemy详解
数据库·oracle
CookieCrusher5 小时前
数据泄露危机逼近:五款电脑加密软件为企业筑起安全防线
运维·数据库·windows·安全·文件加密·数据防泄漏·dlp
这周也會开心6 小时前
SQL-窗口函数
数据库·sql
TDengine (老段)8 小时前
TDengine 时间函数 WEEKDAY() 用户手册
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
TDengine (老段)8 小时前
从 ETL 到 Agentic AI:工业数据管理变革与 TDengine IDMP 的治理之道
数据库·数据仓库·人工智能·物联网·时序数据库·etl·tdengine