Ask DBMS Expert


Home >> DBMS

Assignment

For this assignment you will develop a simple database system. The database is to handle multiple records, each composed of several fields. The database will store its information to a file, addition and deletion of records, field modifications, and it will allow users to sort records based on the selected keys, and produce reports (output) according to predefined criteria.
Some definitions:

1. A database is a collection of information, or data, that you can organize, update, sort, search through, and print as needed. A database does not just hold information; you use a database to organize and analyze information so that you understand its significance.

2. A database file consists of one or more records. Each record holds all the information about one subject item. In C++, the class data type provides an efficient way to represent and manipulate records.

3. Each piece of information in a record is called a field. Fields store the data that has been entered or calculated. In C++, fields are nothing more than the member variables defined for a particular class.

Requirements

Given the requirements as a rough specification, you are to design the classes and implement the database. So you can consider the requirements below as an outcome from a meeting with a client. You are in full control of the choice of data structures (except the main data structure of a Binary Search Tree, more detail below), algorithms, internal file format, and detailed user interface scheme.

Requirements are listed with R:

You are designing and implementing a database for the Academy Award winners.

R1/R2: You are to read in information from two files.

R1: You will read in actor-actress.csv which is formatted as a csv file (Ask the user for the file name). Then place the items in a Binary Search Tree, sorted by name.

This is a common format and is comma separated (instead of being on separate lines). So you will have comma's between the values. Blank values will just have a comma noting to go to the next field. (so you may have value,, indicating a blank field.) Each line ends in a newline, not a comma. If you want to view the file, often this will be opened by a spreadsheet unless you specifically open it with a text editor. Do not open it with Microsoft Word, as this may change the format. Consider using getline with three parameters, as an easy way to read in files The first line of a CSV file notes the data descriptions as follows:

Year,Award,Winner,Name,Film

The Winner field has a one if they won and a zero if they did not win.

R2: Then you will read in information about the movies (called pictures by the Academy of Motion Pictures) that have won best picture award. Place these items in a Binary Search Tree, sorted by name. This is also formatted as a .csv file

The first line of pictures.csv contains the data fields including:
name,year,nominations,rating,duration,genre1,genre2,release,metacritic,synopsis

R3/R4: Choose either the movie or actor database and add a record

R5/R6: Choose either the movie or actor database, search for a record, and modify the fields.

R7/R8: Choose either the movie or actor database, search for a record and delete the fields.

R9/R10: Choose either the movie or actor database andsort by any single (sortable) field

R11/R12:Choose either the movie or the actor database and do a complete search on any "complete" searchable field. It is unlikely that you would have an exact match on an entire description, so that would not be listed to search.

R13/R14: Choose either the movie or the actor database and do a partial search on any searchable field. A partial search is any substring within a field.

R15/R16:Choose either the movie or actor database, ask for a file name, and print out a .csv file of the latest database (after adds, deletes or modifies). Remember that the first line of a .csv file lists the name of the fields separated with commas, ending in a newline. Then the following lines are the information from the fields separated with commas, ending in a newline.

Database overall management

1. Use a text based menu for users to choose available features. Program should have a main menu at the beginning and sub menus depending on the task.

2. Each component of the overall program should be fairly modular.

a. Each menu item, for example, should be a separate function. The menu feature should be handled by a separate function and not by main( ).

Program should be fairly fault tolerant of user input (both when the user is entering data, and making menu choices). Provide appropriate user prompts and on-screen directions

Split the program into multiple files based on the roughly categorized functionality.

Data Retrieval and Modification

1. Users should be able to search records based on the field information in two modes: exact and contains. For example, search "Justin". Then under the search sub menu, users have to pick the search mode (exact or contains) and the field. (Fields should be listed out in another menu, so the user doesn't need to remember a specificfield name.

2. Quite often, searches may generate a relatively big output. Users should be able to search again within the search result (secondary search) or start all over again from scratch (new search).

3. Since the entire data is structured in a Binary Search Tree of names, any search (except name of movie or actor) will have to traverse the entire tree and search through the designated fields in every node of the tree.

4. There should be no restriction to the number of records in the database. So, in other words, you should not consider a fixed array for the record data structure.

Attachment:- Assignment.zip

DBMS, Programming

  • Category:- DBMS
  • Reference No.:- M92789652

Have any Question?


Related Questions in DBMS

Data mining assignment -in this assignment you are asked to

Data Mining Assignment - In this assignment you are asked to explore the use of neural networks for classification and numeric prediction. You are also asked to carry out a data mining investigation on a real-world data ...

Sql query assignment -for this assignment you are to write

SQL Query Assignment - For this assignment you are to write your answers in a word document. This assignment is in three parts: Part A (reporting queries), Part B (query performance), Part C (query design). For this assi ...

The groceries datasetimagine 10000 receipts sitting on your

The groceries Dataset Imagine 10000 receipts sitting on your table. Each receipt represents a transaction with items that were purchased. The receipt is a representation of stuff that went into a customer's basket. That ...

You are in a real estate business renting apartments to

You are in a real estate business renting apartments to customers. Your job is to define an appropriate schema using SQL DDL in MySQL. The relations are Property(Id, Address, NumberOfUnits), Unit(ApartmentNumber, Propert ...

Objectivethe objective of this lab is to be familiar with a

OBJECTIVE: The objective of this lab is to be familiar with a process in big data modeling. You're required to produce three big data models using the MS PowerPoint software. This tool is available on UMUC Virtual Deskto ...

The relation memberstudentid organizationid roleid stores

The relation Member(StudentId, OrganizationId, RoleId) stores the membership information of student joining organization. For example, ('S1', 'O2', 'R3') indicates that student with Id 'S1' joined the organization with i ...

Relational database exerciseyou have been assigned to a new

Relational Database Exercise: You have been assigned to a new development team. A client is requesting a relational database system to manage their present store with the anticipation of adding more stores in the future. ...

Relational database design a given the following business

Relational Database Design A) Given the following business rules, identify entity types, attributes (at least two attributes for each entity, including the primary key) and relationships, and then draw an Entity-Relation ...

We can represent a data set as a collection of object nodes

We can represent a data set as a collection of object nodes and a collection of attribute nodes, where there is a link between each object and each attribute, and where the weight of that link is the value of the object ...

Data model development and implementationpurpose of the

Data model development and implementation Purpose of the assessment (with ULO Mapping) The purpose of this assignment is to develop data models and map Database System into a standard development environment to gain unde ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As