我们要开发一个简单的B2C商城,能够完成商品显示,购物车功能,订单流程就可以了,数据库我们使用SQLServer2005。数据库中有商品表,订单表,订单明细表,会员表就可以了,

数据库模型如下:

一起学习MVC(2)-数据库设计

 其中要说的一个就是:订单表的工作流ID,我们后面要使用工作流,所以这个工作流的ID是必须的。

PD图下载地址:https://files.cnblogs.com/sobaby/B2C_MVC.rar

对应的SQL语句如下:

(
    [UserID] [int] IDENTITY(1,1NOT NULL,
    
[UserName] [nvarchar](50NULL,
    
[UserPwd] [varchar](32NULL,
    
[Email] [varchar](150NULL,
    
[RegIP] [varchar](15NULL DEFAULT (getdate()),
    
[RegTime] [datetime] NULL,
 
CONSTRAINT [PK_MEMBERS] PRIMARY KEY CLUSTERED 
(
    
[UserID] ASC
)
WITH (IGNORE_DUP_KEY = OFFON [PRIMARY],
 
CONSTRAINT [AK_KEY_2_MEMBERS] UNIQUE NONCLUSTERED 
(
    
[UserName] ASC
)
WITH (IGNORE_DUP_KEY = OFFON [PRIMARY]
ON [PRIMARY]
END
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'用户编号' ,@level0type=N'SCHEMA'@level0name=N'dbo'@level1type=N'TABLE'@level1name=N'Members'@level2type=N'COLUMN'@level2name=N'UserID'

GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'登录名' ,@level0type=N'SCHEMA'@level0name=N'dbo'@level1type=N'TABLE'@level1name=N'Members'@level2type=N'COLUMN'@level2name=N'UserName'

GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'登陆密码' ,@level0type=N'SCHEMA'@level0name=N'dbo'@level1type=N'TABLE'@level1name=N'Members'@level2type=N'COLUMN'@level2name=N'UserPwd'

GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'邮箱' ,@level0type=N'SCHEMA'@level0name=N'dbo'@level1type=N'TABLE'@level1name=N'Members'@level2type=N'COLUMN'@level2name=N'Email'

GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'注册IP' ,@level0type=N'SCHEMA'@level0name=N'dbo'@level1type=N'TABLE'@level1name=N'Members'@level2type=N'COLUMN'@level2name=N'RegIP'

GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'注册时间' ,@level0type=N'SCHEMA'@level0name=N'dbo'@level1type=N'TABLE'@level1name=N'Members'@level2type=N'COLUMN'@level2name=N'RegTime'

GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'会员表' ,@level0type=N'SCHEMA'@level0name=N'dbo'@level1type=N'TABLE'@level1name=N'Members'

GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Products]'AND type in (N'U'))
BEGIN
CREATE TABLE [dbo].[Products](
    
[ProductID] [int] IDENTITY(1,1NOT NULL,
    
[ProductName] [nvarchar](100NOT NULL,
    
[Quantity] [int] NULL,
    
[Pic] [varchar](100NULL,
    
[Description] [nvarchar](500NULL,
    
[Status] [tinyint] NULL,
    
[AddTime] [datetime] NULL,
 
CONSTRAINT [PK_PRODUCTS] PRIMARY KEY CLUSTERED 
(
    
[ProductID] ASC
)
WITH (IGNORE_DUP_KEY = OFFON [PRIMARY],
 
CONSTRAINT [AK_KEY_2_PRODUCTS] UNIQUE NONCLUSTERED 
(
    
[ProductName] ASC
)
WITH (IGNORE_DUP_KEY = OFFON [PRIMARY]
ON [PRIMARY]
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Orders]'AND type in (N'U'))
BEGIN
CREATE TABLE [dbo].[Orders](
    
[OrderID] [int] IDENTITY(1,1NOT NULL,
    
[UserID] [int] NULL,
    
[WorkFlowID] [uniqueidentifier] NULL,
    
[TotalPrice] [money] NULL,
    
[OrderDate] [datetime] NULL DEFAULT (getdate()),
    
[Status] [tinyint] NULL,
 
CONSTRAINT [PK_ORDERS] PRIMARY KEY CLUSTERED 
(
    
[OrderID] ASC
)
WITH (IGNORE_DUP_KEY = OFFON [PRIMARY]
ON [PRIMARY]
END
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'订单号' ,@level0type=N'SCHEMA'@level0name=N'dbo'@level1type=N'TABLE'@level1name=N'Orders'@level2type=N'COLUMN'@level2name=N'OrderID'

GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'用户编号' ,@level0type=N'SCHEMA'@level0name=N'dbo'@level1type=N'TABLE'@level1name=N'Orders'@level2type=N'COLUMN'@level2name=N'UserID'

GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'总金额' ,@level0type=N'SCHEMA'@level0name=N'dbo'@level1type=N'TABLE'@level1name=N'Orders'@level2type=N'COLUMN'@level2name=N'TotalPrice'

GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'订单日期' ,@level0type=N'SCHEMA'@level0name=N'dbo'@level1type=N'TABLE'@level1name=N'Orders'@level2type=N'COLUMN'@level2name=N'OrderDate'

GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'状态' ,@level0type=N'SCHEMA'@level0name=N'dbo'@level1type=N'TABLE'@level1name=N'Orders'@level2type=N'COLUMN'@level2name=N'Status'

GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[OrderDetail]'AND type in (N'U'))
BEGIN
CREATE TABLE [dbo].[OrderDetail](
    
[ID] [int] IDENTITY(1,1NOT NULL,
    
[OrderID] [int] NULL,
    
[ProductID] [int] NULL,
    
[Quantity] [int] NULL,
    
[UnitPrice] [money] NULL,
 
CONSTRAINT [PK_ORDERDETAIL] PRIMARY KEY CLUSTERED 
(
    
[ID] ASC
)
WITH (IGNORE_DUP_KEY = OFFON [PRIMARY]
ON [PRIMARY]
END
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'订单号' ,@level0type=N'SCHEMA'@level0name=N'dbo'@level1type=N'TABLE'@level1name=N'OrderDetail'@level2type=N'COLUMN'@level2name=N'OrderID'

GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'数量' ,@level0type=N'SCHEMA'@level0name=N'dbo'@level1type=N'TABLE'@level1name=N'OrderDetail'@level2type=N'COLUMN'@level2name=N'Quantity'

GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'单价' ,@level0type=N'SCHEMA'@level0name=N'dbo'@level1type=N'TABLE'@level1name=N'OrderDetail'@level2type=N'COLUMN'@level2name=N'UnitPrice'

GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'订单明细' ,@level0type=N'SCHEMA'@level0name=N'dbo'@level1type=N'TABLE'@level1name=N'OrderDetail'

GO
IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_ORDERS_REFERENCE_MEMBERS]'AND parent_object_id = OBJECT_ID(N'[dbo].[Orders]'))
ALTER TABLE [dbo].[Orders]  WITH CHECK ADD  CONSTRAINT [FK_ORDERS_REFERENCE_MEMBERS] FOREIGN KEY([UserID])
REFERENCES [dbo].[Members] ([UserID])
GO
IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_ORDERDET_REFERENCE_ORDERS]'AND parent_object_id = OBJECT_ID(N'[dbo].[OrderDetail]'))
ALTER TABLE [dbo].[OrderDetail]  WITH CHECK ADD  CONSTRAINT [FK_ORDERDET_REFERENCE_ORDERS] FOREIGN KEY([OrderID])
REFERENCES [dbo].[Orders] ([OrderID])
GO
IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_ORDERDET_REFERENCE_PRODUCTS]'AND parent_object_id = OBJECT_ID(N'[dbo].[OrderDetail]'))
ALTER TABLE [dbo].[OrderDetail]  WITH CHECK ADD  CONSTRAINT [FK_ORDERDET_REFERENCE_PRODUCTS] FOREIGN KEY([ProductID])
REFERENCES [dbo].[Products] ([ProductID])

相关文章:

  • 2022-01-06
  • 2021-06-23
  • 2021-09-17
  • 2021-10-29
  • 2022-02-11
  • 2022-12-23
  • 2021-03-27
  • 2021-12-03
猜你喜欢
  • 2022-01-19
  • 2021-12-29
  • 2022-01-05
  • 2022-02-05
  • 2022-12-23
  • 2021-11-20
  • 2022-12-23
相关资源
相似解决方案