我正在使用T-SQL创建数据库,然后用表填充它。关键是我可以成功创建数据库,但是当我创建表时,它将它们添加到master
数据库中,而不是新创建的数据库中。这是我的代码段:
USE master;
GO
CREATE DATABASE Tester
ON
(NAME = Tester_dat,
FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL13.SQLEXPRESS\MSSQL\DATA\tester.mdf',
SIZE = 10,
MAXSIZE = 50,
FILEGROWTH = 5)
LOG ON
(NAME = Tester_log,
FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL13.SQLEXPRESS\MSSQL\DATA\tester.ldf',
SIZE = 5MB,
MAXSIZE = 25MB,
FILEGROWTH = 5MB);
GO
CREATE TABLE [dbo].[TestCategory](
[Id] [int] IDENTITY(1,1) NOT NULL,
[Category] [nvarchar](20) NOT NULL,
PRIMARY KEY CLUSTERED
(
[Id] ASC
))
我想问题可能是我正在使用默认架构[dbo]
,但如果我用[Tester]
替换它,我会收到错误,说明架构不存在。任何想法,如何切换到新创建的数据库并在其中创建表?
答案 0 :(得分:2)
您应该添加Use
。
Use Tester
GO
CREATE TABLE [dbo].[TestCategory](
[Id] [int] IDENTITY(1,1) NOT NULL,
[Category] [nvarchar](20) NOT NULL,
PRIMARY KEY CLUSTERED
(
[Id] ASC
))
GO