Database Environment and Development Process MODULE ONE Prepared by Noted by : : GRACE L. NAVARRO Instructor ENGR. ROILYNN R. BALBIN Dean Approved by : DR. ALELI C. DUGAN, CPA Vice-President, Academic Affairs ITC105L – MODULE 1 INFORMATION MANAGEMENT 1 L DATABASE ENVIRONMENT AND DEVELOPMENT PROCESS Module One A. Introduction This module provides an overview of the database concepts. This module includes tasks that the learner can do to expand his/her knowledge of the topic. At the end of this module is a short quiz that the learner must comply. B. Objectives After completing this module, the learner should be able to 1. Identify the difference between file system and database system. 2. Explain concepts of database management system (DBMS) 3. Identify the functions, properties, users, and languages used in DBMS. C. Learning Content 1. Data vs Information Data and information are interrelated. Data usually refers to raw data, or unprocessed data. It is the basic form of data, data that has not been analyzed or processed in any manner. Once the data is analyzed, it is considered as information. Information is “knowledge communicated or received concerning a particular fact or circumstance”. Information is a sequence of symbols that can be interpreted as a message. It provides knowledge or insight about a certain matter. Both are often mistakenly used interchangeably. Data is considered to be raw data representing ‘values of qualitative and quantitative variables, belonging to a set of items’. It may be in form of a numbers, letters, or a set of characters. It is often collected via measurements. In data computing or data processing, data is represented by in a structure, such as tubular data, data tree, a data graph, etc. Information can be recorded as signs, or transmitted as signals. Basically, information is the message that is being conveyed, whereas data are plain facts. Once the data is processed, organized, structured or presented in a given context, it can become useful. Then data will become information, knowledge. Data in itself is fairly useless, until it is interpreted or processed to get meaning, to get information. In computing, it can be said that data is the computer’s language. It is the output that the computer gives us. Whereas information is how we interpret or translate the language or data. It is the human representation of data. Page 1 of 22 ITC105L – MODULE 1 Data is an abstraction of real life, and real life can be complicated, but if you gather enough context, you can at least put forth a solid effort to make sense of it. Graphical displays turn data into useful information that managers can use for decision making and interpretation 2. DBMS vs File System File System Computer-based data processing systems were initially used for scientific and engineering calculations. With increased complexity of business requirements, gradually they were introduced into the business applications. The manual method of filing systems of an organization, such as to hold all internal and external correspondence relating to a project or activity, client, task, product, customer or employee, was maintaining different manual folders. These files or folders were labeled and stored in one or more cabinets or almirahs under lock and key for safety and security reasons. As and when required, the concerned person in the organization used to search for a specific folder or file serially starting from the first entry. Alternatively, files were indexed to help locate the file or folder more quickly. Ideally, the contents of each file folder were logically related. Page 2 of 22 ITC105L – MODULE 1 For example, a file folder in a supplier’s office might contain customer data; one file folder for each customer. All data in that folder described only that customer’s transaction. Similarly, a personnel manager might organize personnel data of employees by category of employment (for example, technical, secretarial, sales, administrative, and son on). Therefore, a file folder leveled ‘technical’ would contain data pertaining to only those people whose duties were properly classified as technical. The manual system worked well as data repository as long as the collections were relatively small and the organization’s managers had few reporting requirements. However, as the organization grew and as the reporting requirements become more difficult in keeping track of data in the manual file system. Also, report generation from a manual file system could be slow and cumbersome. Thus, this manual filing system was replaced with a computer-based filing system. File-oriented systems were an early attempt to computerize the manual filing system that we are familiar with. Because these systems performed normal record-keeping functions, they were called data processing (DP) systems. Rather than establish a centralized store for organization’s operational data, a decentralized approach was taken, where each department, with the assistance of DP department staff, stored and controlled its own data. The figure above illustrates structures in which application programs are written specifically for each user department for accessing their own files. Each set of departmental programs handles data entry, file maintenance and the generation of a fixed set of specific reports. Here the physical structure and storage of the data files and records are defined in the application program. Page 3 of 22 ITC105L – MODULE 1 Disadvantages of File System a. Data Redundancy Since flat-file databases rely on files that contain records as text without any structural data, they cannot relate data from one file to another. For example, if one file contains an address record of Mr. Johnson, another file that uses address information on Mr. Johnson has to recreate that data. The second file must duplicate the data. This means that the address data on Mr. Johnson exists in two files at once. On large scales, this leads to data redundancy that can quickly take up space in the database and prove cost-inefficient. b. Data Inconsistency Imagine Student and Student_Report files have student’s address in it, and there was a change request for one particular student’s address. The program searched only the Student file for the address and it updated it correctly. There is another program that prints the student’s report and mails it to the address mentioned in the Student_Report file. What happens to the report of a student whose address is being changed? There is a mismatch in the actual address and his report is sent to his old address. This mismatch in different copies of the same data is called data inconsistency. This has occurred here because there is no proper listing of files which has the same copies of data. c. Difficulty in accessing data In classical file organization the data is stored in the files. Whenever data has to be retrieved as per the requirements then a new application program has to be written. This is tedious process. d. Data Isolation Imagine we have to generate a single report of a student, who is studying in a particular class, his study report, his library book details, and hostel information. All these information are stored in different files. How do we get all these details in one report? We have to write a program. But before writing the program, the programmer should find out which all files have the information needed, what is the format of each file, how to search for data in each file, etc. Once all this analysis is done, he writes a program. If there are 2-3 files involved, programming would be a bit simple. Imagine if there is a lot many files involved in it? It would require a lot of effort from the programmer. Since all the data are isolated from each other in different files, programming becomes difficult. e. Concurrent access anomalies Accessing the same data from the same file is called concurrent access. In the file system, concurrent access leads to incorrect data. For example, a student wants to borrow a book from the library. He searches for the book in the library file and sees that only one copy is available. At the same time, another student also wants to borrow the same book and checks that one copy available. The first student opts for borrow and gets the book. But it is still not updated to zero-copy in the file and the second student also opt for borrow! But there are no books available. This is the problem of concurrent access to the file system. Page 4 of 22 ITC105L – MODULE 1 f. Security Problems Each file can be password protected. But what if you have to give access to only a few records in the file? For example, the user has to be given access to view only their bank account information in the file. This is very difficult in the file system. g. Integrity Problems The data values stored in the database must satisfy certain types of consistency constraints. For example, the balance of a bank account may never fall below a prescribed amount. These constraints are enforced in the system by adding appropriate code in the various application programs. However, when new constraints are added, it is difficult to change the programs to enforce them. The problem is compounded when constraints involve several data items from different files. h. Data Dependency In the files, data are stored in a specific format, say tab, comma, or semicolon. If the format of any of the files is changed, then the program for processing this file needs to be changed. But there would be many programs dependent on this file. We need to know in advance all the programs which are using this file and change in the entire place. Missing to change in any one place will fail the whole application. Similarly, changes in the storage structure, or accessing the data, affect all the places where this file is being used. We have to change its entire programs. That is the smallest change in the file affects all the programs and needs changes in all of them. Database Approach The Database is a shared collection of logically related data, designed to meet the information needs of an organization. A database is a computer-based record keeping system whose over all purpose is to record and maintains information. The database is a single, large repository of data, which can be used simultaneously by many departments and users. Instead of disconnected files with redundant data, all data items are integrated with a minimum amount of duplication. The database is no longer owned by one department but is a shared corporate resource. The database holds not only the organization’s operational data but also a description of this data. For this reason, a database is also defined as a self-describing collection of integrated records. The description of the data is known as the Data Dictionary or Meta Data (the ‘data about data’). It is the self-describing nature of a database that provides program-data independence. Page 5 of 22 ITC105L – MODULE 1 Some examples of databases you may encounter in your daily life are: • • • • • • a telephone books T.V. Guide airline reservation system motor vehicle registration records papers in your filing cabinet file on your computer hard drive Differences between File System and DBMS File System Database Management System (DBMS) 1. It is a software system that 1. It is a software system used for creating manages and controls the data files and managing the databases. DBMS in a computer system. provides a systematic way to access, update, and delete data. 2. File system does not support 2. Database Management System multi-user access. supports multi-user access. 3. Data consistency is less in the file 3. Data consistency is more due to the use system. of normalization. 4. File system is not secured. 4. Database Management System is highly secured. 5. File system is used for storing the 5. Database management system is used unstructured data. for storing the structured data. 6. In the file system, data 6. In DBMS, Data redundancy is low. redundancy is high. 7. No data backup and recovery 7. There is a backup recovery for data in process is present in a file system. DBMS. 8. Handling of a file system is easy. 8. Handling a DBMS is complex. 9. Cost of a file system is less than 9. Cost of database management system the DBMS. is more than the file system. 10. If one application fails, it does 10. If the database fails, it affects all not affect other application in a application which depends on it. system. Page 6 of 22 ITC105L – MODULE 1 11. In the file system, data cannot be shared because it is distributed in different files. 12. These system does not provide concurrency facility. 13. Example: NTFS (New technology file system), EXT (Extended file system), etc. 11. In DBMS, data can be shared as it is stored at one place in a database. 12. This system provides concurrency facility. 13. Example: Oracle, MySQL, MS SQL Server, DB2, Microsoft Access, etc. File System vs Database System 3. DATABASE MANAGEMENT SYSTEM A software system that is used to create maintain, and provide controlled access to the users of databases. Database Management Systems (DBMS) refer to the technology solution used to optimize and manage the storage and retrieval of data from databases. DBMS offers a systematic approach to manage databases. We need databases to keep records of: • Clients • Staff • Volunteers And to keep a record of activities and interventions: • Keep sales records; • Develop reports; • Perform research • Longitudinal tracking Page 7 of 22 ITC105L – MODULE 1 Applications of DBMS • Railway Reservation System In the railway reservation system, the database is required to store the record or data of ticket bookings, status about train’s arrival, and departure. Also, if trains get late, people get to know it through database update. • Library Management System There are lots of books in the library so; it is tough to store the record of all the books in a register or copy. So, the database management system (DBMS) is used to maintain all the information related to the name of the book, issue date, availability of the book, and its author. Banking Database management system is used to store the transaction information of the customer in the database. Education Sector Presently, examinations are conducted online by many colleges and universities. They manage all examination data through the database management system (DBMS). In spite that student’s registrations details, grades, courses, fee, attendance, results, etc. all the information is stored in the database. Credit card transactions Database Management system is used for purchasing on credit cards and generation of monthly statements. Social Media Sites We all use of social media websites to connect with friends and to share our views with the world. Daily, millions of peoples sign up for these social media accounts like Pinterest, Facebook, Twitter, and Google plus. By the use of the database management system, all the information of users are stored in the database and, we become able to connect with other people. • • • • Page 8 of 22 ITC105L – MODULE 1 • • • • • • Telecommunications Without DBMS any telecommunication company can’t think. The Database management system is necessary for these companies to store the call details and monthly postpaid bills in the database. Finance The database management system is used for storing information about sales, holding and purchases of financial instruments such as stocks and bonds in a database. Online Shopping These days, online shopping has become a big trend. No one wants to visit the shop and waste their time. Everyone wants to shop through online shopping websites (such as Amazon, Flipkart, Snapdeal) from home. So all the products are sold and added only with the help of the database management system (DBMS). Invoice bills, payments, purchase information all of these are done with the help of DBMS. Human Resource Management Big firms or companies have many workers or employees working under them. They store information about employee’s salary, tax, and work with the help of database management system (DBMS). Manufacturing Manufacturing companies make different types of products and sale them on a daily basis. In order to keep the information about their products like bills, purchase of the product, quantity, supply chain management, database management system (DBMS) is used. Airline Reservation System This system is the same as the railway reservation system. This system also uses a database management system to store the records of flights departure, arrival, and delay status. 4. DATABASE ENVIRONMENT Data DBMS contains operational data, access to database records and metadata as a resource to perform the necessary functionality. The data may include files with such as index files, Page 9 of 22 ITC105L – MODULE 1 administrative information, and data dictionaries used to represent data flows, ownership, structure, and relationships to other records or objects. Software DBMS is primarily a software system that can be considered as a management console or an interface to interact with and manage databases. The interfacing also spreads across real-world physical systems that contribute data to the backend databases. The OS, networking software, and the hardware infrastructure is involved in creating, accessing, managing, and processing the databases. Hardware When we say hardware, we mean computer, hard disk, I/o channels for data and any other physical components involved before any data is successfully stored into the memory. It consists of a set of physical electronics devices such as computers, I/o devices, storage devices, etc. This provides the interface between computers and the real-world system. This DBMS component is used for keeping and storing the data in the database. When we run oracle or MySQL on our personal computer, then our computers hard disk, our keyboard using which we type in all the commands, our computers RAM, ROM all become a part of the DBMS hardware. Procedures These are the instructions and rules that assist on how to use the DBMS, and in designing and running the database, using documented procedures, to guide the users that operate and manage it. Procedures are used to setup and install a new DBMS to login and logout of DBMS software, to manage DBMS or application programs, to take backup of the database, and to change the structure of the database, etc. People The people are who control and manage the databases and perform different types of operations on the database in the DBMS. The people include database administrator, software developer and end user. Database administrator is the one who manages the complete database management system. DBA takes care of the security of the DBMS, it’s availability, managing the license keys, managing user accounts and access, etc. Software developer is involved in developing and designing the parts of DBMs. These days all the modern applications, web or mobile, store user data. How do you think the do it? Yes, applications are programmed in such a way that they collect user data and store the data on DBMS system running on their server. End user are the one who store, retrieve, update and delete data. Page 10 of 22 ITC105L – MODULE 1 5. FUNCTIONS OF DBMS Ability to update and retrieve data This is the fundamental component of DBMS, without this, there would be no point of using DBMS. Adding new records, deleting existing records and changing information within a record are included also. Support concurrent updates The DBMS ensures that multiple users can access the database concurrently without compromising the integrity of the database. Hence the database ensures data integrity and data consistency. Backup and recovery management The DBMS provide backup and data recovery procedures to ensure data safety and integrity. The database system provides a separate process, from that of a network backup, for backing up and recovering data. If a hard drive fails and the database stored on the hard drive is not accessible, the only way to recover the database is from a backup. If a computer system fails in the middle of a complex update process, the recovery subsystem is responsible for making sure that the database is restored to its original state. These are two more benefits of a database management system. Data Integrity Management The DBMS promotes and enforce integrity rules to eliminate data integrity problems, thus minimizing the data redundancy and maximizing data consistency. A database constraint is a restriction or rule that dictates what can be entered or edited in a table such as a postal code using a certain format or adding a valid city in the City field. Data type, for example, determines the sort of data permitted in a field, for example numbers only. Data uniqueness such as the primary key ensures that no duplicates are entered. Constraints can be simple (field based) or complex (programming). Data Security Not all users of a database system will have the same accessing privileges. For example, one user might have read-only access (i.e., the ability to read a file but not make changes), while another Page 11 of 22 ITC105L – MODULE 1 might have read and write privileges, which is the ability to both read and modify a file. For this reason, a database management system should provide a security subsystem to create and control different types of user accounts and restrict unauthorized access. Data Sharing It allows for data sharing among employees and others who have access to the system. Second, it gives users the ability to generate more information from a given amount of data than would be possible without the integration. Advantages and Disadvantages of DBMS Advantages Redundancy can be reduced Inconsistency can be avoided Data can be shared Standards can be enforced Security can be enforced Integrity can be maintained Disadvantages Increased cost Data exposure Security Damage/Higher Impact of Failure 6. DBMS ARCHITECTURE The DBMS architecture describes how data in the database is viewed by the users. Physical Level (Internal) Lowest level of abstraction that describes how the data are actually stored. The physical level describes complex low – level data structures in detail. Storage space, allocation techniques for data and indexes, access paths such as indexes, data compression and encryption techniques, and record placement. Logical Level (Conceptual) The next higher level of abstraction that describes what data are stored in the database and what relationships exist among those data, and complete view of the user’s requirements without any concern for the physical implementation. Overall view of the database and it includes all the information that is represented in the database. View Level (External) It is the highest level of abstraction that describes only a part of the entire database. Provides a powerful and flexible security mechanism by hiding the parts of the database from certain users, as the user is not aware of existence of any attributes that are missing from the view. Page 12 of 22 ITC105L – MODULE 1 These three levels are used to describe the schema of the database at various levels. Thus, the three level of architecture is also known as three-schema architecture. In this three-schema architecture, each user group refers only to its own external view. Whenever a user specifies a request to generate a new external view, the DBMS must transform the request specified at external level into a request at conceptual level, and then into a request at physical level. If the user requests for data retrieval, the data extracted from the database must be presented according to the need of the user. This process of transforming the requests and results between various levels of DBMS architecture is known as mapping. 7. DATA INDEPENDENCE The main advantage of three – schema architecture is that it provides data independence. Data independence is the ability to change the schema at one level of the database system without having to change the schema at the other levels. Data independence is of two types: Logical data independence: Ability to change the conceptual schema without affecting the external schemas or application programs. The conceptual schema may be changed due to changed due to change in constraints or addition of new data item or removal of existing data item, etc. from the database. Physical data independence: Ability to change the internal schema without affecting the conceptual or external schema. An internal schema may be changed due to several reasons such as for creating additional access structure, changing the storage structure, etc. Logical data independence is more difficult to achieve than the physical data independence because the application programs are always dependent on the logical structure of the database. Therefore, the change in the logical structure of the database may require change in the application programs. Page 13 of 22 ITC105L – MODULE 1 8. DATABASE SCHEMA VS DATABASE INSTANCE While working with any data model, it is necessary to distinguish between the overall design or description of the database (database schema) and the database itself. Database schema is the overall design or description of the database. It is also known as the intention of the database, and is specified while designing the database. There are two types of schema: physical and logical. Physical schema is the database design at the physical level, while logical schema is the database design at the logical level. Instance is the actual content of the database at a particular point in time. The various states of the database are: Empty State – when a new database is defined, only its schema is specified. At this point, the database is said to be in empty state as it contains no data. Initial State – when the database is loaded with data for the first time, it is said to be in initial state. Current State – the data in the database is updated frequently. Thus, at any point in time, the database is said to be in the current state. 9. DATA MODELS The main objective of database system is to highlight only the essential features and to hide the storage and data organization details from the user. This is known as data abstraction. A database model provides the necessary means to achieve data abstraction. A database model or simply a data model is an abstract model that describes how the data is represented and used. A data model consists of a set of data structures and conceptual tools that is used to describe the structure (data types, relationships, and constraints) of a database. Entity Relation Model It is well suited to data modelling for use with databases because it is fairly abstract and is easy to discuss and explain. ER models are readily translated to relations. ER models, also called an ER schema, are represented by ER diagrams. ER modelling is based on two concepts: • • Entities, defined as tables that hold specific information (data) Relationships, defined as the associations or interactions between entities Page 14 of 22 ITC105L – MODULE 1 Relational Model Relational Model (RM) represents the database as a collection of relations. A relation is nothing but a table of values. Every row in the table represents a collection of related data values. These rows in the table denote a real-world entity or relationship. Object-based data model In the recent years, the object-oriented paradigm has been applied to database technology, creating a new data model known as object-oriented data model. Object-oriented data model extends the concepts of object-oriented programming language with persistence, versioning, concurrency control, data recovery, security, and other database capabilities. Semi-structure data models The semi-structured data model allows individual data items of the same type to have different set of attributes. In semi structured data model, the information about the description of the data (schema) is contained withing the data itself, which is sometimes called self-describing data. In such databases there is no clear separation between the data and the schema and thus, allowing data of any type. Page 15 of 22 ITC105L – MODULE 1 Network model The network database model is a model for modeling the entities in such a way that one child entity can have more than one parent entities. This model is an extension of the hierarchical model. It was the most popular model before the relational model. This model is the same as the hierarchical model, the only difference is that a record can have more than one parent. It replaces the hierarchical tree with a graph. Hierarchical model This model organizes the data in the hierarchical tree structure. The hierarchy starts from the root which has root data and then it expands in the form of a tree adding child node to the parent node. This model easily represents some of the real-world relationships like food recipes, sitemap of a website etc. 10. DATABASE LANGUAGES A DBMS must provide appropriate languages and interfaces for each category of users to express database queries and updates. Database Languages are used to create and maintain database on computer. Data Definition Language (DDL) It is a language that allows the users to define data and their relationship to other types of data. It is mainly used to create files, databases, data dictionary and tables within databases. It is also used to specify the structure of each table, set of associated values with each attribute, integrity Page 16 of 22 ITC105L – MODULE 1 constraints, security and authorization information for each table and physical storage structure of each table on disk. DDL Commands: • Create: Create objects in the database • Alter: Alter the structure of the database • Drop: Deletes objects from the database • Truncate: Removes all records from a table, including all spaces allocated for the records are removed • Rename: Rename schema objects Data Manipulation Language (DML) It is a language that provides a set of operations to support the basic data manipulation operations on the data held in the databases. It allows users to insert, update, delete and retrieve data from the database. The part of DML that involves data retrieval is called a query language. DML Commands: • Insert: Insert data into a table • Update: Updates existing data within the table • Delete: Delete all records from a table • Select: statement requesting the retrieval of information Data Control Language (DCL) Grant privilege to a user using the GRANT statement. In the same way, revoke the privilege using the REVOKE statement. Both of these statements come under the Data Control Language (DCL). DCL Commands: • Grant: Give privilege to access the database. • Revoke: Take back the privilege to access the database. Transaction Control Language Manage transactions in the Database using the Transaction Control Language. TCL Commands: • • • Commit: Save the work. Savepoint: Set a point in transaction to roll back later Rollback: Restores since last commit 11. SQL Structured Query Language is a standardized programming language that's used to manage relational databases and perform various operations on the data in them. Initially created in the 1970s, SQL is regularly used not only by database administrators, but also by developers writing data integration scripts and data analysts looking to set up and run analytical queries. Page 17 of 22 ITC105L – MODULE 1 • • E.g. find the name of the customer with customer-id 192-83-7465 select customer.customer-name from customer where customer.customer-id = ‘192-83-7465’ E.g. find the balances of all accounts held by the customer with customer-id 192-83-7465 select account.balance from depositor, account where depositor.customer-id = ‘192-83-7465’ and depositor.account-number = account.account-number 12. DATABASE USERS AND ADMINISTRATORS Users • Native Users Unsophisticated users who interact with the system by invoking one of the application programs that have been written previously. These are the users who use the existing application to interact with the database. For example, online library system, ticket booking systems, ATMs etc., which has existing application and users use them to interact with the database to fulfill their requests. • Application Programmers Use fourth generation languages to facilitate the generation of forms and display data on the screen. They are the developers who interact with the database by means of DML queries. These DML queries are written in the application programs like C, C++, JAVA, Pascal etc. These queries are converted into object code to communicate with the database. • Sophisticated Users They are database developers, who write SQL queries to select/insert/delete/update data. They do not use any application or programs to request the database. They directly interact with the database by means of query language like SQL. These users will be scientists, engineers, analysts who thoroughly study SQL and DBMS to apply the concepts in their requirement. In short, we can say this category includes designers and developers of DBMS and SQL. • Specialized Users These are also sophisticated users, but they write special database application programs. They are the developers who develop the complex programs to the requirement. Database Administrator A person who has central control over the system is called DBA. A database administrator directs or performs all activities related to maintain a successful database environment. Functions: • Schema Definition – creates the original database schema by executing set of data definition statements in the DDL. Page 18 of 22 ITC105L – MODULE 1 • • • Schema and physical organization modification – carry out changes to the schema and physical organization to reflect the changing needs of the organization, or to alter the physical organization to improve performance. Granting of authorization for data access – can regulate different users in accessing different parts of database. Routine maintenance – periodic backup, ensuring there is enough free disk space and monitor jobs running on the database 13. CRUD The term CRUD is strongly connected with managing digital data. To be more precise, CRUD refers to an acronym of four fundamental operators of persistent database applications: • • • • Create (create a dataset) Read or Retrieve (read datasets) Update (update datasets) Delete or Destroy (destroy datasets) 14. ACID A transaction can be defined as a logical unit of work on the database. This may be an entire program, a piece of a program, or a single command (like the SQL commands such as INSERT or UPDATE), and it may engage in any number of operations on the database. In the database context, the execution of an application program can be thought of as one or more transactions with nondatabase processing taking place in between. Properties of Transaction • Atomicity By this, we mean that either the entire transaction takes place at once or doesn’t happen at all. There is no midway i.e. transactions do not occur partially. Each transaction is considered as one unit and either runs to completion or is not executed at all. It involves following two operations. Abort: If a transaction aborts, changes made to database are not visible. Commit: If a transaction commits, changes made are visible. Example: Page 19 of 22 ITC105L – MODULE 1 • Consistency This means that integrity constraints must be maintained so that the database is consistent before and after the transaction. It refers to correctness of a database. Examples: Referring to the previous example, the total amount before and after the transaction must be maintained. Total before T occurs = 500 + 200 = 700. Total after T occurs = 400 + 300 = 700. Therefore, database is consistent. Inconsistency occurs in case T1 completes but T2 fails. As a result, T is incomplete. Page 20 of 22 ITC105L – MODULE 1 • Isolation This property ensures that multiple transactions can occur concurrently without leading to inconsistency of database state. Transactions occur independently without interference. Changes occurring in a particular transaction will not be visible to any other transaction until that particular change in that transaction is written to memory or has been committed. This property ensures that the execution of transactions concurrently will result in a state that is equivalent to a state achieved these were executed serially in some order. • Durability This property ensures that once the transaction has completed execution, the updates and modifications to the database are stored in and written to disk and they persist even if system failure occurs. These updates now become permanent and are stored in a nonvolatile memory. The effects of the transaction, thus, are never lost. D. Assessments Assignment 1: Web Searching. Browse for two spectacular stories of database theft. Include important details like dates, companies/businesses involved, specific issue of theft or the like, how the issue/incident was solved. Document your answer using word processing application and submit it in the LMS link. Assignment 2: Prepare for a short quiz via LMS on February 3, 2021. Page 21 of 22 ITC105L – MODULE 1 E. References Book(s): Mratinkovic, Aleksandar., et.al. (2018). Theory, Practice and techniques in Database Management Systems. NY: 3G E-Learning Web links: https://ecomputernotes.com/ https://www.w3schools.in/dbms/ https://www.tutorialspoint.com/dbms/index.htm Prepared by: GRACE L. NAVARRO Instructor Noted by: ENGR. ROILYNN R. BALBIN Dean Noted by: DR. ALELI C. DUGAN, CPA Vice-President, Academic Affairs Page 22 of 22