The PEAR DB functions can be accessed using DB::<function_name>.
The string argument of the function for connecting to a database is of the format <DBMS software>://<user account>:<password>@<database server>
The PEAR DB functon for connecting to a database is called DB::linkto database('string').
• The DBMS software in <DBMS software>://<user account>:<password>@<database server> stands for the particular DBMS software package being connected to: for example mysqli for versions of MySQL starting with version 4.1.2
• The PEAR DB function DB::is Error can be used to determine whether any database access operation was successful or not.
• In PHP, an _____ array provides pairs of key=>value elements; the value of an element is referenced through its key and all key values in a particular array must be unique.
Numeric
Value
String
Associative
• Multi-line PHP comments start with // and end with #.
• PHP written in C and usually comes installed with Unix: for other operating systems, the PHP interpreter can be downloaded from http://www.php.net
• The PHP start tag is <?php and end the tag is ?>.
• Web pages, where part of the information is extracted from databases or other data source, are called dynamic Web pages
• In PHP, a ____ array associates a numeric index with each element in the array
Associated
Variable
• PHP variable names start with a $ sign and can include characters, numbers, and the underscore character
• Interpolating variables occurs only within single-quoted strings.
• PHP programs are executed on the client.
• The auto-global predefined PHP variable $_POST is an array that holds all the values entered through form parameters.
• JDBC does not distinguish between queries that return single tuples and those that return multiple tuples.
• The JDBC _____ libraries are called java.sql.*
Method
Function
Class
• What are the advantages and disadvantages of the embedded SQL approach.
The main advantage is the query text is part of the source code can be checked for syntax errors and validated against the database schema at compile time. The program is quite readable. Since queries are known in advance, the choice of program variables to hold query results is simple.
The main advantage is flexibility in generating queries at runtime. Also, the library of function calls approach is able to call multiple data program.
The main disadvantage is the query text is part of the source code can be checked for syntax errors and validated against the database schema at compile time. The program is quite readable. Since queries are known in advance, the choice of program variables to hold query results is simple.
Disadvantage are more complex programming, inability to do checking at compile time, and concerns about SQL runtime errors.
Disadvantage are the loss of flexibility in changing the query the query at runtime and that all changes to queries must be recompiled.
• The use of function calls is a more dynamic approach for database programming than embedded SQL.
• A _____ object is similar to a cursor in embedded SQL and an iterator in SQLJ.
Procedure
Function call
Result Set
• _____ is the part of the SQL standard that specifies how to write persistent stored modules.
SQL/PSM
XML
SQLJ
ResultSet
• Database stored procedures (aka persistent stored modules) are stored and executed by the DBMS at the database server.
• Discuss advantages and diadvantages to the library of function calls approach
Disadvantage are the loss of flexibility in changing the query at runtime and that all changes to queries must be recompiled.
The main advantage is flexibility in generating queries at compile time. Also, the library of function calls approach is able to call multiple single program.
Disadvantages are more complex programming, inability to do checking at compile time, and concerns about SQL runtime errors.
The main advantage is the query text is part of source code and can be checked for syntax errors and validated against the data. The program is quite readable.
• It is necessary to have a binding between the data types of the programming language and the attribute data types in the data model
• In SQLJ, embedded SQL commands are preceded by #sql.
• One advantage of using an SQLJ translator is that it is not necessary to install drivers such as a JDBC driver.
• Describe the three main approaches for database programming.
• Using a library of database functions. This approach provides what is known as an application programming interface (API) for accessing a database from applications programs.
• Using a library of database methods. This approach provides what is known as an application programming interface (API) for accessing a database from applications programs
• Embedded SQL. Embeding database commands in a general-purpose programming language. A preprocessor extracts the embedded SQL from the source code and replaces it with function calls to DBMS-generated code.
• Embedded SQL. Embeding database commands in a specific-purpose programming language. A preprocessor can not extract code, but function calls to be extracted to DBMS-generated code.
• Designing a new database programming language.
• Embedded SQL. Embeding database commands in a specific-purpose programming language. A preprocessor extracts the embedded SQL from the source code and replaces it with function calls to DBMS-generating code
• In XML _____ defines the set of commands (names) that can be used
• Namespace
• Valid
• Document
• Invalid
• In XML schema, the tag _____ is used tospecify primary keys.
• xs:element
• xsd:key
• psd:schema
• xs:sequence
• A * following an element name means the element can be repeated zero or one times (an optional, single-valued, nonrepeating elements)
• If an XML document is well-formed and follows a particular schema, it is _____
• Keys
• The XML schema, it is possible to specify constraints that correspond to unique and primary key constraints ina relational database, as well as foreign keys constraints
• An element that does not have *, +, or ? following the element name means the element must appear exactly once in the document (a required, single-valued, nonrepeating element).
• A ? following an element name means that element can be repeated zero or more times in the document (an optional, mult-valued, repeating element).
• The basic object in XML is the XML document, which is structured using types and iterators.
• How does a well-formed XML document look like?
• It is syntactically correct: a non-single root element with every element including a matching pair of start/end tags within the start-end of the parent element
• It must finish with an XML declaration to indicate the version of XML.
• It is syntactically correct: a single root element with every element including a matching pair of start/end tags within the start-end tags of the parent element
• It is syntactically correct: a single root element with every element except a matching pair of start/end tags within the start-end tags of the parent elements
• It must start with an XML declaration to indicate the version of XML
• Struct type constructors include the set (T), list (T), bag(T), array(T), and dictionary (K,T) type constructors.
• Three major differences between the relational and object database design.
• In ODB design a binary relationship can be declared in one direction or both. If attributes are included in both directions, there is a potential problem with redundancy.
• In ODB design a binary relationship can be declared in one direction or both. If attributes are included in both directions, there is no any problem
• In an ODB, operations must be defined early since they are part of the classes specifications. In RDBs, operations may not be defined until implementation
• In RDB inheritance is built into the model; ODBs do not have built-in constructs for inheritance.
• In an RDB, operations must be defined early since they are part of the class specifications. In an ODB, operations may not be defined until implementation
• In ODB inheritance is built into the model; RDBs do not have built-in constructs for inheritance.
• The typical mechanisms for making an object an object persistent are naming and reachability.
• The main property required of an OID is that it be immutable (should not change).
• _____ inheritance occurs when a subtype inherits only some of the functions of a supertype.
• Generalisation
• Complete encapsulation
• Conditional
• Selective
• In operator overloading (or polymorphism), an operation name may refer to several distinct implementations, depending on the type of object it is applied to.
• In ______ all operations that can be applied to an object must be predefined.
• Half encapsulation
• Object identifier
• Feedback loop
• The implementation of an operation is called its signature.
• A subtype is used when a new type is needed that is similar but not identical to an already defined type.
• The dictionary constructor creates a collection of two tupes (K,V) where the value of a key K can be used to retrieve the can be used to retrieve the corresponding value V.
• An ODMS provides a unique identity to each independent object in the database via a unique, system-generated ____.
• Complete encaplsulation
• An object typically has three components: state, timing, and behavior
• The 80-20 rule suggests that 80% of the workload is presented by 20% of the most frequently used transactions, which govem the physical database design.
• The phases (or activities) of the life cycle are not strictly in sequence; ______ are common among and within the phases of the life cycle.
• One-shot
• Requirements collection
• View integration
• In the _____ approach to schema design, a scheme is designed for each user group or application based phase, these schemas are merged into a global conecptual schema.
• Requirements analysis
• Feedback loops
• Feasibility analysis
• A large database typically has large transaction volumes and rates, is used in service sector industries, and runs 24/7
• Many organizations use data dictionary systems (information repositories) to manage meta-data, i.e., data that describes the database structure, constraints, applications, authorizations, users, and so forth.
• What are the three goals of database design?
a) Satisfy the information content requirements of the generalised users and applications.
• Support result
• Provide a natural and easy-to-understand structuring of the information.
• Support processing requirements and any performance objectives.
• Satisfy the information content requirements ofthe specified users and applications.
• Provide a comlicated structuring of the information.
• _______ involves interacting with potential users and user groups to identify their particular problems and needs.
• view-integration
• requirements collection and analysis
• feasibility analysis
• one-shot
• feedback loop
• A transaction processing system can be characterized as one with several dozen gigabytes of data and a schema with more than 30 or 40 distinct entity types
• Identify the three criteria to guide the choice of physical database design options
• Space utisilation
• Availability of vendor services
• Transaction throughput
• Response time
• Familiarity of personnel with the system
• Identify the three factors to consider in choosing one DBMS over another
• Organization-wide adoption of a certain philosophy (data model, vendor, methodology, tools)
• _____ is concerned with analyzing potential application areas, identifying the economics of information gathering and dissemination, performing preiliminary cost-benefit studies, determining the complexity of data and processes, and setting up priorities among applications.
• Requirements collection and analysis
• The initial requirements can be expected to be formal, complete, consistent, and correct.
• In the ______ schema design approach, the requirements from the different stakeholders are merged into a single set of requirements before the schema design begins.
• Centralized (or one-shot)
• What two things does minimizing redundancy imply?
• Reducing the need for multiple updates to maintain consistency across multiple copies of the same information.
• Reducing the redundant information in tuples.
• Making sure the semantics of the attributes is clear in the schema
• Minimizing redundant storage of the same information
• Disallowing the possibility of generating spurious tuples
• Third normal form (3NF): R is 2NF and all non-prime attributes are transively dependent on the primary key.
• First normal from (1NF): the domain of an attribute must include only atomic (simple, indivisible, scalar) values and the value of any attribute ina tuple must be a single value from the domain of that attribute.
A functional dependency is a property of the relation schema R not of a particular legal relation state r or R, therefor it must understands the semantics of the attributes of R.
Second normal form (2NF): R is 1NF and every non-prime attribute A in R is fully functionally dependent on the primary key of R
What are four informal guidelines that may be used to measure the quality of a relation schema design?
Reducing the need for multiple updates to maintain consistency across multiple copies of the same information.
• Disallowing the possibility of generating spurious tuples.
• Reducing the redundant information in tuples
• Reducing the NULL values in tuples
Normalization of data can be considered a process of analyzing the given relation schemas based on their functional dependencies and primary keys to achieve closure on the domain space
When mapping a binary M:N relationship type R, create a new relation S to represent R, including as foreign key attributes in S the primary keys of the relations that are the perticipating entity types (their combination in S is the composite primary key of S).
The symbol σ (sigma) is used to denote the SELECT operator in the relational algebra
A EQUIJOIN uses any of the comparison operators =, <, ≤, >, ≥, or ≠.
The symbol π (pi) is used to denote the PROJECT operation in the relational algebra.
A THETA JOIN uses the comparison operator =
SQL is both a data definition language (DDL) and a data manipulation language (DML).
A key uniquely identifies a tuple in a relation
When the DELETE operation violates a contraint, the deletion must be rejected.
Semantic integrity constarint may be enforced using mechanisms called triggers and assertions.
If a multi-table query refers to two or more attributes with the same name, we must qualify the attribute name with the table name, e.g., TABLE.Attribute, to prevent ambiguity.
A relation schema may only have one key.
Tuples in a relation are ordered.
The DELETE operation can violate referential integrity.
The INSERT operation can violate domain constraints, key constraints, entity integrity, or referential integrity.
The theortical basis of the relation data model is set theory and first-order predicate logic.
Attributes that represent the same real-world concept must have identical names in different relations.
When the INSERT operation violates a constraint, the default option is to reject the insertion.
Attributes must have unique domains.
NULL values may mean value unknown, value exits but is not available, attribute does not apply to this tuple (value undefined).
All tuples in a relation must be distinct.
The $d->query function takes an SQL command as its string argument and sends it to the database server for execution.
The _____ is a collection of several libraries of functions for enhancing PHP.
DBMS
PHP Extension and Application Repository (PEAR)
MYSQL
PHP SQL
The _____ variable is similar to cursor and iterator variables.
$d->query
post
$r
The abend function can be used to terminate a PHP program if there is an error.
The PHP function $d->nextID creates a sequence of unique values for a particular table.
Creating a database design that only stores each logical data item in only one place in the database
Normalization
Relational data model
Data abstraction
Redundancy
Stores catalog information about schemas and constraints, design decisions, usage standards, application program descriptions, and user information
Data dictionary (or data repository system or information repository)
Atomicity property
Data that is derived from the database files but not explicitly stored
Relationship
Virtual data
Virtual date
Represents an association among two or more entities
. Relationship
Represents a database as a collection of tables, where each table can be stored as a separate file
Ensures that either all the database operations in a transaction are executed or none are
Atomic property
Storing the same data multiple times
Characteristic that allows program-data independence and program-operation independence
Choose correct answer
Choose correct answer!!
Choose one
is typically used to loop over the tuples in a query result
cursor
named
positional
Impedance mismatch
iterator is associated with a query result in SQLJ by listing the attribute names and types that appear in the query
iterator lists only the attribute types that appear in a query result in SQLJ.
is the term used to refer to the problems that occur because of differences between the database model and language model
Used to choose a subset of the tuples from a relation that satisfies a selection condition
• LEFT OUTER JOIN
• SELECT
• PROJECT
• JOIN
• INTERSECTION
Selects certain columns from the table and discards the other columns
= R S keeps every tuple in the first (left) relation R; if no matching tuples is found in S, then the attributes of S in the join filled with NULL values
R S in the relational algebra combines related tuples in R and S
R S in the relational algebra includes all tuples in both R and S