现在在搞毕业设计,不知怎样实现数据的备份和导出功能?
有知情者请指教!
谢谢!
有知情者请指教!
谢谢!
解决方案 »
- dxdbgrid 中MEMO字段如何显示
- 自定义公式
- 再来D版有感!
- 101 分问:关于COM事件,D5、6开发指南的一点疑问!
- 使用indy接收中文EMail的问题
- 高分!谁知道腾讯浏览器里的新建一个窗口虽怎么实现的?我想自己做个上网浏览器,但当新建一个页面时会打开IE浏览器,应该怎么捕捉这个新
- 谁手上有关于com,com+编程的资料?快快帮忙,谢谢。(提供线索者有分)
- 如何在QuickReport中将一条记录分为两页显示?
- 请问:怎样写磁道,还有关于OleContainer控件的问题
- TStrings类型的变量,已经free掉了,为什么它不等于nil呢?
- backup database gk to disk......的备份问题
- 数据库备份与恢复!
'BACKUP DATABASE test TO DISK = '''+'c:\test.bak'+''''A. 还原完整数据库
说明 MyNwind 数据库仅供举例说明。
下例显示还原完整数据库备份。RESTORE DATABASE MyNwind
FROM MyNwind_1B. 还原完整数据库备份和差异备份
下例还原完整数据库备份后还原差异备份。另外,下例还说明如何还原媒体上的另一个备份集。差异备份追加到包含完整数据库备份的备份设备上。RESTORE DATABASE MyNwind
FROM MyNwind_1
WITH NORECOVERY
RESTORE DATABASE MyNwind
FROM MyNwind_1
WITH FILE = 2C. 使用 RESTART 语法还原数据库
下例使用 RESTART 选项重新启动因服务器电源故障而中断的 RESTORE 操作。-- This database RESTORE halted prematurely due to power failure.
RESTORE DATABASE MyNwind
FROM MyNwind_1
-- Here is the RESTORE RESTART operation.
RESTORE DATABASE MyNwind
FROM MyNwind_1 WITH RESTARTD. 还原数据库并移动文件
下例还原完整数据库和事务日志,并将已还原的数据库移动到 C:\Program Files\Microsoft SQL Server\MSSQL\Data 目录下。RESTORE DATABASE MyNwind
FROM MyNwind_1
WITH NORECOVERY,
MOVE 'MyNwind' TO 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\NewNwind.mdf',
MOVE 'MyNwindLog1' TO 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\NewNwind.ldf'
RESTORE LOG MyNwind
FROM MyNwindLog1
WITH RECOVERYE. 使用 BACKUP 和 RESTORE 创建数据库的复本
下例显示使用 BACKUP 和 RESTORE 语句创建 Northwind 数据库的复本。MOVE 语句使数据和日志文件还原到指定的位置。RESTORE FILELISTONLY 语句用于确定待还原数据库内的文件数及名称。该数据库的新复本称为 TestDB。有关更多信息,请参见 RESTORE FILELISTONLY。 BACKUP DATABASE Northwind
TO DISK = 'c:\Northwind.bak'
RESTORE FILELISTONLY
FROM DISK = 'c:\Northwind.bak'
RESTORE DATABASE TestDB
FROM DISK = 'c:\Northwind.bak'
WITH MOVE 'Northwind' TO 'c:\test\testdb.mdf',
MOVE 'Northwind_log' TO 'c:\test\testdb.ldf'
GOF. 使用 STOPAT 语法还原到即时点和使用多个设备进行还原
下例将数据库还原到其在 1998 年 4 月 15 日中午 12 点时的状态,并显示涉及多个日志和多个备份设备的还原操作。RESTORE DATABASE MyNwind
FROM MyNwind_1, MyNwind_2
WITH NORECOVERY
RESTORE LOG MyNwind
FROM MyNwindLog1
WITH NORECOVERY
RESTORE LOG MyNwind
FROM MyNwindLog2
WITH RECOVERY, STOPAT = 'Apr 15, 1998 12:00 AM'G. 使用 TAPE 语法还原
下例显示从 TAPE 备份设备还原完整数据库备份。RESTORE DATABASE MyNwind
FROM TAPE = '\\.\tape0'H. 使用 FILE 和 FILEGROUP 语法还原
下例还原一个包含两个文件、一个文件组和一个事务日志的数据库。RESTORE DATABASE MyNwind
FILE = 'MyNwind_data_1',
FILE = 'MyNwind_data_2',
FILEGROUP = 'new_customers'
FROM MyNwind_1
WITH NORECOVERY
-- Restore the log backup.
RESTORE LOG MyNwind
FROM MyNwindLog1I. 将事务日志还原到标记处
下例显示将事务日志还原到名为"RoyaltyUpdate"的标记处。BEGIN TRANSACTION RoyaltyUpdate
WITH MARK 'Update royalty values'
GO
USE pubs
GO
UPDATE roysched
SET royalty = royalty * 1.10
WHERE title_id LIKE 'PC%'
GO
COMMIT TRANSACTION RoyaltyUpdate
GO
--Time passes. Regular database
--and log backups are taken.
--An error occurs.
USE master
GORESTORE DATABASE pubs
FROM Pubs1
WITH FILE = 3, NORECOVERY
GO
RESTORE LOG pubs
FROM Pubs1
WITH FILE = 4,
STOPATMARK = 'RoyaltyUpdate'
最简单的SQL语句:备份与还原SQL Server自带的数据库在服务器上备份:
use Northwind
Backup database Northwind to disk='d:\Northwind_bak.dat' with initRESTORE DATABASE NorthNwind FROM DISK = 'd:\Northwind_bak.dat'------------------------------------------------------------------
备份数据库这一操作在客户机上实现
客户机:machine
共享目录:share (要完全共享,可写权限)backup:
bakcup database dbname to disk='\\machine\share\data.bak' with init
\\machine\share目录要有写权限。restore:
restore database dbname from disk='\\machine\share\data.bak'
//
备注:restore 语句有很多的选项,可以查看企业管理器的在线帮助。如下
with replace, move 'dbname_dat' to 'c:\mssql7\data\dbname.mdf',
move 'dbname_log' to 'c:\mssql7\data\dbname.log'
其中'c:\mssql7\data\'是服务器的目录,这点要注意------------------------------------------------------------------------------备份与还原数据库的相关内容:
SQL Server 7.0数据库备份有四种:完全数据库备份、增量数据库备份、事务日志备份、数据库文件或文件组备份。在数据库崩溃时,应该首先尝试备份事务日志(这一点很重要),然后恢复最后的数据库备份、该次数据库备份后的所有增量备份,最后恢复事务日志备份,这样可以将数据库恢复到崩溃前的状态。备份是定期的,而不是实时的,所以利用备份并不能完全恢复数据库,它只能将数据库恢复到制作备份的那一刻 ...... 数据库日志是实时的,他忠实的记录下所有对数据库的更新操作。因此,当磁盘出现故障造成数据库损坏时,就可以首先利用备份恢复数据库(大部分数据),然后运行数据库日志,即将备份后所做的操作重新在做一遍,从而将数据库完全恢复。
--备份完整的数据库---------------------------------------------------------------
//创建一个备份设备:
-- 1. Create the backup device for the full MyNwind backup.///
USE master
EXEC sp_addumpdevice 'disk', 'MyNwind_2', 'c:\mssql7\backup\MyNwind_2.dat'-- 2. Back up the full MyNwind database.BACKUP DATABASE MyNwind TO MyNwind_2--备份数据库的日志---------------------------------------------------------------
--1. Create the log backup device.USE master
EXEC sp_addumpdevice 'disk', 'MyNwindLog1', 'c:\mssql7\backup\MyNwindLog1.dat'--2. Update activity has occurred before this point. Back up the log of the MyNwind database.BACKUP LOG MyNwind TO MyNwindLog1-------
try
AdoQuery1.Close;
AdoQuery1.SQL.Clear;
AdoQuery1.SQL.Add('backup database pubs');
AdoQuery1.SQL.Add('to disk='+''''+edtPath.Text+'''');
AdoQuery1.ExecSQL;
except
ShowMessage('备份数据库失败!');
exit;
end;
注:参阅了《大本营3.0》