数据库

本类阅读TOP10

·SQL语句导入导出大全
·SQL Server日期计算
·SQL语句导入导出大全
·SQL to Excel 的应用
·Oracle中password file的作用及说明
·MS SQLServer OLEDB分布式事务无法启动的一般解决方案
·sqlserver2000数据库置疑的解决方法
·一个比较实用的大数据量分页存储过程
·如何在正运行 SQL Server 7.0 的服务器之间传输登录和密码
·SQL中两台服务器间使用连接服务器

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
如何使用Sybase ASE数据库的扩展存储过程?

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

    使用ASE已经有很长时间了,在使用过程中,不断深入的了解了它的各种功能,但是对于扩展存储过程基本上没有书籍中有讲到过,论坛上似乎也没有出现过此类问题,但是它确实能够解决部分特殊问题,而且功能是十分强大的,我专门对此进行了研究,现将结果与大家共享.

    有时候大家可能会有这种需求,就是需要对服务器进行某些操作,比如拷贝文件,启动或者停止某些服务和程序等.一般这种情况下,PB就无能为力了,只有辅助于众多的API函数,并且往往要通过服务器操作系统复杂的权限控制,然后还要执行某些操作,这不是一般PB开发者能够从容做到的.扩展存储过程为我们提供了一个便利的方法.

1.常见的扩展存储过程:
xp_cmdshell:以命令行的方式在服务器端执行某些操作.命令行的功能是非常强大的,几乎上可以做任何事情.

2.mail系列的扩展存储过程.

3.自定义的存储过程,为了实现某些特殊的功能.

    下面我们主要以xp_cmdshell来说明如何使用扩展存储过程:

    首先扩展存储过程其调用方式和普通过程的调用方式是一样的;

    同样,必须有权限才能调用扩展过程;

    对于xp_cmdshell还有个特殊的地方:它执行了更加严格的权限控制,即使有sa权限,缺省情况下也不能被执行,必须使用sp_configure 修改服务器配置"xp_cmdshell context" 为0,重新启动服务器,才有了自个权限.

下面我们开始通过xp_cmdshell,获取服务器的时间,很简单:

打开pb的数据库画板,用sa用户连接上数据库,输入:

exec xp_cmdshell 'date';

系统将返回服务器时间.

然后我们执行一个拷贝,将c:盘的文件test.txt拷贝到d:盘:

exec xp_cmdshell "copy c:\test.txt d:\test.txt";

 




相关文章

相关软件