使用SQL脚本创建SQL Server DB

时间:2012-02-07 17:19:31

标签: sql sql-server visual-studio visual-studio-2010

我有一个关于SQL服务器和Visual Studio 2010的基本问题。我目前正在阅读“使用.NET framework 3.5释放C#3.0”一书。我正在解释LINQ to SQL的章节。作者要求创建一个新数据库并使用他的脚本(在书中给出)来创建表并用一些数据填充这些表。

但是,由于我以前从未使用过SQL服务器,这部分对我来说有点混乱。作者没有解释如何创建数据库。首先我想我可以右键单击Data Connections -> Create New SQL Server Database。但是,当我尝试这个时,我只得到一个错误,说明无法建立连接。

如果不起作用,我通过Service-based Database添加了新的Add -> New Item。这是有效的(虽然我不明白这个和我之前试过的事情之间的区别。如果有人可以为我解释这个,我会非常感激),但现在我应该用脚本来创建表并输入一些数据。我可以右键单击数据库并选择New Query,但该窗口似乎不接受此类脚本。

脚本的第一部分:

/****** Object: Table [dbo].[HospitalStaff]Script Date: 12/29/2007 21:42:42 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (
SELECT * FROM sys.objects
WHERE object_id = OBJECT_ID(N’[HospitalStaff]’)
AND type in (N’U’))
BEGIN
CREATE TABLE [HospitalStaff](
[HospitalStaffID] [int] IDENTITY(1,1) NOT NULL,
[Name] [varchar](50)
COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Position] [varchar](50)
COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
CONSTRAINT [PK_HospitalStaff] PRIMARY KEY CLUSTERED
(
[HospitalStaffID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF,
IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON,
ALLOW_PAGE_LOCKS = ON)
)
END

我知道这是一个非常基本的问题,但我在哪里可以执行此脚本?我使用SQL服务器教程访问了几个网站,但这一切都让人很困惑。

4 个答案:

答案 0 :(得分:4)

  • 在扩展名为.sql的解决方案中添加新的.sql文件
  • 打开该文件
  • 右键单击
  • 执行脚本

enter image description here

的更多信息

http://msdn.microsoft.com/en-us/library/yea4bc1b(vs.80).aspx

答案 1 :(得分:1)

您可以使用程序访问它。

例如,SQL Server Management Studio是一个用于访问,配置,管理,管理和开发SQL Server所有组件的集成环境。

查看更多信息HERE

答案 2 :(得分:0)

右键单击SSMS中对象资源管理器中的数据库名称,转到任务 - >为所有对象生成脚本。将其保存到新的查询窗口,您可以看到从头开始创建新数据库所需的文本,并用对象(表,SP等)填充它。

使用此代码可帮助您了解如何生成创建字符串。

示例:

USE [master]
GO
/****** Object:  Database [DBA]    Script Date: 02/07/2012 11:40:09 ******/
CREATE DATABASE [DBA] ON  PRIMARY 
( NAME = N'DBA', FILENAME = N'D:\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\DBA.mdf' , SIZE = 1303552KB , MAXSIZE = UNLIMITED, FILEGROWTH = 10240KB )
 LOG ON 
( NAME = N'DBA_log', FILENAME = N'D:\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\DBA_log.ldf' , SIZE = 2052672KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)
GO
...

答案 3 :(得分:0)

找到了一个雄辩的解决方案

问题 使用SQL Server 2008 Express在PC上运行时,Asp.NET Web Visual Studio 2010中的数据库 我可以使用该接口手动添加表,但我想运行SQL代码来创建表等。 您无法从查询界面(突出显示数据库和弹出选择“新查询”)执行此操作

上面提到的使用脚本的想法似乎是要走的路 - 但是当我这样做时,我无法弄清楚如何连接到解决方案中的数据库。

如果我选择“连接...”和我的PC上运行的SQL Server Express 2008,它将默认为“master”,当我尝试使用[Options]浏览到数据库时,它不在列表中。 当我明确地将完整路径放入时,它也会变成“主人” C:\ Users \ keef.riffhard \ Documents \ Visual Studio 2010 \ WebSites \ WebSite1 \ App_Data \ MyAspDatabase.mdf

AGGGG !!

[选项]中的技巧也是“附加连接参数”,注意“连接字符串参数覆盖其他面板中的图形选择” 所以我在我的解决方案中突出显示了数据库,然后转到属性并复制了连接字符串。 然后我将连接字符串粘贴到| Additional Connection Parameters |中[选项]

下的标签

成功!!