2012-01-12 74 views
22

我已经在SQL Server 2008中生成了一个数据库的脚本。生成的脚本具有创建数据库的硬编码路径。我没有硬编码的路径,我想要这个路径默认的脚本运行的数据库引擎或类似的。在默认路径中使用脚本创建数据库?

这里是脚本的一小部分:

CREATE DATABASE [POS] ON PRIMARY 
(NAME = N'POS', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS\MSSQL\DATA\POS.mdf' , SIZE = 2048KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB) 
LOG ON 
(NAME = N'POS_log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS\MSSQL\DATA\POS_log.ldf' , SIZE = 1024KB , MAXSIZE = 2048GB , FILEGROWTH = 10%) 
GO 

C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS\MSSQL\DATA\POS.mdf可能不会在这就是为什么我希望它由数据库引擎选择

回答

33

只需创建数据库,然后直接在文件

CREATE DATABASE [POS] 
GO 
ALTER DATABASE POS MODIFY FILE 
(NAME = N'POS' , SIZE = 3048KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB) 
GO 
ALTER DATABASE POS MODIFY FILE 
(NAME = N'POS_log' , SIZE = 1024KB , MAXSIZE = 2048GB , FILEGROWTH = 10%) 
GO 
+0

工作很好...谢谢 – 2012-01-12 15:16:14

+0

最好的感谢总是upvote并接受答案8-) – 2012-01-12 15:32:30

+0

是的,我已经试图选择它作为最好的,但stackoverflow不让我选择那个早 – 2012-01-12 16:09:26

16

为什么不只是使用的所有计算机上存在的路径:

CREATE DATABASE [POS]; 

这将创建包含所有默认设置(包括路径)的数据库。您可以稍后改变您喜欢的任何设置。

+0

它将使用POS和POS_log作为默认值调整所有需要的属性。至少在我的情况。 – kampsj 2017-08-10 16:19:36