Starter Kit的数据库:
我们可以从数据库中看到,表的设计非常简单,一共设置了七个表!
CREATE TABLE [dbo].[CMRC_Categories] (
[CategoryID] [int] IDENTITY (1, 1) NOT NULL ,
[CategoryName] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
) ON [PRIMARY]
GO
CREATE TABLE [dbo].[CMRC_Customers] (
[CustomerID] [int] IDENTITY (1, 1) NOT NULL ,
[FullName] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
[EmailAddress] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
[Password] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
) ON [PRIMARY]
GO
CREATE TABLE [dbo].[CMRC_OrderDetails] (
[OrderID] [int] NOT NULL ,
[ProductID] [int] NOT NULL ,
[Quantity] [int] NOT NULL ,
[UnitCost] [money] NOT NULL
) ON [PRIMARY]
GO
CREATE TABLE [dbo].[CMRC_Orders] (
[OrderID] [int] IDENTITY (1, 1) NOT NULL ,
[CustomerID] [int] NOT NULL ,
[OrderDate] [datetime] NOT NULL ,
[ShipDate] [datetime] NOT NULL
) ON [PRIMARY]
GO
CREATE TABLE [dbo].[CMRC_Products] (
[ProductID] [int] IDENTITY (1, 1) NOT NULL ,
[CategoryID] [int] NOT NULL ,
[ModelNumber] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
[ModelName] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
[ProductImage] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
[UnitCost] [money] NOT NULL ,
[Description] [nvarchar] (3800) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
) ON [PRIMARY]
GO
CREATE TABLE [dbo].[CMRC_Reviews] (
[ReviewID] [int] IDENTITY (1, 1) NOT NULL ,
[ProductID] [int] NOT NULL ,
[CustomerName] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
[CustomerEmail] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
[Rating] [int] NOT NULL ,
[Comments] [nvarchar] (3850) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
) ON [PRIMARY]
GO
CREATE TABLE [dbo].[CMRC_ShoppingCart] (
[RecordID] [int] IDENTITY (1, 1) NOT NULL ,
[CartID] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
[Quantity] [int] NOT NULL ,
[ProductID] [int] NOT NULL ,
[DateCreated] [datetime] NOT NULL
) ON [PRIMARY]
GO
这些代码可以在sql server的企业管理器里的sql事件探查器里找得到!在刚看这段代码时,有一点比较迷惑:为什么最后要加上ON [PRIMARY]?
后来查了sql server 的联机书,才明白,是创建的表或数据库放在主文件里!
[ ON { filegroup | DEFAULT } ]
用来指定存储表的文件组。
如果指定 filegroup,则表将存储在指定的文件组中。数据库中必须存在该文件组。如果指定 DEFAULT,或者根本未指定 ON 参数,则表存储在默认文件组中。
(DEFAULT 并不是关键字。DEFAULT 是默认文件组的标识符并需对其进行定界,如 ON "DEFAULT"、ON [DEFAULT]。)
ON [PRIMARY]是表示表是建立在主文件组上。PRIMARY表示主文件组。如果没有指定默认文件组,则主文件组是默认文件组,ON [PRIMARY]也可以省略掉了。
由数据库说开来。Microsoft® SQL Server™ 2000 使用一组操作系统文件映射数据库,也可以说将数据库映射到一组操作系统文件上(看你怎么理解了)。数据库中的所有数据和对象(如表、存储过程、触发器和视图)都存储在操作系统文件(数据库文件):主要数据文件 、次要数据文件 和事务日志 文件中。
1.主要数据文件
该文件包含数据库的启动信息,并用于存储数据。是数据库的起点,指向数据库中文件的其它部分。每个数据库都有一个主要数据文件。主要数据文件的推荐文件扩展名是 .mdf。
2.次要数据文件
这些文件含有不能置于主要数据文件中的所有数据即包含除主要数据文件外的所有数据文件。有些数据库可能没有次要数据文件,而有些数据库则有多个次要数据文件。(如果主文件可以包含数据库中的所有数据,那么数据库就不需要次要数据文件。有些数据库可能足够大故需要多个次要数据文件,或使用位于不同磁盘驱动器上的辅助文件将数据扩展到多个磁盘。)次要数据文件的推荐文件扩展名是 .ndf。
3.事务日志文件
该数据库的日志信息。每个数据库都必须至少有一个日志文件。日志文件的推荐文件扩展名是 .ldf。
后来Google了一把,如果想多了解,可以参考:http://www.chinaitpower.com/A200507/2005-07-27/177616.html
这张帖子!
后面还要创建存贮过程的,就是敷述了...