当前位置:首页 » 数据仓库 » 商品详情数据库设计
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

商品详情数据库设计

发布时间: 2022-11-17 03:58:31

A. 用hibernate怎么实现购物系统的订单

你先说明你要实现什么,HIBERNATE主要可以针对数据库生成一个HIBERNATE DAO类方法,如果实现购物系统的订单的话,你在生长每个POJO后,在业务层把这个POJO声明出来,然后再对应每个表单内的text的name对应每个POJO的名字,他就会自动到每个对象中,用的时候在NEW出这个POJO就可以保存客户点击页面时所选的物品。

B. 做一个类似淘宝的购物商城数据库需要哪些表

-----------------用户信息-------------
-----------------系统代码表-----------
---------------菜单信息--------------
-------------------用户订单--------------
---------------订单 项目信息-----------
----------------商品类别信息-------------
----------------产品信息-----------------
----------------公告信息----------------
---------------订单-----------------
-------------------订单详情---------------

C. 电商项目---数据库表设计

CREATE TABLE `mmall_user` (

  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '用户表id',

  `username` varchar(50) NOT NULL COMMENT '用户名',

  `password` varchar(50) NOT NULL COMMENT '用户密码,MD5加密',

  `email` varchar(50) DEFAULT NULL,

  `phone` varchar(20) DEFAULT NULL,

  `question` varchar(100) DEFAULT NULL COMMENT '找回密码问题',

  `answer` varchar(100) DEFAULT NULL COMMENT '找回密码答案',

  `role` int(4) NOT NULL COMMENT '角色0-管理员,1-普通用户',

  `create_time` datetime NOT NULL COMMENT '创建时间',

  `update_time` datetime NOT NULL COMMENT '最后一次更新时间',

  PRIMARY KEY (`id`),

  UNIQUE KEY `user_name_unique` (`username`) USING BTREE

) ENGINE=InnoDB AUTO_INCREMENT=22 DEFAULT CHARSET=utf8;

