sql server 7.0怎样导数据? 300分(300分)

  • 主题发起人 主题发起人 cAkk
  • 开始时间 开始时间
C

cAkk

Unregistered / Unconfirmed
GUEST, unregistred user!
一台机器上了sql 7.0,并且已经录入了大量数据. 后来我在另一台
机器上也装了一个sql 7.0,并通过sql script方式成功地建立了和
前一台机器一样结构的数据库,然后我在前一台机器上backup数据
到一个文件,把文件拷贝到第二台机器上进行restore,以为可以把
数据导进来,结果失败.

请问怎样才能把数据导进来? (两台机器互不相连,是独立的)
 
把*.mdf和*.ldf拷贝过去
用系统存储过程sp_attach_db 即可
语法
sp_attach_db [@dbname =] 'dbname',
[@filename1 =] 'filename_n' [,...16]

Arguments
[@dbname =] 'dbname'
Is the name of the database to be attached to the server. The name must be unique. dbname is sysname, with a default of NULL.
[@filename1 =] 'filename_n'
Is the physical name, including path, of a database file. filename_n is nvarchar(260), with a default of NULL. There can be up to 16 file names specified. The parameter names start at @filename1 and increment to @filename16. The file name list must include at least the primary file, which contains the system tables that point to other files in the database. The list must also include any files that were moved after the database was detached.
Return Code Values
0 (success) or 1 (failure)

Result Sets
None

 
在做这步操作之前
先将你建好的数据库删掉!
 
在单机上我试过restore. 只要别先建库,RESTORE时给出新库名字就可以了。
 
很简单的,先在第一台机backup,在另一台机恢复之前,先建立一个数据库或已有数
据库,再Restore。有几点注意,如选择好需要恢复的文件,在Options选定
“Force restore over existing database”,还有在“Move to physical
file name”要写对路径,比如你的数据库在“D:/MSSQL7/data”,如果“Move to
physical file name”显示“E:/MSSQL7/Data/..”,就要把它改为“D:/MSSQL7
/data”,否则就不能恢复数据,我以前也是经常在这里出问题的,老是不能恢复数
据。祝你好运!
 
我试验恢复是可以的.
 
恢复是可以的
不过建议是 SP_ATTACH_DB
 
SQL7的Backup/restore的操作,在目的一方是不用预先建表的。
 
失败的原因是什么?要注意在advance option当中把目标库文件名改一下。
在backup的时候,sqlserver将被备份数据库所在的路径一同保存下来了。
在restore的时候,sqlserver自动将保存下来的路径和文件名作为restore
的位置,这时,如果相应的文件并不存在,就会报错。restore的时候选择
device选项,再选择已经准备好的backup文件,然后在advance当中将目标
位置改为你已经创建的数据库的两个文件名(.dbf,.lbf)
 
guojun说的是对了,只要将需要复制的数据库backup以后,在一个新建的db上
restore就可以了。
 
终于搞定了,原来出错原因是另一台机器的sql 7.0把同样名字的database
的物理文件起了不一样的文件名,比如原来机器上数据库名字是"webdata",
物理名字是"webdata.mdf",而另一台机器建立数据库"webdata"之后,系统
起的物理文件名却是"webdata_data.mdf"! 以前我一直没有发现这点,以为
默认的名字肯定都是一样的,没想到!! TNND!! TNND!!!

是fstao的回答提醒我把那个grid的列用鼠标拉完整看了看文件名,才发现这
个问题的,所以多给fstao淀粉把!
 
不过,wrench 的方法最好!
 
后退
顶部