【2023】Kotlin教程 第四篇 项目实战 第25章 项目实战1:开发PetStore宠物商店项目 25.2 任务1:创建数据库
【2023】Kotlin教程 第四篇 项目实战 第25章项目实战1:开发PetStore宠物商店项目 25.2 任务1:创建数据库
·
【2023】Kotlin教程
文章目录
第四篇 项目实战
第25章 项目实战1:开发PetStore宠物商店项目
25.2 任务1:创建数据库
在设计完成之后,在编写Kotlin代码之前,应该创建数据库。
25.2.1 迭代1.1:安装和配置MySQL数据库
这里笔者也不演示了,贴上以前的博客:
https://dingjiaxiong.blog.csdn.net/article/details/128886805
准备好MySQL。
25.2.2 迭代1.2:编写数据库DDL脚本
按照之前的数据库设计模型编写数据库DDL脚本。当然,也可以通过一些工具生成DDL脚本,然后把这个脚本放在数据库中执行就可以了。下面是编写的DDL脚本:
/* 创建数据库 */
CREATE DATABASE IF NOT EXISTS petstore;
use petstore;
/* 用户表 */
CREATE TABLE IF NOT EXISTS accounts (
userid varchar(80) not null, /* 用户Id */
password varchar(25) not null, /* 用户密码 */
email varchar(80) not null, /* 用户Email */
name varchar(80) not null, /* 用户名 */
addr varchar(80) not null, /* 地址 */
city varchar(80) not null, /* 所在城市 */
country varchar(20) not null, /* 国家 */
phone varchar(80) not null, /* 电话号码 */
PRIMARY KEY (userid));
/* 商品表 */
CREATE TABLE IF NOT EXISTS products (
productid varchar(10) not null, /* 商品Id */
category varchar(10) not null, /* 商品类别 */
cname varchar(80) null, /* 商品中文名 */
ename varchar(80) null, /* 商品英文名 */
image varchar(20) null, /* 商品图片 */
descn varchar(255) null, /* 商品描述 */
listprice decimal(10,2) null, /* 商品市场价 */
unitcost decimal(10,2) null, /* 商品单价 */
PRIMARY KEY (productid));
/* 订单表 */
CREATE TABLE IF NOT EXISTS orders (
orderid bigint not null, /* 订单Id */
userid varchar(80) not null, /* 下订单的用户Id */
orderdate bigint not null, /* 下订单时间 */
status int not null default 0, /* 订单付款状态 0待付款 1已付款 */
amount decimal(10,2) not null, /* 订单应付金额 */
PRIMARY KEY (orderid));
/* 订单明细表 */
CREATE TABLE IF NOT EXISTS orderdetails (
orderid bigint not null, /* 订单Id */
productid varchar(10) not null, /* 商品Id */
quantity int not null, /* 商品数量 */
unitcost decimal(10,2) null, /* 商品单价 */
PRIMARY KEY (orderid, productid));
25.2.3 迭代1.3:插入初始数据到数据库
PetStore宠物商店项目有一些初始的数据,这些初始数据在创建数据库之后插入。这些插入数据的语句如下:
use petstore;
/* 用户表数据 */
INSERT INTO accounts VALUES('j2ee','j2ee','yourname@yourdomain.com','DingJiaxiong', '北京海淀区', '北京', '中国', '18811588888');
INSERT INTO accounts VALUES('ACID','ACID','acid@yourdomain.com','Tony', '901 San Antonio Road', 'Palo Alto', 'USA', '555-555-5555');
/* 商品表数据 */
INSERT INTO products VALUES ('FI-SW-01','鱼类','神仙鱼', 'Angelfish', 'fish1.jpg', '来自澳大利亚的咸水鱼', 650, 400);
INSERT INTO products VALUES ('FI-SW-02','鱼类','虎鲨', 'Tiger Shark','fish4.gif', '来自澳大利亚的咸水鱼', 850, 600);
INSERT INTO products VALUES ('FI-FW-01','鱼类','锦鲤', 'Koi','fish3.gif', '来自日本淡水鱼', 150, 120);
INSERT INTO products VALUES ('FI-FW-02','鱼类','金鱼', 'Goldfish','fish2.gif', '来自中国的淡水鱼', 150, 120);
INSERT INTO products VALUES ('K9-BD-01','狗类','斗牛犬', 'Bulldog','dog2.gif', '来自英国友好的伴侣犬', 1500, 1200);
INSERT INTO products VALUES ('K9-PO-02','狗类','狮子狗', 'Poodle','dog6.gif', '来自法国可爱狗狗', 1250, 1000);
INSERT INTO products VALUES ('K9-DL-01','狗类','斑点狗', 'Dalmation','dog5.gif', '有很多斑点的狗狗', 2150, 2000);
INSERT INTO products VALUES ('K9-RT-01','狗类', '金毛猎犬', 'Golden Retriever','dog1.gif', '很好的伴侣犬', 3800, 3400);
INSERT INTO products VALUES ('K9-RT-02','狗类', '拉布拉多犬','Labrador Retriever','dog5.gif', '很好的狩猎犬', 3600, 3020);
INSERT INTO products VALUES ('K9-CW-01','狗类', '吉娃娃', 'Chihuahua','dog4.gif', '性格温顺的狗狗', 1500, 120);
INSERT INTO products VALUES ('RP-SN-01','爬行类','响尾蛇', 'Rattlesnake','lizard3.gif','可怕且危险的动物', 150, 110);
INSERT INTO products VALUES ('RP-LI-02','爬行类','鬣蜥蜴', 'Iguana','lizard2.gif', '可随环境及光线强弱改变体色', 1600, 1203);
INSERT INTO products VALUES ('FL-DSH-01','猫类','马恩岛猫', 'Manx','cat3.gif', '它能有效地减少老鼠的数量很有好处', 2503, 2120);
INSERT INTO products VALUES ('FL-DLH-02','猫类','波斯', 'Persian','cat1.gif', '非常好的家猫', 3150, 2620);
INSERT INTO products VALUES ('AV-CB-01','鸟类','亚马逊鹦鹉', 'Amazon Parrot','bird4.gif', '寿命长达75年的大鸟', 3150, 3000);
INSERT INTO products VALUES ('AV-SB-02','鸟类','雀科鸣鸟', 'Finch','bird1.gif', '会唱歌的鸟儿', 150, 110);
OK, 数据准备完毕。
更多推荐
已为社区贡献1条内容
所有评论(0)