关于VC+SQL2000数据库备份和恢复的问题!

fatyee 2003-09-11 11:26:10
加精

假设现在我有两个数据库DB1和DB2,问题如下:
1、我想直接把DB1的东西直接备份到DB2中(即不经过"backup database DB1 to disk='...'"的文件形式),在VC中应该怎么写?
2、如果我只想把DB1中的某个表T备份到DB2中而不是整个DB1,在VC中又应该怎么写?
3、如果我已经把DB1备份到文件F.dat中,现在想把F.dat的内容恢复到DB2中,那么在VC中"restore database DB2 from disk='...'"的语句中应该加些什么?

请不吝赐教!
...全文
91 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
postform999 2003-11-10
  • 打赏
  • 举报
回复
mark
fatyee 2003-09-12
  • 打赏
  • 举报
回复
关于第二个问题,可不可以不使用select语句?这个方法我知道,但我们的课程设计要求不能使用select语句
small_wei 2003-09-12
  • 打赏
  • 举报
回复
那就用DTS好了,道理与第1个问题一样。
abc_rain 2003-09-11
  • 打赏
  • 举报
回复
关注
zhouRain 2003-09-11
  • 打赏
  • 举报
回复
分别对DB1和DB2的表建立记录集直接在记录集里写过去。我以前在ACCESS和SQL2000之间导数据是这样做的。
small_wei 2003-09-11
  • 打赏
  • 举报
回复
1、用DTS,在sql server的企业管理器中,选择导出数据,按向导将DB1的数据导出到DB2中去,并将这一过程存成DTS包,在VC中调用这个DTS包。调用方法可参考:
http://expert.csdn.net/Expert/topic/2217/2217029.xml?temp=.2533533
2、备份某个表直接用sql 语句就行了:
delete from db2.dbo.table1
insert into db2.dbo.table1 select * from db1.dbo.table1
3、先用sp_helpdb 找出db2物理文件的真实目录.
然后:
s1.Format("restore database %s from disk='e:\\back\\%s' with move '%s_data' to 'E:\\mssql2000\\MSSQL\\Data\\%s.mdf',move '%s_log' to 'e:\\mssql2000\\MSSQL\\Data\\%s_log.ldf'",sdbname,spath,db1path,sdbname,db1path,sdbname);
db1.ExecuteSQL(s1)
cdwy411 2003-09-11
  • 打赏
  • 举报
回复
替你up!!
night_cat 2003-09-11
  • 打赏
  • 举报
回复
study

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