Database and Database Management??数据库与数据库管...
Database and Database Management
??
数据库与数据库管理
??When you think of a microcomputer, perhaps you think of just the 'equipment itself. That is, you think of the video display screen or the keyboard. There is more to it than that.[1]The way to think about a microcomputer is as part of an information system. An information system has five parts, people, procedures, software, hardware, and data.
??People: It is easy to overlook people as one of the five parts of a microcomputer system.
??Procedures: Procedures are rules or guidelines to follow when using software, hardware, and data. Typically, these procedures are documented in manuals written by computer specialists for particular organizations.?Software and hardware manufacturers also provide manuals with their products.
??Software: Software is another name for a program or programs. A program is the step-by-step instructions that tell the computer how to do its work. The purpose of software is to convert data (unprocessed facts) into information (processed facts).
??Hardware: The hardware consists of the equipment: keyboard, monitor (video display screen), printer, the computer itself, and other devices.
??Data: Data consists of the raw, unprocessed facts. Examples of raw facts are hours you worked and your pay rate. After the data is processed through the computer, it is usually called information. An example of such information is the total wages owed you for a week' s work.
??In large computer systems, there are specialists who deal with writing procedures, developing software, and capturing data. In microcomputer systems, however, end users often perform these operations. Among the five parts, data skills are often considered the most outstanding concern.
??
Principal Features of Database
??A description of the principal features of database manager software for microcomputers follows:
??(1) Locate and Display: A basic feature of all database programs is the capability to locate records in the file quickly. In our example, the program searches each record for a match in a particular field to whatever data you specify. This is called querying a database. The records can then be displayed on the screen for viewing, updating, or editing. For example, if an employee moves, the address field needs to be changed. The record is quickly located by searching the database to find the employee record that matches the name field you specify. Once the record is displayed, the address field can be changed.[2]
??(2) Sort: Database managers make it easy to change the order of records in a file. Normally, records are entered into the database in the order they occur, such as the date a person is hired. This may not be the best way, however. There are a number of ways you can quickly rearrange the records in the file. For example, you might want to print out an entire alphabetical list of employees by last name. For tax purposes, you might want to list employees by social security number.
??(3) Calculate and Format: Many database programs contain built-in math formulas[3].?In the office, for example, you can use this feature to find the highest or lowest commissions earned. You can calculate the average of the commissions earned by the sales force in one part of the country. This information can be organized as a table and printed out in a report format.
??
Database Management System (DBMS)[4]
??The term database is often used to describe a collection of related files that is organized into an integrated, sophisticated structure that provides different people varied access to the same data[5]. For example, the Department of Motor Vehicles has a database of all the information on drivers' licenses in all countries and cities in a given state.?Some of the information in the file (e. g. a past criminal record, convictions, and the like) may be made available to police departments, other information (e. g. a balance due on a speeding ticket) may be made available to licensing bureaus, and still other information (e. g. number and type of convictions) may go to insurance companies.
??A database management system is an extremely complex set of software programs that controls the organization, storage and retrieval of data (fields, records and files) in a database. It also controls the security and integrity of the database. The DBMS accepts requests for data from the application program and instructs the operating system to transfer the appropriate data.
??When a DBMS is used, information systems can be Changed much more easily as the organization's information requirements change. New categories of data can be added to the database without disruption to the existing system.
??1. Data Security and Integrity
??Data security prevents unauthorized users from viewing or updating the database. Using passwords,?users are allowed access to the entire database or subsets of the database, called subschemas. For example, an employee database can contain all the data about an individual employee, but one group of users may be authorized to view only payroll data, while others are allowed access to only work history and medical data.
??The DBMS can maintain the integrity of the database by not allowing more than one user to update the same record at the same time. The DBMS can keep duplicate records out of the database; for example, no two customers with the same customer numbers (key field) can be entered into the database.
??2. Interactive Query
??Query languages and report writers allow users to interactively interrogate the database and analyze its data.
??3. Interactive Data Entry and Updating
??If the DBMS provides a way to interactively enter and update the database, as well as interrogate it, this capability allows for managing personal databases. However, it does not automatically leave an audit trail of actions and does not provide the kinds of controls necessary in a multi-user organization. These controls are only available when a set of application programs is customized for each data entry and updating function.
??This is one of the most common misconceptions about database management systems that are used in personal computers. Thoroughly comprehensive and sophisticated business systems can be developed in dBase[6], Paradox[7], FoxPro[8]and other DBMSs; however, they are created by experienced programmers using the DBMS's own programming language. That is not the same as users who create and manage personal files that are not part of the mainstream company system.[9]
??4. Data Independence
??When a DBMS is used, the detailed knowledge of the physical organization of the data does not have to be built into every application program. The application program asks the DBMS for data by field name; for example, a coded representation of "give me customer name and balance due" would be sent to the DBMS. Without a DBMS, the programmer must reserve space for the full structure of the record in the program. Any change in data structure requires changes in all applications programs.
??
Intelligent Database
??All DBMSs provide some data validation; for example, they will reject invalid dates entered into date fields, alphabetic data entered into money fields.?However, the real processing is left up to the application programs.
??Intelligent databases provide more validation; for example, table lookups will reject incorrect spelling or coding of items. There's no limit to the amount of processing that can be placed into an intelligent database as tong as the process is a standardized function for that data. For example, the correct sales tax can be computed by the database and applied to all orders for the customer based on the customer's billing address.
??When the validation process is left up to the individual application program, one program can allow one set of codes to be entered into a field, while another program can allow a totally different, and erroneous, set of codes. Data integrity is best served when there's one controlling source for the validation of data.
??Mainframe databases have increasingly become more intelligent, and personal computer database systems are rapidly following suit. In time, all database management systems will be "intelligent".
??
Object-Oriented Database System
??Currently, object-oriented database systems (OODBS)[10]are receiving a lot of attention from both experimental and theoretical standpoints, and there has been considerable debate about the definition of such systems.[11]
??Three points characterize the field at this stage: (i) the lack of a common data model, (ii) the lack of formal foundations and (iii) strong experimental activity.
??Whereas some people gave a clear specification of a relational database system, no such specification exists for object-oriented database systems. Opinion is slowly converging on the gross characteristics of a family of object-oriented systems, but, at present, there is no clear consensus on what an object-oriented system is, let alone an object-oriented database system.
??The second characteristic of the field is the lack of a strong theoretical framework. To compare object-oriented programming to logic programming, there is no equivalent. The need for a solid underlying theory is obvious: the semantics of concepts such as types or programs are often ill-defined.?The absence of a solid theoretical framework makes consensus on the data model almost impossible to achieve.
??Finally, a lot of experimental work is underway: people are actually building systems. Some of these systems are just prototypes, but some are commercial products. The interest in object-oriented databases seems to be driven by the needs of design support systems (e. g. CAD, CASE, Office Information Systems). These applications require databases that can handle very complex data, that can evolve gracefully, and that can provide highperformance dictated by interactive systems[12].
??The implementation situation is analogous to relational database systems in the mid- seventies (though there are more start-ups in the object-oriented case). For relational systems, even though there were some disagreements on a few specific points, such as the form of the query language, or whether relations should be sets or bags, these distinctions were in most cases superficial and there was a common underlying model. People were mainly developing implementation technology. Today, we are simultaneously choosing the specification of the system and producing the technology to support its implementation.
??Thus, with respect to the specification of the system, we should take a Darwinian approach[13]: we hope that, out of the set of experimental prototypes being built, a fit model will emerge. People also hope that viable implementation technology for that model will evolve simultaneously.
??
Structured Query Language
??Structured Query Language (SOL)[14]is a database computer language designed for the retrieval and management of data in relational database management systems (RDBMS)[15], database schema creation and modification, and database object access control management.
??SOL is a programming language for querying and modifying data and managing databases. SOL was standardized first by the ANSI and later by the ISO[16]. Most database management systems implement a majority of one of these standards and add their proprietary extensions. SOL allows the retrieval, insertion, updating, and deletion of data. A database management system also includes management and administrative functions. Most—if not all—implementations also include a command-line interface (CLI)[17]that allows for the entry and execution of the language commands, as opposed to only providing an application programming interface (API) intended for access from a graphical user interface (GUI).
??Originally designed as a declarative query and data manipulation language, variations of SOL have been created by SOL database management system (DBMS) vendors that add procedural constructs, flow-of-control statements, user-defined data types, and various other language extensions. With the release of the SOL. 1999 standard, many such extensions were formally adopted as part of the SOL language via the SOL/ Persistent Stored Modules (SOL/PSM)[18]portion of the standard.
??Notes
??[1] There is more to it than that实际上微机(的含义)远不止这些。
??[2] Once the record is displayed, the address field can be changed.当这个记录显示在屏幕上时,地址字段就可以修改了。Once作连词,“一旦……”。Once he puts forward this proposal, I will take it into account. 一旦他提出这个请求,我会考虑。
??[3] 许多数据管理程序包含内在的数据公式。
??[4] DBMS Database Management System数据库管理系统。
??[5] ……这个复杂的结构对于相同的数据可针对不同的人提供不同的存取渠道。
??[6] dBase 一种数据库软件名称。
??[7] Paradox 一种数据库软件名称。
??[8] Foxpro 一种数据库软件名称。
??[9] 这与建立和管理公司主要系统部分的个人文件的用户有所不同。
??[10] object-oriented database systems(OODBS)面向对象的数据库系统。
??[11] 有关此类系统的定义还存在着很多的争议。
??[12] 注意这个句子中的三个that,它引导三个并列的定语从句。
??[13] Darwinian approach达尔文的进化论观点。
??[14] Structured Query Language csoL)结构化查询语言。它是目前使用最广泛的数据库语言,SQL由IBM研发,后来被许多数据库软件公司接受并成为业内的一个标准。
??[15] relational database management system关系型数据库管理系统。它通过数据、关系和对数据的约束三者组成的数据模型来存放和管理数据。
??[16] ANSI(American National Standards Institute)美国国家标准学会;ISO(International Organization for Standardization)国际标准化组织。
??[17] Command Line Interface(CLI)命令行界面
??[18] Persistent Stored Modules (SQL/PSM)持久存储模块