本文主要对使用微软SSMS对SQL Serve管理时使用SQL脚本创建数据库时遇到的BUG进行记录,发现数据库文件位置的相关权限问题,在非系统盘创建文件夹作为数据库文件的存放位置即可解决该问题。同时记录SQL Serve和SSMS下载安装配置
软件下载安装配置
https://help.aliyun.com/document_detail/465370.html
问题描述
执行以下代码时报错:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| use master go
if exists(select * from sysdatabases where name='test123') begin select '该数据库已存在' drop database test123 end else begin create database test123 on primary ( name='cpDB_data', filename='C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQL\MSSQL\DATA\cpDB_data.mdf', size=5mb, maxsize=100mb, filegrowth=15% ) log on ( name='cpDB_log', filename='C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQL\MSSQL\DATA\cpDB_log.ldf', size=2mb, maxsize=20mb, filegrowth=1mb ) end
|
报错如下:
1
| 消息 5133,级别 16,状态 1,第 11 行 对文件“C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQL\MSSQL\DATA\cpDB_data.mdf”的目录查找失败,出现操作系统错误 3(系统找不到指定的路径。)。 消息 1802,级别 16,状态 1,第 11 行 CREATE DATABASE 失败。无法创建列出的某些文件名。请查看相关错误
|
解决方法
在D盘中创建文件夹D:\1Project\test
后更改代码如下即可解决:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| use master go
if exists(select * from sysdatabases where name='test123') begin select '该数据库已存在' drop database test123 end else begin create database test123 on primary ( name='cpDB_data', filename='D:\1Project\test\cpDB_data.mdf', size=5mb, maxsize=100mb, filegrowth=15% ) log on ( name='cpDB_log', filename='D:\1Project\test\cpDB_log.ldf', size=2mb, maxsize=20mb, filegrowth=1mb ) end
|
SSMS附加功能可以管理数据库文件
对数据库右键选择附加选项即可。

可以选择数据库文件位置
