how2j.cn


4分42秒
本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器。 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)。 chrome 的 视频下载插件会影响播放,如 IDM 等,请关闭或者切换其他浏览器

步骤 1 : 首先创建数据库   
步骤 2 : 确定需要哪些表   
步骤 3 : 配置信息表 config   
步骤 4 : 消费分类表 category   
步骤 5 : 消费记录表 record   

步骤 1 :

首先创建数据库

edit
完整的J2SE桌面项目,从无到有完整的开发流程,涵盖全部52个知识点,154个开发步骤, 一共36个讲解视频,累计时长3小时10分59秒,大小1.94G,充实J2SE项目经验,为简历加上一个有吸引力的砝码
增值内容,点击购买
数据库名定为hutubill,在程序中的JDBC相关代码,都需要连接这个数据库名 hutubill
create database hutubill; use hutubill;
create database hutubill;
use hutubill;
步骤 2 :

确定需要哪些表

edit
完整的J2SE桌面项目,从无到有完整的开发流程,涵盖全部52个知识点,154个开发步骤, 一共36个讲解视频,累计时长3小时10分59秒,大小1.94G,充实J2SE项目经验,为简历加上一个有吸引力的砝码
增值内容,点击购买
根据业务上的需要,一共要3个表
1. 配置表信息 config
用于保存每月预算和Mysql的安装路径( 用于备份还原用)
2. 消费分类表 category
用于保存消费分类,比如餐饮,交通,住宿
3. 消费记录表 record
用于存放每一笔的消费记录,并且会用到消费分类
步骤 3 :

配置信息表 config

edit
完整的J2SE桌面项目,从无到有完整的开发流程,涵盖全部52个知识点,154个开发步骤, 一共36个讲解视频,累计时长3小时10分59秒,大小1.94G,充实J2SE项目经验,为简历加上一个有吸引力的砝码
增值内容,点击购买
配置信息表 config有如下字段
id 主键,每个表都有一个主键 类型是 int
key_ 配置信息按照键值对的形式出现 ,类型是varchar(255)
value配置信息的值, 类型是 varchar(255)

注:
1. 键值对
进一步解释一下键值对,比如要存放每个月的预算,则需要在config表中增加一条记录,key="budget" value="500",就表示预算是500.

2. varchar(255) 表示变长字符,如果实际存放只有30个字符,那么在数据库中只占用30的空间,最多占用255

3. key 是关键字,不适合用于作为字段名,所以在key后面加了一个下划线 key_ 就不会有任何问题了,识别性一样很好,一眼就知道这个字段是干什么用的

4. ENGINE=InnoDB MySQL有多种存储引擎,MyISAM和InnoDB是其中常用的两种, 他们之间的区别很多,如果要展开讲,就需要专门的章节了。 这里使用ENGINE=InnoDB 是因为后续要使用的外键约束只有在InnoDB中才生效。

5. DEFAULT CHARSET=utf8; 表示该表按照UTF-8的编码存放中文
CREATE TABLE config ( id int , key_ varchar(255) , value varchar(255) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE config (
  id int ,
  key_ varchar(255) ,
  value varchar(255) 
)  ENGINE=InnoDB  DEFAULT CHARSET=utf8;
步骤 4 :

消费分类表 category

edit
完整的J2SE桌面项目,从无到有完整的开发流程,涵盖全部52个知识点,154个开发步骤, 一共36个讲解视频,累计时长3小时10分59秒,大小1.94G,充实J2SE项目经验,为简历加上一个有吸引力的砝码
增值内容,点击购买
消费分类表 category 有如下字段
id 主键,每个表都有一个主键 类型是 int
name分类的名称,类型是varchar(255)
CREATE TABLE category ( id int, name varchar(255) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE category (
  id int,
  name varchar(255) 
)   ENGINE=InnoDB DEFAULT CHARSET=utf8;
步骤 5 :

消费记录表 record

edit
完整的J2SE桌面项目,从无到有完整的开发流程,涵盖全部52个知识点,154个开发步骤, 一共36个讲解视频,累计时长3小时10分59秒,大小1.94G,充实J2SE项目经验,为简历加上一个有吸引力的砝码
增值内容,点击购买
消费记录表 record 有如下字段:
id 主键,每个表都有一个主键 类型是 int
spend 本次花费,类型是int
cid 对应的消费分类表的中记录的id, 类型是int
comment 备注,比如分类是娱乐,但是你希望记录更详细的内容,啪啪啪,那么就存放在这里。
date 日期,本次记录发生的时间。
CREATE TABLE record ( id int, spend int, cid int, comment varchar(255) , date Date ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE record (
  id int,
  spend int,
  cid int,
  comment varchar(255) ,
  date Date
)   ENGINE=InnoDB DEFAULT CHARSET=utf8;


HOW2J公众号,关注后实时获知最新的教程和优惠活动,谢谢。


问答区域    
2021-10-31 明明没有hutubill这个数据库,为什么会弹出“该表已经存在”错误。这个错误怎么处理?
woa115205




明明没有hutubill这个数据库,为什么会弹出“该表已经存在”错误。这个错误怎么处理?
加载中
create database hutubill;
use hutubill;

							


2 个答案

洗澡澡嘿嘿嘿
答案时间:2023-01-08
少了这一行代码呗
drop database if exists hutubill;

how2j
答案时间:2021-11-02
。。。那就说明确实已经存在了。。。 重新登陆一下 mysql-front 就可以看到这个数据库已经创建成功了。



回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到





2021-06-18 外键约束
lzs19952005

为什么cid是category的外键 不是config表的外键呢 两张表都是c字母开头的呀 并且类型都一样 都是int 类型




1 个答案

how2j
答案时间:2021-06-20
config 和其他表没有关系啊



回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到




2021-05-31 mysql下载后在哪里点击运行啊
2021-04-24 为什么key_ varchar(255),不带下划线会出现错误
2020-12-01 设置主键


提问太多,页面渲染太慢,为了加快渲染速度,本页最多只显示几条提问。还有 14 条以前的提问,请 点击查看

提问之前请登陆
提问已经提交成功,正在审核。 请于 我的提问 处查看提问记录,谢谢
关于 实践项目-一本糊涂账-数据库与表 的提问

尽量提供截图代码异常信息,有助于分析和解决问题。 也可进本站QQ群交流: 578362961
提问尽量提供完整的代码,环境描述,越是有利于问题的重现,您的问题越能更快得到解答。
对教程中代码有疑问,请提供是哪个步骤,哪一行有疑问,这样便于快速定位问题,提高问题得到解答的速度
在已经存在的几千个提问里,有相当大的比例,是因为使用了和站长不同版本的开发环境导致的,比如 jdk, eclpise, idea, mysql,tomcat 等等软件的版本不一致。
请使用和站长一样的版本,可以节约自己大量的学习时间。 站长把教学中用的软件版本整理了,都统一放在了这里, 方便大家下载: https://how2j.cn/k/helloworld/helloworld-version/1718.html

上传截图