MS SQL truncate能释放表空间吗?

一.数据控制语句 (DML) 部分

47. 中文是如何排序的?
oracle9i之前,中文是按照二进制编码进行排序的。
在oracle9i中新增了按照拼音、部首、笔画排序功能。设置nls_sort值
schinese_radical_m 按照部首(第一顺序)、笔划(第二顺序)排序
schinese_stroke_m 按照笔划(第一顺序)、部首(第二顺序)排序

是一本sql的使用手册,包括语法、函数等等,oracle官方网站的文档中心有下载.

64. 如何查出一条记录的最后更新时间?

utl_file包答应用户通过pl/sql读写操作系统文件。

98. 从网上下载的oracle9i与市场上卖的标准版有什么区别?
从功能上说没有区别,只不过oracle公司有明文规定;从网站上下载的oracle产品不得用于 商业用途,否则侵权。

99. 怎样判定数据库是运行在归档模式下还是运行在非归档模式下?
进入dbastudio,历程--〉数据库---〉归档查看。

建立一个临时的redolog组,然后切换日志,删除以前的日志,建立新的日志。

}

修改数据库的属性,包括它的名称、所有者、连接数限制、对象隔离属性等。

设置应用于将来创建的对象的权限(这不会影响分配到已有对象中的权限)。

修改自定义函数的属性。

修改一个用户组的属性。

用于更改一个large object的定义。它的唯一的功能是分配一个新的所有者。

更改一个现有物化视图的多个辅助属性。

修改一个操作符的定义。

修改一个资源池,指定其他控制组。

对已存在的行访问控制策略(包括行访问控制策略的名称,行访问控制指定的用户,行访问控制的策略表达式)进行修改。

修改一个现有的序列的参数。

ALTER SESSION命令用于定义或修改那些对当前会话有影响的条件或参数。修改后的会话参数会一直保持,直到断开当前会话。

修改SYNONYM对象的属性。

用于设置POSTMASTER、SIGHUP、BACKEND级别的GUC参数。此命令会将参数写入配置文件,不同级别生效方式有所不同。

修改表,包括修改表的定义、重命名表、重命名表中指定的列、重命名表的约束、设置表的所属模式、添加/更新多个列、打开/关闭行访问控制开关。

更改文本搜索配置的定义。用户可以将映射从字串类型调整为字典,或者改变配置的名称或者所有者,或者修改搜索配置的配置参数。

修改全文检索词典的相关定义,包括参数、名称、所有者、以及模式等。

修改数据库用户的属性。

更改视图的各种辅助属性。

用于收集与数据库中普通表内容相关的统计信息,统计结果存储在系统表PG_STATISTIC下。执行计划生成器会使用这些统计数据,以确定最有效的执行计划。

匿名块(Anonymous Block)一般用于不频繁执行的脚本或不重复进行的活动。它们在一个会话中执行,并不被存储。

BEGIN可以用于开始一个匿名块,也可以用于开始一个事务。

可以调用已定义的函数和存储过程。

检查点(CHECKPOINT)是一个事务日志中的点,所有数据文件都在该点被更新以反映日志中的信息,所有数据文件都将被刷新到磁盘。

用来清理数据库连接。允许在节点上清理指定数据库的指定用户的相关连接。

释放和一个游标关联的所有资源。

根据一个索引对表进行聚簇排序。

定义或修改一个对象的注释。

通过COMMIT或者END可完成提交事务的功能,即提交事务的所有操作。

提交一个早先为两阶段提交准备好的事务。

通过COPY命令实现在表和文件之间拷贝数据。

创建一个客户端主密钥对象,该对象可用于加密Column Encryption Key对象。

创建一个列加密密钥,该密钥可用于加密表中指定列。

创建一个新的外部数据源对象,该对象用于定义openGauss要连接的目标库信息。

创建一个新的数据库。缺省情况下新数据库将通过复制标准系统数据库template0来创建,且仅支持使用template0来创建。

使用CREATE DIRECTORY语句创建一个目录对象,该目录对象定义了服务器文件系统上目录的别名,用于存放用户使用的数据文件。

在指定的表上创建索引。

定义一种新的过程语言。单机和集中式暂不支持创建过程语言。

训练机器学习模型并保存模型。

创建一个新的存储过程。

创建一个资源池,并指定此资源池相关联的控制组。

对表创建行访问控制策略。

用于向当前数据库里增加一个新的序列。序列的Owner为创建此序列的用户。

定义一个新的外部服务器。

创建一个同义词对象。同义词是数据库对象的别名,用于记录与其他数据库对象名间的映射关系,用户可以使用同义词访问关联的数据库对象。

