客户机端如何控制服务器端的库(100分)

  • 主题发起人 主题发起人 jiji
  • 开始时间 开始时间
J

jiji

Unregistered / Unconfirmed
GUEST, unregistred user!
各位大虾:
请教几个问题。
//在客户机端可以删除服务器端的库吗?库中还有表。
//如果在服务器端已经有了一个库名为aa的库,aa下还有一个表bb.
但在客户机端不能找到任何有关这个库和表的信息,如果现在我又用
Create Database和Create table来建一个同名的库和表,那肯定会
引起错误落,那我应该怎么来捕捉错误呢?
请各位指教。谢了。
 
we can: 1. drop Database (need sysdba or user has root privileges)
2. You can try to open the Database:aa, if not exits, will
raise an exception
Table too.
 
you must have a right admitting you drop the database
 
老兄,应该可以,我没亲自作过,但作过类似的,
首先,你要有管理员身份,否则一切免谈。
然后,在客户端用管理员身份登上服务器。确认身份。
然后你在客户端向服务器发送命令集。使服务器程序中响应
线程响应你的命令集。有问题再说!
 
当然可以
truncate table //清空表
DROP TABLE //删除表
DROP DATABASE //删除数据库
sp_dropdevice //删除设备

不过你要有权陷
 
大家好,先谢谢大家那么热心落。嘻嘻
我现在是想来捕获异常,但就是不知道
那句应该怎么写。
try
query1.open;
except
on error1 do query1.open;
else
messagedlg('error'.....);
end;
其中error1是正常建库时出现的异常。
query1中的sql是用来建库的。
请问是不是这样来处理?急,急,急。。
谢拉。。。
 
你用什么数据库?
恶劣的:
try
query1.open;

except
query1.open
end;
请继续讨论
 
权限;属主;用户对象
 
用PB很容易得到数据库出错消息。
 
首先,你得不到库的正确信息,说明你没有操作权限,否则无论如何都可以得到
信息;
第二,如果强行连接,应当出现连接错误,错误号试一下就知道;
第三,没有权限,你无法删除和清空该表;
 
继续继续,我的答案是
try
query1.open
except
//if error
end;

table.exist:-)
 
只要你有权限就可以
 
1. 你要以DATA BASE ADMINISTRATOR身份登录数据库管理系统.该部分要用TRY...
EXCEPT保护.
2.写入下代码:
try
Query1.Open;
except
on Error1 do
Query1.close;
Application.MessageBox(.....);
else
Application.MessageBox(...);
end;
其中的Error1是一个vcl的错误类.如果,不知道是什么类,就故意在集成环境中让他
出错,看DELPHI的提示就知道了.
 
1.首先要对此库(实际上是指表空间)赋一用户及相应权限;
2.其次Tdatabase.open时捕获exception,以检查是否有当前数据库或配置
是否正确
try
yourdb.open;
//以上继续处理
except
//以下处理出错
3.利用Tsession的GetTableNames方法检查指定表名的表是否存在
或利用CJ的方法;用DeleteTable删除表;或用sql语句(Tquery)
drop table yourtalbe删除表.
4.
实际上
try
//对数据库操作
except
//处理错误
这种方法对捕获数据库操作异常具有通用性

 
多人接受答案了。
 
后退
顶部