gpt4 book ai didi

sql-server - 创建数据库错误: cannot create file

转载 作者:行者123 更新时间:2023-12-02 19:54:46 25 4
gpt4 key购买 nike

我有一个安装程序,作为安装的一部分,它会创建一个 SQL Server 2000(及更高版本)数据库。

一些用户更改数据库服务器、分离数据库……并希望重新安装。

如果文件存在于默认位置,我会收到以下错误:

Cannot create file 'C:\Program Files\Microsoft SQL Server...\DATA\mydatabase.mdf' because it already exists.

我可以通过先检查默认路径并删除文件来解决这个问题。但是,当用户安装到远程 SQL Server 时,我该如何执行此操作?

我正在寻找类似的东西:

CREATE DATABASE mydatabase WITH OVERWRITE

编辑:

删除数据库不是解决方案。数据库不存在,但文件仍然存在。

最佳答案

您可以像这样使用 sys.sysdatabase 测试数据库是否存在

IF EXISTS (SELECT * FROM sys.sysdatabases WHERE NAME = 'mydatabase')
BEGIN
DROP DATABASE mydatabase
END

如果您想测试特定文件是否已附加到 SQL Server,您还可以使用系统 View sys.sysdatabases,因为它包含“filename”属性,其中包含所有数据库的 mdf 文件。

如果该文件附加到不同的数据库,我认为覆盖它听起来很危险,您可能应该删除附加到该文件的数据库。删除数据库将删除基础文件。

如果文件存在但未连接到 SQL Server,您可能应该将其删除一次,并确保删除操作会在后续删除时删除文件。

关于sql-server - 创建数据库错误: cannot create file,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6041833/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com