Вы можете проверить, существует ли база данных с sys.sysdatabase, как это
IF EXISTS (SELECT * FROM sys.sysdatabases WHERE NAME = 'mydatabase')
BEGIN
DROP DATABASE mydatabase
END
Если вы хотите проверить, подключен ли уже определенный файл к серверу sql, вы также можете использовать системное представление sys.sysdatabases, поскольку он содержит атрибут «filename», содержащий mdf-файл для всех баз данных.
Если файл прикреплен к другой базе данных, думаю, просто перезаписать его звучит рискованно, и вам, вероятно, лучше удалить базу данных, которая прикреплена к файлу.Удаление базы данных приведет к удалению основного файла.
Если файл существует, но не подключен к серверу sql, вы, вероятно, должны удалить его один раз и убедиться, что капли удаляют файлы при последующих удалениях.