CREATE TABLE `mmall_proct` (

  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '商品id',

  `category_id` int(11) NOT NULL COMMENT '分类id,对应mmall_category表的主键',

  `name` varchar(100) NOT NULL COMMENT '商品名称',

  `subtitle` varchar(200) DEFAULT NULL COMMENT '商品副标题',

  `main_image` varchar(500) DEFAULT NULL COMMENT '产品主图,url相对地址',

  `sub_images` text COMMENT '图片地址,json格式,扩展用',

  `detail` text COMMENT '商品详情',

  `price` decimal(20,2) NOT NULL COMMENT '价格,单位-元保留两位小数',

  `stock` int(11) NOT NULL COMMENT '库存数量',

  `status` int(6) DEFAULT '1' COMMENT '商品状态.1-在售 2-下架 3-删除',

  `create_time` datetime DEFAULT NULL COMMENT '创建时间',

  `update_time` datetime DEFAULT NULL COMMENT '更新时间',

  PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=30 DEFAULT CHARSET=utf8;

CREATE TABLE `mmall_category` (

  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '类别Id',

  `parent_id` int(11) DEFAULT NULL COMMENT '父类别id当id=0时说明是根节点,一级类别',

  `name` varchar(50) DEFAULT NULL COMMENT '类别名称',

  `status` tinyint(1) DEFAULT '1' COMMENT '类别状态1-正常,2-已废弃',

  `sort_order` int(4) DEFAULT NULL COMMENT '排序编号,同类展示顺序,数值相等则自然排序',

  `create_time` datetime DEFAULT NULL COMMENT '创建时间',

  `update_time` datetime DEFAULT NULL COMMENT '更新时间',

  PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=100031 DEFAULT CHARSET=utf8;

CREATE TABLE `mmall_order` (

  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '订单id',

  `order_no` bigint(20) DEFAULT NULL COMMENT '订单号',

  `user_id` int(11) DEFAULT NULL COMMENT '用户id',

  `shipping_id` int(11) DEFAULT NULL,

  `payment` decimal(20,2) DEFAULT NULL COMMENT '实际付款金额,单位是元,保留两位小数',

  `payment_type` int(4) DEFAULT NULL COMMENT '支付类型,1-在线支付',

  `postage` int(10) DEFAULT NULL COMMENT '运费,单位是元',

  `status` int(10) DEFAULT NULL COMMENT '订单状态:0-已取消-10-未付款,20-已付款,40-已发货,50-交易成功,60-交易关闭',

  `payment_time` datetime DEFAULT NULL COMMENT '支付时间',

  `send_time` datetime DEFAULT NULL COMMENT '发货时间',

  `end_time` datetime DEFAULT NULL COMMENT '交易完成时间',

  `close_time` datetime DEFAULT NULL COMMENT '交易关闭时间',

  `create_time` datetime DEFAULT NULL COMMENT '创建时间',

  `update_time` datetime DEFAULT NULL COMMENT '更新时间',

  PRIMARY KEY (`id`),

  UNIQUE KEY `order_no_index` (`order_no`) USING BTREE

) ENGINE=InnoDB AUTO_INCREMENT=118 DEFAULT CHARSET=utf8;

CREATE TABLE `mmall_order_item` (

  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '订单子表id',

  `user_id` int(11) DEFAULT NULL,

  `order_no` bigint(20) DEFAULT NULL,

  `proct_id` int(11) DEFAULT NULL COMMENT '商品id',

  `proct_name` varchar(100) DEFAULT NULL COMMENT '商品名称',

  `proct_image` varchar(500) DEFAULT NULL COMMENT '商品图片地址',

  `current_unit_price` decimal(20,2) DEFAULT NULL COMMENT '生成订单时的商品单价,单位是元,保留两位小数',

  `quantity` int(10) DEFAULT NULL COMMENT '商品数量',

  `total_price` decimal(20,2) DEFAULT NULL COMMENT '商品总价,单位是元,保留两位小数',

  `create_time` datetime DEFAULT NULL,

  `update_time` datetime DEFAULT NULL,

  PRIMARY KEY (`id`),

  KEY `order_no_index` (`order_no`) USING BTREE,

  KEY `order_no_user_id_index` (`user_id`,`order_no`) USING BTREE

) ENGINE=InnoDB AUTO_INCREMENT=135 DEFAULT CHARSET=utf8;

CREATE TABLE `mmall_cart` (

  `id` int(11) NOT NULL AUTO_INCREMENT,

  `user_id` int(11) NOT NULL,

  `proct_id` int(11) DEFAULT NULL COMMENT '商品id',

  `quantity` int(11) DEFAULT NULL COMMENT '数量',

  `checked` int(11) DEFAULT NULL COMMENT '是否选择,1=已勾选,0=未勾选',

  `create_time` datetime DEFAULT NULL COMMENT '创建时间',

  `update_time` datetime DEFAULT NULL COMMENT '更新时间',

  PRIMARY KEY (`id`),

  KEY `user_id_index` (`user_id`) USING BTREE

) ENGINE=InnoDB AUTO_INCREMENT=127 DEFAULT CHARSET=utf8;

CREATE TABLE `mmall_pay_info` (

  `id` int(11) NOT NULL AUTO_INCREMENT,

  `user_id` int(11) DEFAULT NULL COMMENT '用户id',

  `order_no` bigint(20) DEFAULT NULL COMMENT '订单号',

  `pay_platform` int(10) DEFAULT NULL COMMENT '支付平台:1-支付宝,2-微信',

  `platform_number` varchar(200) DEFAULT NULL COMMENT '支付宝支付流水号',

  `platform_status` varchar(20) DEFAULT NULL COMMENT '支付宝支付状态',

  `create_time` datetime DEFAULT NULL COMMENT '创建时间',

  `update_time` datetime DEFAULT NULL COMMENT '更新时间',

  PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=61 DEFAULT CHARSET=utf8;

CREATE TABLE `mmall_shipping` (

  `id` int(11) NOT NULL AUTO_INCREMENT,

  `user_id` int(11) DEFAULT NULL COMMENT '用户id',

  `receiver_name` varchar(20) DEFAULT NULL COMMENT '收货姓名',

  `receiver_phone` varchar(20) DEFAULT NULL COMMENT '收货固定电话',

  `receiver_mobile` varchar(20) DEFAULT NULL COMMENT '收货移动电话',

  `receiver_province` varchar(20) DEFAULT NULL COMMENT '省份',

  `receiver_city` varchar(20) DEFAULT NULL COMMENT '城市',

  `receiver_district` varchar(20) DEFAULT NULL COMMENT '区/县',

  `receiver_address` varchar(200) DEFAULT NULL COMMENT '详细地址',

  `receiver_zip` varchar(6) DEFAULT NULL COMMENT '邮编',

  `create_time` datetime DEFAULT NULL,

  `update_time` datetime DEFAULT NULL,

  PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=30 DEFAULT CHARSET=utf8;

GitHub 地址:https://github.com/Andy-leoo/NewBieJavaPro.git

D. 数据库表的设计

你的sale表存放的应该是仓库中未出售的商品吧?shop表中存放的应该是正在出售的商品信息么?用户信息表是为了存放谁买了什么东西的么?还是其他功能?各个部分的功能最好能够详细点,不然设计起来是很难的。
如果是这样的话,你的sale表中可以有“商品ID,商品名称,商品库存数量”等等字段,shop表中可以有“商品ID,商品名称,商品售价”,user表中可以有“用户ID,用户姓名,购买商品”等信息

E. java 中一个页面对应的数据库<最好是pl/sql>详细设计要写多少本

这种的不好说,遵循你的项目组文档规范吧
一般来说,要画页面原型、说明操作逻辑,数据存取逻辑,代码设计逻辑
找一个你的项目组以前的设计文档看看照着写就行了

F. 数据库设计 --商品属性动态显示

第一步,我先从简单的调用出发,定义了一个简单的函数,该函数仅仅实现一个整数加法求和:

LIBEXPORT_API int mySum(int a,int b){ return a+b;}
C# 导入定义:

public class RefComm
{
[DllImport("LibEncrypt.dll",
EntryPoint=" mySum ",
CharSet=CharSet.Auto,CallingConvention=CallingConvention.StdCall)]
public static extern int mySum (int a,int b);
}
在C#中调用测试:

int iSum = RefComm.mySum(,);

运行查看结果iSum为5,调用正确。第一步试验完成,说明在C#中能够调用自定义的动态链接库函数。

第二步,我定义了字符串操作的函数(简单起见,还是采用前面的函数名),返回结果为字符串:

LIBEXPORT_API char *mySum(char *a,char *b){sprintf(b,"%s",a); return a;}
C# 导入定义:

public class RefComm
{
[DllImport("LibEncrypt.dll",
EntryPoint=" mySum ",
CharSet=CharSet.Auto,
CallingConvention=CallingConvention.StdCall)]
public static extern string mySum (string a, string b);
}
在C#中调用测试:

string strDest="";
string strTmp= RefComm.mySum("45", strDest);

运行查看结果 strTmp 为"45",但是strDest为空。我修改动态链接库实现,返回结果为串b:

LIBEXPORT_API char *mySum(char *a,char *b){sprintf(b,"%s",a) return b;}
修改 C# 导入定义,将串b修改为ref方式:

public class RefComm
{
[DllImport("LibEncrypt.dll",
EntryPoint=" mySum ",
CharSet=CharSet.Auto,CallingConvention=CallingConvention.StdCall)]
public static extern string mySum (string a, ref string b);
}
在C#中再调用测试:

string strDest="";
string strTmp= RefComm.mySum("45", ref strDest);
运行查看结果 strTmp 和 strDest 均不对,含不可见字符。再修改 C# 导入定义,将CharSet从Auto修改为Ansi:

public class RefComm
{
[DllImport("LibEncrypt.dll",
EntryPoint=" mySum ",
CharSet=CharSet.Ansi,CallingConvention=CallingConvention.StdCall)]
public static extern string mySum (string a, string b);
}
在C#中再调用测试:

string strDest="";
string strTmp= RefComm. mySum("45", ref strDest);
运行查看结果 strTmp 为"45",但是串 strDest 没有赋值。第二步实现函数返回串,但是在函数出口参数中没能进行输出。再次修改 C# 导入定义,将串b修改为引用(ref):

public class RefComm
{
[DllImport("LibEncrypt.dll",
EntryPoint=" mySum ",
CharSet=CharSet.Ansi,CallingConvention=CallingConvention.StdCall)]
public static extern string mySum (string a, ref string b);
}

运行时调用失败,不能继续执行。

第三步,修改动态链接库实现,将b修改为双重指针:

LIBEXPORT_API char *mySum(char *a,char **b){sprintf((*b),"%s",a); return *b;}
C#导入定义:

public class RefComm
{
[DllImport("LibEncrypt.dll",
EntryPoint=" mySum ",
CharSet=CharSet.Ansi,CallingConvention=CallingConvention.StdCall)]
public static extern string mySum (string a, ref string b);
}
在C#中调用测试:

string strDest="";
string strTmp= RefComm. mySum("45", ref strDest);

运行查看结果 strTmp 和 strDest 均为"45",调用正确。第三步实现了函数出口参数正确输出结果。

第四步,修改动态链接库实现,实现整数参数的输出:

LIBEXPORT_API int mySum(int a,int b,int *c){ *c=a+b; return *c;}
C#导入的定义:

public class RefComm
{
[DllImport("LibEncrypt.dll",
EntryPoint=" mySum ",
CharSet=CharSet.Ansi,CallingConvention=CallingConvention.StdCall)]
public static extern int mySum (int a, int b,ref int c);
}
在C#中调用测试:

int c=0;
int iSum= RefComm. mySum(,, ref c);

运行查看结果iSum 和c均为5,调用正确。

经过以上几个步骤的试验,基本掌握了如何定义动态库函数以及如何在 C# 定义导入,有此基础,很快我实现了变长加密函数在 C# 中的调用,至此目标实现。

三、结论

在 C# 中调用 C++ 编写的动态链接库函数,如果需要出口参数输出,则需要使用指针,对于字符串,则需要使用双重指针,对于 C# 的导入定义,则需要使用引用(ref)定义。

对于函数返回值,C# 导入定义和 C++ 动态库函数声明定义需要保持一致,否则会出现函数调用失败。定义导入时,一定注意 CharSet 和 CallingConvention 参数,否则导致调用失败或结果异常。运行时,动态链接库放在 C# 程序的目录下即可,我这里是一个 C# 的动态链接库,两个动态链接库就在同一个目录下运行。

G. 数据库设计,一张订单里有多种商品,种类数目都不定,怎么设计这两个表啊

照您这句话来说呢,有以下几个实体集:订单,商品,商品种类以及订单详情记录。
其中一个订单包括多种商品,每种商品有所属的种类和数量,而这些信息都被记录在订单详情记录表中。订单表和订单详情记录表通过订单编号连接起来。至于各个表的属性还要看您的具体需求来定。

H. 某公司欲设计一个数据库以存储客户,商品和订货单的信息。每个客户包含客户代码(唯一),姓名,收货地址

将表分为两类

(1)基础信息表,包含:

客户信息表、商品信息表

(2)关联信息表,包含:

订单信息表、订单详情表、收货地址表

其中:

一条客户信息,可以对应多条收货地址;

一条客户信息,可以对应多条订单信息;

一条订单信息,可以对应多条订单详情信息;

一条商品信息,可以对应多条订单详情信息;

表关系见下图:

I. jsp 如何在点击商品ID查商品详细信息前查询数据库,要思路

应该在proctList.jap中最后有一个查看或者编辑超链接,这个超链接就是调用java的servlet程序,然后访问数据库查询,然后再传到proctDetail.jsp中显示

J. 阿里如何制作数据包

对于阿里数据包也就是通过在店铺后台编辑的商品信息包,一般在两种情况下回使用到数据包制作工具:第一个,商品数量过多;第二个,新手。以下的操作步骤是关于甩手工具箱如何制作阿里数据包的过程:
第1步:选择抓取商品的使用方式,有3种抓取商品方式:
A、您可以在下面的文本框中输入待抓取商品的关键字,然后单击该文本框下面的按钮。示例:连衣裙。
B、您也可以 在下面的输入框中输入所有支持平台的店铺或商品地址,然后单击该文本框右方按钮抓取。
C、您也可以单击下面的按钮进行批量抓取:①批量抓取 ②导入抓取地址 ③整店抓取
用户可以根据自己的需求来选择适合自己的抓取方式。
第2步:选择抓取商品。如显示抓取到的宝贝,则成功抓取,然后点击“下一步”。
第3步:转换商品详情。查看商品详情是否转换正确,如出现属性没有转化正确,可以根据提示批量编辑宝贝的属性,然后点击“下一步”。
第4步:导出数据包。请选择导出数据包位置、导出文件类型及商品描述图片处理方式,再点击“导出”按钮。