文章分类 -  sql/plsql

摘要:1、视图的两大作用: 限制数据访问 简化命令文本 视图是基于表或另一个视图的逻辑表,一个视图并不包含它自己的数据,它象一个窗口,通过该窗口可以查看或改变表中的数据 简单视图:数据仅来自一个表,不包含函数或数据分组,能通过视图执行 DML 操作。复杂视图:数据来自多个表,包含函数或数据分组,不总是允许 阅读全文
posted @ 2021-09-16 17:28 harrison辉 阅读(813) 评论(0) 推荐(0) 编辑
摘要:oracle用约束 (constraints) 来防止无效数据、错误数据输入到表中。你可以使用约束做下面的事:在插入、更新行或者从表中删除行的时候强制表中的数据遵循规则。对于成功的操作,约束必须被满足。如果表之间有依赖关系,防止表的删除 所有的约束存储在数据字典中。如果给约束一个有意义的名字,约束易 阅读全文
posted @ 2021-09-10 18:13 harrison辉 阅读(240) 评论(0) 推荐(0) 编辑
摘要:1.1、查看表定义 select dbms_metadata.get_ddl('TABLE','TABLE_NAME','TABLE_OWNER') from dual; 1.2、取得一个表的所有字段名并用逗号分割 select max(substr(SYS_CONNECT_BY_PATH(COLU 阅读全文
posted @ 2021-09-09 17:46 harrison辉 阅读(79) 评论(0) 推荐(0) 编辑
摘要:1、表能够有多达1000 个列,并且必须符合标准的数据库对象命名约定。 2、Oracle 设计了大约 6 种数据的存储格式,详见下表: 3、表和列的命名规则 必须以字母开头 长度不能超过 30 个字符(最多 30 个字符) 不能使用 oracle 的保留字 只能使用如下字符 A-Z,a-z,0-9, 阅读全文
posted @ 2021-08-31 16:54 harrison辉 阅读(674) 评论(0) 推荐(0) 编辑
摘要:1、简介 当表中的数据量不断增大时,查询数据的速度就会变慢,应用程序的性能就会下降,这时就应该考虑对表进行分区。当对表进行分区后,在逻辑上,表仍然是一张完整的表,只是将表中的数据在物理上可能存放到多个表空间或物理文件上。当查询数据时,不至于每次都扫描整张表。Oracle 可以将大表或索引分成若干个更 阅读全文
posted @ 2021-08-23 15:00 harrison辉 阅读(837) 评论(0) 推荐(0) 编辑
摘要:Oracle 的自治事务(Autonomous Transaction)是将一个主事务分割成几个子事务,在执行完子事务以后再继续执行主事务。这里的关键是,子事务是独立于主事务的,子事务中的 ROLLBACK 和 COMMIT 操作只 会影响子事务中的 DML 操作;同样,主事务中的 ROLLBACK 阅读全文
posted @ 2021-08-22 18:59 harrison辉 阅读(1586) 评论(0) 推荐(0) 编辑
摘要:1、存储过程 (1)存储过程和函数的区别是什么? 存储过程和函数都是存储在数据库中的程序,可由用户直接或间接调用,它们都可以有输出参数,都是由一 系列的 SQL 语句组成。 具体而言,存储过程和函数的不同点如下所示: (1)标识符不同。函数的标识符为 FUNCTION,存储过程为 PROCEDURE 阅读全文
posted @ 2021-08-21 20:19 harrison辉 阅读(297) 评论(0) 推荐(0) 编辑
摘要:1、简介 PLSQL是oracle对sql扩展的过程化语言 pl/sql联合了sql的易用性、灵活性和程序化的结构化编程语言的功能 有些复杂的业务流程要求相应的程序来描述,sql不能实现 oracle是c/s架构的数据库,平常的sql,需要向服务器发出请求,服务器才进行编译执行,而用pl/sql写成 阅读全文
posted @ 2021-08-21 20:07 harrison辉 阅读(1036) 评论(0) 推荐(0) 编辑
摘要:SQL> show parameter open_links NAME TYPE VALUE open_links integer 4 open_links_per_instance integer 4 参数的解释: ***open_links :每个session最多允许的dblink数量; ** 阅读全文
posted @ 2021-08-20 16:55 harrison辉 阅读(516) 评论(0) 推荐(0) 编辑
摘要:为了查阅另一个用户所拥有的表,你需要将创建该表的用户名加句点作为前缀加在表名前面。创建一个同义词可以除去对象名必须带的方案限制,并提供给你一个可替换表名、视图名、序列名和过程名或其它对象名。该方法对具有特别长的对象的名字很有用。语法: CREATE or replace PUBLIC SYNONYM 阅读全文
posted @ 2021-08-20 15:13 harrison辉 阅读(175) 评论(0) 推荐(0) 编辑
摘要:索引由 Oracle 服务器自动使用和维护,一旦一个索引被创建,它就不再需要用户直接管理。rowid是一个十六进制的串,表示包含块定义的行地址,行的位置在块中,并且有数据库文件标识符,访问任何指定行的最快的方法是引用它的 rowid. 索引里存储的内容: ROWID 、索引列(键值)。 创建索引可以 阅读全文
posted @ 2021-08-19 16:28 harrison辉 阅读(581) 评论(0) 推荐(0) 编辑
摘要:序列是用户创建的数据库对象,序列可以被多个用户共享以产生唯一的整数。序列的一个典型的用途是创建一个主键的值,它对于每一行必须是唯一的。序列由一个 Oracle 内部程序产生并增加或减少。序列是一个节省时间的对象,因为它可以减少应用程序中产生序列程序的代码量。序列号独立于表被存储和产生,因此,相同的序 阅读全文
posted @ 2021-08-19 10:17 harrison辉 阅读(402) 评论(0) 推荐(0) 编辑
摘要:1、在数据库中,常常会有一些比较复杂的定时批量运行脚本的任务,这些任务的时间通常是非常长的,而且 基本上每天都是定时执行脚本,比如晚上 22 点等,这个时候就要用到数据库的 JOB 了。 Oracle 的 JOB 分为两类,DBMS_JOB 和 DBMS_SCHEDULER,二者都可以完成定时任务。 阅读全文
posted @ 2021-01-21 18:43 harrison辉 阅读(532) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示