用sql来管理非数据的对象

文章作者 100test 发表时间 2007:10:26 12:12:03
来源 100Test.Com百考试题网


SQL还能管理非数据的对象,稀奇吧呵呵,今天来看看用sql管理文件目录的方法吧
SQLHUB的3.0.0中的视图做了重大改进:
o 支持触发器
o 支持数据权限
o 允许在insert、0update和0delete语句中操作
o 支持索引
使用这些新特性我们能实现可管理的虚拟化视图,下面举个例子:
1. 首先执行以下sql,创建一个视图
--文件目录虚拟视图
create or replace view mydir as
begin
0select name from sys.file(’d:\\mydir’) where type=’FOLDER’.
end.
查询上面的视图会返回d:\mydir目录下的所有子目录

Select * from mydir
------
| NAME |
------
| F1 |
| F2 |
------
2. 我们为mydir视图加一个触发器,sql语句如下:
--文件目录虚拟视图触发器
create or replace trigger mydir_trigger for mydir as
begin
--基础目录
v_dir := ’d:\\mydir\\’.
if type=’BEFORE_INSERT’ then
--创建目录
oscmd(’cmd /c md ’ v_dir new.name).
else if type = ’BEFORE_DELETE’ then
--删除目录
oscmd(’cmd /c rd ’ v_dir new.name).
else if type = ’BEFORE_UPDATE’ then
--重命名目录
oscmd(’cmd /c rename ’ v_dir old.name ’ ’ new.name).
end if.
end.

相关文章


怎样用Tra act—SQL语句扩充数据库
SQLServer安全模型的使用
用sql来管理非数据的对象
“没有注册类别”的解决办法
AdaptiveServerAnywhere对系统的要求
SQL语句中CASE的用法
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