企业管理器-》组-》数据库
右键点
属性-》date file选项卡-》点空的那个“…”
然后重新写个数据库文件名
点确定log也是

解决方案 »

  1.   

    --调整数据库文件所在的目录就行了:企业管理器--右键你的数据库--所有任务--分离数据库然后在我的电脑中,复制数据库的文件到另一个空间足够的磁盘中.再:
    企业管理器--右键你的数据库--所有任务--附加数据库--选择数据库文件(*.mdf)--确定
      

  2.   

    请问adinna(想写程序),若按照你的那种方法,新加的其他分区里的*.mdf文件是自动接在原来的那个小分区的mdf后面呢?还是整个数据库全部重新放在新的*.mdf文件里?我之所以这么问是因为我在批量导入一个比较大的数据库(〉40G),我已经建好了表,现在在用bulk insert导入一大堆文本文件,可是导入到一半时,我的sql server初始data文件夹所在的分区就满了,现在我想保留我前面的工作,而把还没导入的部分放在另一个分区,这样做可以么?请大家帮帮我
     
      

  3.   

    既然是导入大量文本文件引起的问题,楼主可以按下面的步骤来解决***********当然,做这些工作的时候,如果目前的数据重要,建议楼主先备份********
    --压缩日志及数据库文件大小1.清空日志
    DUMP  TRANSACTION  库名  WITH  NO_LOG    2.截断事务日志:
    BACKUP LOG 数据库名 WITH NO_LOG3.收缩数据库文件(如果不压缩,数据库的文件不会减小
    企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件
    --选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
    --选择数据文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了 也可以用SQL语句来完成
    --收缩数据库
    DBCC SHRINKDATABASE(客户资料)

    --收缩指定数据文件,1是文件号,可以通过这个语句查询到:select * from sysfiles
    DBCC SHRINKFILE(1)4.为了最大化的缩小日志文件
    a.分离数据库:
    企业管理器--服务器--数据库--右键--分离数据库 b.在我的电脑中删除LOG文件 c.附加数据库:
    企业管理器--服务器--数据库--右键--附加数据库 此法将生成新的LOG,大小只有500多K 或用代码: 
    下面的示例分离 pubs,然后将 pubs 中的一个文件附加到当前服务器。

    a.分离
    EXEC sp_detach_db @dbname = 'pubs' b.删除日志文件

    c.再附加
    EXEC sp_attach_single_file_db @dbname = 'pubs', 
       @physname = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf'5.为了以后能自动收缩,做如下设置:
    企业管理器--服务器--右键数据库--属性--选项--选择"自动收缩"

    --SQL语句设置方式:
    EXEC sp_dboption '数据库名', 'autoshrink', 'TRUE' 6.如果想以后不让它日志增长得太大
    企业管理器--服务器--右键数据库--属性--事务日志
    --将文件增长限制为xM(x是你允许的最大数据文件大小) --SQL语句的设置方式:
    alter database 数据库名 modify file(name=逻辑文件名,maxsize=20)
      

  4.   

    --压缩后,应该释放出足够的空间供使用了--.再用下面的方法进行数据导入,就可以避免日志文件过大的问题.--设置恢复模型为:大容量日志记录
    alter database 你的数据库名 set recovery BULK_LOGGED 
    go----你的bcp导入处理,可以在查询分析器中进行,也可以在其他地方进行-----恢复数据库设置
    alter database 你的数据库名 set recovery full
    go