DBS-Tally book(记账本)
| ylbtech-dbs:DBS-Tally book(记账本) |
-- =============================================
-- 记账本
-- 模仿小程序“记账e”业务流程
-- 13:17 2017/3/15
-- author:yb,gyg
-- =============================================
| 1,数据库关系图(Database Diagram) 返回顶部 |
| 2,数据库设计脚本(Database Design Script)返回顶部 |
V-2.2,
-- =============================================
-- 记账本
-- 模仿小程序“记账e”业务流程
-- 13:17 2017/3/15
-- author:yb,gyg
-- =============================================
USE master
GO -- Drop the database if it already exists
IF EXISTS (
SELECT name
FROM sys.databases
WHERE name = N'SB_TallyBook'
)
DROP DATABASE SB_TallyBook
GO CREATE DATABASE SB_TallyBook
GO
use SB_TallyBook GO
-- =============================================
-- 科目表
-- =============================================
create table [Subject]
(
subjectId uniqueidentifier primary key,--编号【UI、PK】
subjectCode varchar(50),--科目代码
subjectName varchar(50),--分类名称
subjectType bit,--类别:0=收入-来源;1=支付-用途
flagDisabled bit --是否排除
) GO
-- =============================================
-- 账单表
-- =============================================
create table Bill
(
billId uniqueidentifier primary key,--编号【UI、PK】
subjectCode varchar(50),--科目代码
amount money,--金额
payWay varchar(50),--支付方式
remark varchar(200),--备注
pubdate datetime, --日期
accountId uniqueidentifier,--账户ID【UI、UQ】
flagDisabled bit --是否排除
) GO
-- =============================================
-- 测试数据
-- ============================================= -- 收入科目
insert [Subject](subjectId,subjectCode,subjectName,subjectType,flagDisabled)
values(NEWID(),'','收入',0,0)
insert [Subject](subjectId,subjectCode,subjectName,subjectType,flagDisabled)
values(NEWID(),'','工资薪水',0,0) GO
-- 支出科目
insert [Subject](subjectId,subjectCode,subjectName,subjectType,flagDisabled)
values(NEWID(),'','食',1,0)
insert [Subject](subjectId,subjectCode,subjectName,subjectType,flagDisabled)
values(NEWID(),'','早餐',1,0)
insert [Subject](subjectId,subjectCode,subjectName,subjectType,flagDisabled)
values(NEWID(),'','午餐',1,0)
insert [Subject](subjectId,subjectCode,subjectName,subjectType,flagDisabled)
values(NEWID(),'','晚餐',1,0) GO
-- =============================================
-- 操作
-- ============================================= go
-- 1、记一笔
-- 1.1、记一笔收入
insert Bill(billId,amount,subjectCode,payWay,remark,pubdate
,accountId,flagDisabled)
values(NEWID(),0,10000,'','储蓄卡','2月分工资'
,'2017-3-10',NEWID(),0)
-- 1.2、记一笔支出
insert Bill(billId,amount,subjectCode,payWay,remark,pubdate
,accountId,flagDisabled)
values(NEWID(),0,200,'','现金','请客户吃饭'
,'2017-3-17',NEWID(),0) -- 2、账单
-- 2.1、账单-分时
-- 2.1.1、?如果按日期分组,例如:2017-3;2017-2
-- 2.1.2、
select b.billId,b.billType,b.amount,b.subjectCode,b.payWay
,b.remark,b.pubdate,b.flagDisabled,s.subjectType,s.subjectName from Bill b inner join [Subject] s on b.subjectCode=s.subjectCode
where b.accountId='' and b.pubdate=''
-- 2.2、账单-分类
-- 2.2.1、
select b.subjectCode,COUNT(*)'cnt' from Bill b
group by b.subjectCode
having b.accountId=''
-- 2.2.2、
select b.billId,b.billType,b.amount,b.subjectCode,b.payWay
,b.remark,b.pubdate,b.flagDisabled,s.subjectType,s.subjectName from Bill b inner join [Subject] s on b.subjectCode=s.subjectCode
where b.accountId='' and b.subjectCode=''
V-2.1,
-- =============================================
-- 记账本
-- 模仿小程序“记账e”业务流程
-- 13:17 2017/3/15
-- author:yb,gyg
-- =============================================
USE master
GO -- Drop the database if it already exists
IF EXISTS (
SELECT name
FROM sys.databases
WHERE name = N'SB_TallyBook'
)
DROP DATABASE SB_TallyBook
GO CREATE DATABASE SB_TallyBook
GO
use SB_TallyBook
GO
-- =============================================
-- 科目表
-- =============================================
create table [Subject]
(
subjectId uniqueidentifier primary key,--编号【UI、PK】
subjectCode varchar(50),--科目代码
subjectName varchar(50),--分类名称
subjectType bit,--类别:0=收入-来源;1=支付-用途
flagDisabled bit --是否排除
) GO
-- =============================================
-- 账单表
-- =============================================
create table Bill
(
billId uniqueidentifier primary key,--编号【UI、PK】
billType bit,--类别:0=收入;1=支付
amount money,--金额
subjectCode varchar(50),--科目代码
payWay varchar(50),--支付方式
remark varchar(200),--备注
pubdate datetime, --日期
accountId uniqueidentifier,--账户ID【UI、UQ】
flagDisabled bit --是否排除
)
GO GO
-- =============================================
-- 测试数据
-- ============================================= -- 收入科目
insert [Subject](subjectId,subjectCode,subjectName,subjectType,flagDisabled)
values(NEWID(),'','收入',0,0)
insert [Subject](subjectId,subjectCode,subjectName,subjectType,flagDisabled)
values(NEWID(),'','工资薪水',0,0) GO
-- 支出科目
insert [Subject](subjectId,subjectCode,subjectName,subjectType,flagDisabled)
values(NEWID(),'','食',1,0)
insert [Subject](subjectId,subjectCode,subjectName,subjectType,flagDisabled)
values(NEWID(),'','早餐',1,0)
insert [Subject](subjectId,subjectCode,subjectName,subjectType,flagDisabled)
values(NEWID(),'','午餐',1,0)
insert [Subject](subjectId,subjectCode,subjectName,subjectType,flagDisabled)
values(NEWID(),'','晚餐',1,0) GO
-- =============================================
-- 操作
-- ============================================= go
-- 1、记一笔
-- 1.1、记一笔收入
insert Bill(billId,billType,amount,subjectCode,payWay,remark
,pubdate,accountId,flagDisabled)
values(NEWID(),0,10000,'','储蓄卡','2月分工资'
,'2017-3-10',NEWID(),0)
-- 1.2、记一笔支出
insert Bill(billId,billType,amount,subjectCode,payWay,remark
,pubdate,accountId,flagDisabled)
values(NEWID(),0,200,'','现金','请客户吃饭'
,'2017-3-17',NEWID(),0) -- 2、账单
-- 2.1、账单-分时
-- 2.1.1、?如果按日期分组,例如:2017-3;2017-2
-- 2.1.2、
select b.billId,b.billType,b.amount,b.subjectCode,b.payWay
,b.remark,b.pubdate,b.flagDisabled,s.subjectType,s.subjectName from Bill b inner join [Subject] s on b.subjectCode=s.subjectCode
where b.accountId='' and b.pubdate=''
-- 2.2、账单-分类
-- 2.2.1、
select b.subjectCode,COUNT(*)'cnt' from Bill b
group by b.subjectCode
having b.accountId=''
-- 2.2.2、
select b.billId,b.billType,b.amount,b.subjectCode,b.payWay
,b.remark,b.pubdate,b.flagDisabled,s.subjectType,s.subjectName from Bill b inner join [Subject] s on b.subjectCode=s.subjectCode
where b.accountId='' and b.subjectCode=''
2.0,
| 3,功能实现代码(Function Implementation Code)返回顶部 |
![]() |
作者:ylbtech 出处:http://ylbtech.cnblogs.com/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 |
DBS-Tally book(记账本)的更多相关文章
- iOS开发实战-时光记账Demo 本地数据库版
现在记账APP也是用途比较广泛 自己写了个简单的demo 欢迎指正 效果 分析 1.思维推导 首先简单的做了下思维推导 2.文件结构 大致框架想好后就可以着手开始准备了 数据库管理:coreData ...
- android软件简约记账app开发day09-主页面模块,收支记账信息的展示
android软件简约记账app开发day09-主页面模块,收支记账信息的展示 我们第一天已经绘制了记账条目的界面,也在主界面设置了LietView来展示记账条目,今天来实现记账后再主界面的展示效果 ...
- android软件简约记账app开发day08-时间对话框的书写+改bug,改bug
android软件简约记账app开发day08-时间对话框的书写+改bug,改bug 绘制对话跨页面 在添加记账信息功能中,我提供了用户添加备注添加事件的功能,设计是点击时间会弹出一个时间对话框供用户 ...
- android软件简约记账app开发day07-备注界面完善
android软件简约记账app开发day07-备注界面完善 ## 昨天我们已经绘制了备注页面,今天来用Java代码组装完善一下. 首先我们新建BeiZhuDialog类关联备注页面,并且实现点击接口 ...
- android软件简约记账app开发day05-记账页面条目代码优化和bug解决
android软件简约记账app开发day05-记账页面条目代码优化和bug解决 今天还是因为该bug又极大的耽误了项目进程,该开发文档都要没有时间来写了. 先说bug吧,在昨天已经实现了页面图标的展 ...
- android软件简约记账app开发day04-记账页面条目的代码书写
android软件简约记账app开发day04-记账页面条目的代码书写 在前三天我们完成了基本的界面展示,从今天开始,我们进入到后台逻辑代码的编写中,今天开发记账条目的代码 我们在主页面点击记一笔图标 ...
- android软件简约记账app开发day03-自定义键盘的书写
android软件简约记账app开发day03-自定义键盘的书写 我们在fragment界面使用了自定义的keybroad键盘,所以今天我们来书写自定义的键盘代码 新建util包,新建keyboard ...
- 记账类APP竞品分析-挖财与随手记
注:本文更新中. 一.概览 1. 产品名称及版本 l 挖财11.2.0.0 免费版(2016/9/6发布) l 随手记10.2.8免费版(2016/8/22发布) 2. 设备信息 设备型号:i ...
- Vue2.0 + Element-UI + WebAPI实践:简易个人记账系统
最近正在学习Vue2.0相关知识,正好近期饿了么桌面端组件Element-UI发布,便动手做了一款简易个人记账系统,以达到实践及巩固目的. 1.开发环境 Win10 + VS2015 + Sqlser ...
- “耐撕”团队记账本 剧透
β发布之后,我们团队开始fork"OneZero"团队的记账本程序.我们在原来的基础上添加了以下功能: 下面是我们团队记账本程序演示的视频:http://v.youku.com/v ...
随机推荐
- 大数据技术之_16_Scala学习_01_Scala 语言概述
第一章 Scala 语言概述1.1 why is Scala 语言?1.2 Scala 语言诞生小故事1.3 Scala 和 Java 以及 jvm 的关系分析图1.4 Scala 语言的特点1.5 ...
- BZOJ.3143.[HNOI2013]游走(概率 期望 高斯消元)
题目链接 参考 远航之曲 把走每条边的概率乘上分配的标号就是它的期望,所以我们肯定是把大的编号分配给走的概率最低的边. 我们只要计算出经过所有点的概率,就可以得出经过一条边(\(u->v\))的 ...
- 使用Google-Colab训练PyTorch神经网络
Colaboratory 是免费的 Jupyter 笔记本环境,不需要进行任何设置就可以使用,并且完全在云端运行.关键是还有免费的GPU可以使用!用Colab训练PyTorch神经网络步骤如下: 1: ...
- centos7安装rvm
导入钥匙$ gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 若是提示 ...
- 阻止新的csproj工程的dll引用继承
VisualStudio传统的csproj工程中,引用是没有继承功能的.例如,对于如下一个引用关系 App引用Assembly 1 Assembly 1引用Assembly 2 程序App在没有添加A ...
- 使用CefSharp在.Net程序中嵌入Chrome浏览器(四)——启动优化
在实际使用过程中,发现有的客户端会出现chrome加载网页过慢问题,定位后发现很多是因为设置系统代理所致,此时可以通过如下启动参数禁止系统代理. {"proxy-auto-detect&qu ...
- D3D9 effect (hlsl)(转)
转:http://blog.csdn.net/leonwei/article/details/8212800 effect其实整合了shader和render state的控制两大部分内容 9.1 ...
- 推荐一个文献翻译软件--Deja Vu X
首先我的这篇博客推荐的软件并非你觉得翻译精确度有多高的软件,假设是这种话就不用往下看了,免得浪费时间,仅仅是一个对于翻译文献非常方便的工具,方面在哪请看下文. 我是不会告诉你凡事用过这个软件的人都说好 ...
- react-router 从 v2/v3 to v4 迁移(翻译)
react-router v4 是完全重写的,所以没有简单的迁移方式,这份指南将为您提供一些步骤,以帮助您了解如何升级应用程序. 注意: 这份迁移指南适用于react-router v2和v3,但为简 ...
- 用C扩展Python2
参考 python扩展实现方法--python与c混和编程 编写Python扩展(Extending Python with C or C++) https://docs.python.org/2.7 ...
