仅仅是dd.mdf文件应该是不完全的,SQL好象还有一个文件dd.ldf。
用SQL的企业管理器可以吧!?
用SQL的企业管理器可以吧!?
解决方案 »
- 一子小问题解决给150分(已多处发贴)我想读取注册表中的一个值?
- 一个好问题,快来看
- Access 数据库莫名被破坏?
- 如何做停留的开始画面?
- 求助!关于文件的MD5值,可用哪些API函数?
- 十万火急,请问怎样可以改变无标题栏窗体大小,请高手们赐教
- 很菜的一个问题
- 求助!请问在VB中如何实现象填写序列号时候,当填完一个号码后光标能自动跳到下一个文本框,应该调用哪个事件和函数?如何实现?谢谢
- 如何用存储过程生成的交叉查询结果做一动态报表?(VB+SQL)
- songyangk小草 如何使用vb6.0中的msflexgrid进行大量输入email:[email protected]
- VB大牛看过来,一个VC接口的动态库在VB中如何声明
- 字符串的小问题
也可以使用SQL语句CREATE DATABASE来附加数据库:
CREATE DATABASE 数据库名 [ON [PRIMARY](数据库文件1),(数据库文件2),…] [LOG ON (事务日志文件1),(事务日志文件2),…] [FOR ATTACH]
最简单如:CREATE DATABASE [abc]即可。其全部选项都使用缺省设置。
每个数据库文件和事务日志文件都要同时指定以下五项内容:NAME=文件名,FILENAME=‘物理路径’,SIZE=初始空间大小,MAXSIZE=最大空间大小,FILEGROWTH=增量。例如:
CREATE DATABASE [abc] ON PRIMARY (NAME=[abc],FILENAME='c:\abc.mdf',
SIZE=8MB,MAXSIZE=16MB,FILEGROWTH=20%) LOG ON (NAME=[abc_log],
FILENAME='c:\abc.ldf',SIZE=1,MAXSIZE=1500KB,FILEGROWTH=100KB)
缺省情况下,SIZE,MAXSIZE,FILEGROWTH的单位是MB,
因为一个数据库可能存放在多个数据库文件中,PRIMARY是指从多个数据库文件中指定一个主文件,该文件包含整个数据库的逻辑起点和系统表。
FOR ATTACH可选参数指定是否附加数据库,即使用现有的MDF文件,可以只指定一个PRIMARY主文件,其系统表中包含了以前定义时的所有数据文件和日志文件有关信息,如果路径对的话,其它数据库文件和事务日志将自动加入,否则需要重新指定,如:CREATE DATABASE [abc2] ON PRIMARY (FILENAME = 'c:\abc.mdf') FOR ATTACH,当然如果事务日志不在原路径的话,也可以在这句SQL中加LOG ON重新指定事务日志文件的正确路径,注:附加数据库时,在数据库文件和事务日志文件的参数中,只要指定FILENAME就行了。这一点与新建数据库不同。
http://www.csdn.net/expert/topic/712/712112.xml?temp=1.653689E-02
在查询分析器里执行
示例:
EXEC sp_attach_db @dbname = N'pubs',
@filename1 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf',
@filename2 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs_log.ldf'
或者不要日志文件
sp_attach_single_file_db
EXEC sp_attach_single_file_db @dbname = N'pubs',
@filename1 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf'