代做336 PROJECT作业、代写SQL课程设计作业、代做Bar-Beer-Drinker作业、SQL实验作业代写
336 PROJECT – 2018- DEFAULT (group of 2)
Bar-Beer-Drinker PLUS
We will extend the bar-beer-drinker scheme, with information about specific transactions by customers (drinkers). We will store all “bills” of all drinkers, who may also order food items (bar food etc).
For each bill we will store the details of the transaction – what items were purchased (may be beer, may be food, soft drinks etc), time when the bill was issued, name of the drinker and the transaction id. Each transaction will also total amount paid which will be sum of prices of all items on the bill plus 7% tax. There may also be a tip.
One of the first tasks will be to represent bills/transactions in ER diagram and in your relational scheme
In addition, information about each bar (bar table) must also have opening and closing hours of this bar for each day. These hours may vary from bar to bar.
You will have to populate your database with realistic, but synthetic, tuples. By realistic, I mean names of bars, drinker names, dollar figures etc when appropriate. No a1, b1, c1! No drinker X and drinker Y! Generate and load your db with the large number of synthetic tuples, may be 5,000? Of course even more transactions, may be 20,000? May be more. It is your choice. But your database instances should not be completely random. The following assertions (patterns) should hold:
PATTERNS
1) Transactions/bills cannot be issued at times when the given bar is closed
2) Drinkers cannot frequent bars in different state
3) For every two beers, b1 and b2, different bars may charge differently for b1 and b2 but b1 should either be less expensive than b2 in ALL bars or more expensive than b2 in ALL bars. Cannot be the case that in one bar Corona is more expensive than Bud and in another Bud is more expensive than Corona. But Corona may be more expensive than Bud in one bar, and have the same price as Bud in another.
LOADING YOUR DB: You are not going to load your database manually (just in case you wondered). You will write a program which will load the database for you. Data will be “almost” random, except the pattern(s). The logic of the pattern will be part of your program.
REQUIREMENTS
1) Correct ER diagram and database scheme definition
2) Realistic db instance generation (i.e. names of entities, not symbols) and db loading + Pattern embedding in the instance as well as validation of the pattern using SQL query. Have at least 5,000 tuples in your database instance excluding transactions/bills. At least 20,000 transactions. Provide Verification interface for your three patterns: which allows to us to verify assertions/patterns which you have embedded. Show the SQL query which you are using to verify your constraint and return TRUE or FALSE (in case assertion is not satisfied). So there will be three SQL verification queries – one for each pattern – as part of your front end interface (the final design is up to you)

3) FRONT END - QUERIES: you should have three pages: Drinker, Bar and Beer
a) DRINKER PAGE: Given a drinker, show all his/her transactions ordered by time and grouped by different bars. Show bar graphs of beers s/he orders the most. Also, bar graph of his/her spending in different bars, on different dates/weeks/months.
b) BAR PAGE: Given a bar, show bar graphs – 1) for top drinkers who are largest spenders, 2) for beers which are most popular and 3) for manufacturers who sell the most beers. Demonstrate time distribution of sales, show what are the busiest periods of the day and of the week. Also have a way to add a new transaction for a given date etc.
c) BEER PAGE: Given a beer – show bars where this beer sells the most (again only top), show also drinkers who are the biggest consumers of this beer as well as time distribution of when this beer sells the most.
d) SQL QUERY INTERFACE: Provide a box where we can type in sql query and get them evaluated on your database. Of course we will have to know the scheme (which will be part of your submission).
4) FRONT END – UPDATES/DELETIONS/INSERTIONS: Allow end user to modify every table in your databases.
Have MODIFICATION page, with one box for each table. If update is not accepted – provide the feedback message “violates foreign key” etc.
The integrity constraints should be implemented
a) Foreign keys for each of the three tables – frequents, likes and sells. Drinker, Bar and Beer should be present in tables Drinker, Bar, Beer *before* they can participate in tables Frequent, Likes and Sells.
b) Key constraint for sells table – on bar, beer (bar, beer -> price)
c) ASSERTIONS: All three patterns (1-3) from above have to be enforced as assertions. This means if an update (insert, update) violates the assertion it *should not be allowed* and proper warning/explanation has to be displayed – “not accepted due to violation of assertion X”
Submit your ER diagram and Relational Schema through Sakai by end of the day, October 7th
1.Populate your database with instances, embedded patterns and SQL queries which verify that pattern is satisfied by the data by October 28th verification also, python, queries…
2.Front end and creation of power point presentation describing what you did. Final submission of URL where we can test your product and other documentation (ppt, source code etc) – by November 18
FINAL SUBMISSION SHOULD CONTAIN
1.ER diagram and Relational DB scheme
2.URL where we can access your web application through the front end
3.Power Point Presentation (up to 10-15 slides, explaining what you did)
4.Source code
GROUPS
Default is: 2 students per group. It is self-selected. We do not want to connect random two students, this does not work!. So we will leave it up to you.
You can do this project alone (the winner group last year was a single student). I really do not recommend 3-student groups, you have to do more and it is not clear what it means plus my experience is that 3-student groups often do not work well.
We assume that everyone contributes equally. If it is not the case (one student complains) – we will ask each member of the group to itemize what they did.

http://www.daixie0.com/contents/15/1915.html

因为专业,所以值得信赖。如有需要,请加QQ99515681 或邮箱:99515681@qq.com

微信:codinghelp

转载于:https://www.cnblogs.com/java222/p/9845547.html

336 PROJECT Bar-Beer-Drinker PLUS相关推荐

  1. 关于Spring-Data-Mongodb中的project()的用法,和previousOperation()的用法

    最近使用Spring-Data-Mongodb的API来改写原来的代码,遇到了一些问题,先把自己学到的一些东西总结下来. 参考: http://www.cnblogs.com/ontheroad_le ...

  2. 数据库复习(数据管理系统)

    数据库复习 面向老师的话 重点:关系数据库,数据库是什么,跟文件系统相比的优势,面向数据库比的劣势,跟noSQL数据库比的劣势: 数据库:长期存储在计算机内.有组织的.可共享的.大量的数据集合 比较: ...

  3. jsp+sql智能道路交通信息管理系统的设计与实现(论文+系统+开题报告+答辩PPT+外文翻译)

    毕业设计(论文) 附 件 目 录 任务书1 文献综述4 开题报告9 译文14 译文原文 附件A 毕业设计(论文) 任 务 书 设计(论文)题目 智能道路交通信息管理系统 学 院 计算机学院 专 业 计 ...

  4. SQL之trigger触发器

    触发器是一种数据库对象,一般与一个表相关联,当对该表做出某种修改操作(INSERT.DELETE.UPDATE)时,它会自动地予以执行.触发器可以查询其它表,并可以包含复杂的SQL(或Transact ...

  5. moco-globalsettings

    1.单个json文件 (1)目录配置 (2)新建foo.json 在project文件夹中新建foo.json [{"request" : {"uri" : & ...

  6. SVN使用import导入新数据到版本库

    有两种方法可以将新文件引入Subversion版本库:svn import和svn add,现在讨论svn import svn import是将未版本化文件导入版本库的最快方法,会根据需要创建中介目 ...

  7. 链接选项 rpath 的原理和应用

    女主宣言 在测试和部署 C++ 动态库时,经常遇到的问题就是程序链接到了系统路径下的动态库,有时候 make 编译时链接到本地路径的动态库,但实际 make install 时则会丢失这个依赖.本文将 ...

  8. Construct 2 制作游戏心得

    Construct 2 制作游戏心得 学号:16340081 本人学院 目录 Construct 2 制作游戏心得 初次接触 一脸懵逼 沉下心来摸索成长 照葫芦画瓢后的收获 尝试自创游戏 探究cons ...

  9. mysql取当前月份两位数_SQL获取当前时间月份为两位数

    php随笔5-thinkphp OA系统 人力资源管理 最近闲来无事,自己尝试通过thinkphp3.1.3框架开发一套自己的OA系统,目前已完成了人力资源管理部分的内容,遇到并解决了几个问题. 1. ...

最新文章

  1. Thymeleaf 入门
  2. 8天玩转并行开发——第四天 同步机制(上)
  3. 事件轮询 Event Loop
  4. 在SAP Cloud Platform上消费Business partner service遇到的错误
  5. linux交叉编译时报错:file not recognized: File format not recognized
  6. torch.randn【返回从标准正态分布(均值为0,方差为1,即高斯白噪声)中抽取的一组随机数】
  7. PAT甲题题解-1059. Prime Factors (25)-素数筛选法
  8. php日历排班表,日历排班表软件下载
  9. python三本经典书籍-关于 Python 的经典入门书籍有哪些?
  10. 什么是运营?与产品的关系是怎样的?
  11. 深入理解 Hive 分区分桶 (Inceptor)
  12. 浅谈登录服务器的方法
  13. C++的岗位要求是什么?
  14. Java虚拟机:垃圾收集
  15. Dart factory 快速理解
  16. 自己更换云平台绑定QQ号的方法
  17. 威廉森《宏观经济学》第五版笔记和课后答案
  18. v-chart是否显示lengend
  19. 大炮打蚊子(c语言易懂版)
  20. 电商“助推”论文代写、期刊代发 谁评学术端与不端?

热门文章

  1. mysql创建主键约束_mysql添加主键约束
  2. AP+AC旁挂式组网(简单易懂!新手必看!)
  3. html中a标签的跳转问题
  4. 20岁,一个美好却又操蛋的年龄!
  5. .../libopencv_freetype.so .. undefined reference to `hb_buffer_get_glyph_infos‘
  6. ImgAug图像增强
  7. 计蒜客 鸣人和佐助 bfs
  8. split方法可以实现同时使用多个分隔符劈开字符串方法(分隔sql条件)
  9. 算法基础--优惠券问题(贪心算法)
  10. 利用monment库做一个日历表