在当前数据库中创建一个新的空白表,该表由命令执行者所有。

创建分区表。分区表是把逻辑上的一张表根据某种方案分成几张物理块进行存储,这张逻辑上的表称之为分区表,物理块称之为分区。分区表是一张逻辑表,不存储数据,数据实际是存储在分区上的。

在数据库中创建一个新的表空间。

创建新的文本搜索配置。一个文本搜索配置声明一个能将一个字符串划分成符号的文本搜索解析器,加上可以用于确定搜索对哪些标记感兴趣的字典

创建一个触发器。 触发器将与指定的表或视图关联,并在特定条件下执行指定的函数。

在当前数据库中定义一种新的数据类型。定义数据类型的用户将成为该数据类型的拥有者。类型只适用于行存表

定义一个游标,用于在一个大的查询里面检索少数几行数据。

用于删除前面编写的预备语句。如果用户没有明确删除一个预备语句,那么它将在会话结束的时候被删除。

用于删除前面编写的预备语句。如果用户没有明确删除一个预备语句,那么它将在会话结束的时候被删除。

从指定的表里删除满足WHERE子句的行。如果WHERE子句不存在,将删除表中所有行,结果只保留表结构。

删除一个客户端加密主密钥(CMK)。

删除一个列加密密钥(cek)。

删除一个已存在的函数。

强制删除数据库中已有的物化视图。

删除一个已训练完成保存的模型对象。

删除一个数据库角色所拥有的数据库对象。

删除已存在的存储过程。

删除表上某个行访问控制策略。

从当前数据库里删除序列。

删除现有的一个数据服务器。

删除指定的SYNONYM对象。

删除已有文本搜索配置。

删除一个用户定义的数据类型。

删除用户,同时会删除同名的schema。

数据库中强制删除已有的视图。

END可完成提交事务的功能,即提交事务的所有操作。

执行一个前面准备好的预备语句。因为一个预备语句只在会话的生命期里存在,那么预备语句必须是在当前会话的前些时候用PREPARE语句创建的。

在指定的节点上执行SQL语句。一般情况下,SQL语句的执行是由集群负载自动分配到合适的节点上,execute direct主要用于数据库维护和测试。

显示SQL语句的执行计划。

FETCH通过已创建的游标来检索数据。

对角色和用户进行授权操作。

向表中添加一行或多行数据。

将目标表和源表中数据针对关联条件进行匹配,若关联条件匹配时对目标表进行UPDATE,无法匹配时对目标表执行INSERT。此语法可以很方便地用来合并执行UPDATE和INSERT,避免多次执行。

MOVE在不检索数据的情况下重新定位一个游标。MOVE的作用类似于FETCH命令,但只是重定位游标而不返回行。

为当前事务做两阶段提交的准备。

修改数据库对象的属主。

会以全量刷新的方式对物化视图进行刷新。

为表中的数据重建索引。

将指定的运行时参数恢复为缺省值。这些参数的缺省值是指postgresql.conf配置文件中所描述的参数缺省值。

用于撤销一个或多个角色的权限。

回滚当前事务并取消当前事务中的所有更新。

为当前事务做两阶段提交的准备。

用于在当前事务里建立一个新的保存点。

SELECT用于从表或视图中取出数据。

SELECT INTO用于根据查询结果创建一个新表,并且将查询到的数据插入到新表中。

用于修改运行时配置参数。

设置当前事务检查行为的约束条件。

设置当前会话的当前用户标识符。

把当前会话里的会话用户标识和当前用户标识都设置为指定的用户。

SET CONSTRAINTS设置当前事务检查行为的约束条件。

SHOW将显示当前运行时参数的数值。

通过START TRANSACTION启动事务。如果声明了隔离级别、读写模式,那么新事务就使用这些特性,类似执行了SET TRANSACTION。

清理表数据,TRUNCATE快速地从表中删除所有行。

更新表中的数据。UPDATE修改满足条件的所有行中指定的字段值,WHERE子句声明条件,SET子句指定的字段会被修改,没有出现的字段则保持它们的原值。

VACUUM回收表或B-Tree索引中已经删除的行所占据的存储空间。在一般的数据库操作里,那些已经DELETE的行并没有从它们所属的表中物理删除;在完成VACUUM之前它们仍然存在。因此有必要周期地运行VACUUM,特别是在经常更新的表上。

根据给定的值表达式计算一个或一组行的值。它通常用于在一个较大的命令内生成一个“常数表”。

}

我要回帖

更多关于 oracle如何释放表空间 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信