数据库管理外文翻译
SQL数据库外文翻译--数据库的工作
Working with DatabasesThis chapter describes how to use SQL statements in embedded applications to control databases. There are three database statements that set up and open databases for access: SET DATABASE declares a database handle, associates the handle with an actual database file, and optionally assigns operational parameters for the database.SET NAMES optionally specifies the character set a client application uses for CHAR, VARCHAR, and text Blob data. The server uses this information totransli terate from a database‟s default character set to the client‟s character set on SELECT operations, and to transliterate from a client application‟s character set to the database character set on INSERT and UPDATE operations.g CONNECT opens a database, allocates system resources for it, and optionally assigns operational parameters for the database.All databases must be closed before a program ends. A database can be closed by using DISCONNECT, or by appending the RELEASE option to the final COMMIT or ROLLBACK in a program. Declaring a databaseBefore a database can be opened and used in a program, it must first be declared with SET DATABASE to:CHAPTER 3 WORKING WITH DATABASES. Establish a database handle. Associate the database handle with a database file stored on a local or remote node.A database handle is a unique, abbreviated alias for an actual database name. Database handles are used in subsequent CONNECT, COMMIT RELEASE, and ROLLBACK RELEASE statements to specify which databases they should affect. Except in dynamic SQL (DSQL) applications, database handles can also be used inside transaction blocks to qualify, or differentiate, table names when two or more open databases contain identically named tables.Each database handle must be unique among all variables used in a program. Database handles cannot duplicate host-language reserved words, and cannot be InterBase reserved words.The following statement illustrates a simple database declaration:EXEC SQLSET DATABASE DB1 = ‟employee.gdb‟;This database declaration identifies the database file, employee.gdb, as a database the program uses, and assigns the database a handle, or alias, DB1.If a program runs in a directory different from the directory that contains the database file, then the file name specification in SET DATABASE must include a full path name, too. For example, the following SET DATABASE declaration specifies the full path to employee.gdb:EXEC SQLSET DATABASE DB1 = ‟/interbase/examples/employee.gdb‟;If a program and a database file it uses reside on different hosts, then the file name specification must also include a host name. The following declaration illustrates how a Unix host name is included as part of the database file specification on a TCP/IP network:EXEC SQLSET DATABASE DB1 = ‟jupiter:/usr/interbase/examples/employee.gdb‟;On a Windows network that uses the Netbeui protocol, specify the path as follows: EXEC SQLSET DATABASE DB1 = ‟//venus/C:/Interbase/examples/employee.gdb‟; DECLARING A DATABASEEMBEDDED SQL GUIDE 37Declaring multiple databasesAn SQL program, but not a DSQL program, can access multiple databases at the same time. In multi-database programs, database handles are required. A handle is used to:1. Reference individual databases in a multi-database transaction.2. Qualify table names.3. Specify databases to open in CONNECT statements.Indicate databases to close with DISCONNECT, COMMIT RELEASE, and ROLLBACK RELEASE.DSQL programs can access only a single database at a time, so database handle use is restricted to connecting to and disconnecting from a database.In multi-database programs, each database must be declared in a separate SET DATABASE statement. For example, the following code contains two SET DATABASE statements:. . .EXEC SQLSET DATABASE DB2 = ‟employee2.gdb‟;EXEC SQLSET DATABASE DB1 = ‟employee.gdb‟;. . .4Using handles for table namesWhen the same table name occurs in more than one simultaneously accessed database, a database handle must be used to differentiate one table name from another. The database handle is used as a prefix to table names, and takes the formhandle.table.For example, in the following code, the database handles, TEST and EMP, are used to distinguish between two tables, each named EMPLOYEE:. . .EXEC SQLDECLARE IDMATCH CURSOR FORSELECT TESTNO INTO :matchid FROM TEST.EMPLOYEEWHERE TESTNO > 100;EXEC SQLDECLARE EIDMATCH CURSOR FORSELECT EMPNO INTO :empid FROM EMP.EMPLOYEEWHERE EMPNO = :matchid;. . .CHAPTER 3 WORKING WITH DATABASES38 INTERBASE 6IMPORTANTThis use of database handles applies only to embedded SQL applications. DSQL applications cannot access multiple databases simultaneously.4Using handles with operationsIn multi-database programs, database handles must be specified in CONNECT statements to identify which databases among several to open and prepare for use in subsequent transactions.Database handles can also be used with DISCONNECT, COMMIT RELEASE, and ROLLBACKRELEASE to specify a subset of open databases to close.To open and prepare a database w ith CONNECT, see “Opening a database” on page 41.To close a database with DISCONNECT, COMMIT RELEASE, or ROLLBACK RELEASE, see“Closing a database” on page 49. To learn more about using database handles in transactions, see “Accessing an open database” on p age 48.Preprocessing and run time databasesNormally, each SET DATABASE statement specifies a single database file to associate with a handle. When a program is preprocessed, gpre uses the specified file to validate the program‟s table and column referenc es. Later, when a user runs the program, the same database file is accessed. Different databases can be specified for preprocessing and run time when necessary.4Using the COMPILETIME clause A program can be designed to run against any one of several identically structured databases. In other cases, the actual database that a program will use at runtime is not available when a program is preprocessed and compiled. In such cases, SET DATABASE can include a COMPILETIME clause to specify a database for gpre to test against during preprocessing. For example, the following SET DATABASE statement declares that employee.gdb is to be used by gpre during preprocessing: EXEC SQLSET DATABASE EMP = COMPILETIME ‟employee.gdb‟;IMPORTANTThe file specification that follows the COMPILETIME keyword must always be a hard-coded, quoted string.DECLARING A DATABASEEMBEDDED SQL GUIDE 39When SET DATABASE uses the COMPILETIME clause, but no RUNTIME clause, and does not specify a different database file specification in a subsequent CONNECT statement, the same database file is used both for preprocessing and run time. To specify different preprocessing and runtime databases with SET DATABASE, use both the COMPILETIME andRUNTIME clauses.4Using the RUNTIME clauseWhen a database file is specified for use during preprocessing, SET DATABASE can specify a different database to use at run time by including the RUNTIME keyword and a runtime file specification:EXEC SQLSET DATABASE EMP = COMPILETIME ‟employee.gdb‟RUNTIME ‟employee2.gdb‟;The file specification that follows the RUNTIME keyword can be either ahard-coded, quoted string, or a host-language variable. For example, the following C code fragment prompts the user for a database name, and stores the name in a variable that is used later in SET DATABASE:. . .char db_name[125];. . .printf("Enter the desired database name, including node and path):\n");gets(db_name);EXEC SQLSET DATABASE EMP = COMPILETIME ‟employee.gdb‟ RUNTIME : db_name; . . .Note host-language variables in SET DATABASE must be preceded, as always, by a colon.Controlling SET DATABASE scopeBy default, SET DATABASE creates a handle that is global to all modules in an application.A global handle is one that may be referenced in all host-language modules comprising the program. SET DATABASE provides two optional keywords to change the scope of a declaration:g STATIC limits declaration scope to the module containing the SET DATABASE statement. No other program modules can see or use a database handle declared STATIC.CHAPTER 3 WORKING WITH DATABASES40 INTERBASE 6EXTERN notifies gpre that a SET DATABASE statement in a module duplicates a globally-declared database in another module. If the EXTERN keyword is used, then another module must contain the actual SET DATABASE statement, or an error occurs during compilation.The STATIC keyword is used in a multi-module program to restrict database handle access to the single module where it is declared. The following example illustrates the use of theSTATIC keyword:EXEC SQLSET DATABASE EMP = STATIC ‟employee.gdb‟;The EXTERN keyword is used in a multi-module program to signal that SET DATABASE in one module is not an actual declaration, but refers to a declaration made in a different module. Gpre uses this information during preprocessing. The following example illustrates the use of the EXTERN keyword:EXEC SQLSET DATABASE EMP = EXTERN ‟employee.gdb‟;If an application contains an EXTERN reference, then when it is used at run time, the actual SET DATABASE declaration must be processed first, and the database connected before other modules can access it.A single SET DATABASE statement can contain either the STATIC or EXTERN keyword, but not both. A scope declaration in SET DATABASE applies to both COMPILETIME and RUNTIME databases.Specifying a connection character setWhen a client application connects to a database, it may have its own character set requirements. The server providing database access to the client does not know about these requirements unless the client specifies them. The client application specifies its character set requirement using the SET NAMES statement before it connects to the database.SET NAMES specifies the character set the server should use when translating data from the database to the client application. Similarly, when the client sends data to the database, the server translates the data from the client‟s character set to the database‟s default character set (or the character set for an individual column if it differs from the databas e‟s default character set). For example, the following statements specify that the client is using the DOS437 character set, then connect to the database:EXEC SQLOPENING A DATABASEEMBEDDED SQL GUIDE 41SET NAMES DOS437;EXEC SQLCONNECT ‟europe.gdb‟ USER ‟JAMES‟ PASSWORD ‟U4EEAH‟;For more information about character sets, see the Data Definition Guide. For the complete syntax of SET NAMES and CONNECT, see the Language Reference. Opening a databaseAfter a database is declared, it must be attached with a CONNECT statement before it can be used. CONNECT:1. Allocates system resources for the database.2. Determines if the database file is local, residing on the same host where the application itself is running, or remote, residing on a different host.3. Opens the database and examines it to make sure it is valid.InterBase provides transparent access to all databases, whether local or remote. If the database structure is invalid, the on-disk structure (ODS) number does not correspond to the one required by InterBase, or if the database is corrupt, InterBase reports an error, and permits no further access. Optionally, CONNECT can be used to specify:4. A user name and password combination that is checked against the server‟s security database before allowing the connect to succeed. User names can be up to 31 characters.Passwords are restricted to 8 characters.5. An SQL role name that the user adopts on connection to the database, provided that the user has previously been granted membership in the role. Regardless of role memberships granted, the user belongs to no role unless specified with this ROLE clause.The client can specify at most one role per connection, and cannot switch roles except by reconnecting.6. The size of the database buffer cache to allocate to the application when the default cache size is inappropriate.Using simple CONNECT statementsIn its simplest form, CONNECT requires one or more database parameters, each specifying the name of a database to open. The name of the database can be a: Database handle declared in a previous SET DATABASE statement.CHAPTER 3 WORKING WITH DATABASES42 INTERBASE 61. Host-language variable.2. Hard-coded file name.4Using a database handleIf a program uses SET DATABASE to provide database handles, those handles should be used in subsequent CONNECT statements instead of hard-coded names. For example,. . .EXEC SQLSET DATABASE DB1 = ‟employee.gdb‟;EXEC SQLSET DATABASE DB2 = ‟employee2.gdb‟;EXEC SQLCONNECT DB1;EXEC SQLCONNECT DB2;. . .There are several advantages to using a database handle with CONNECT:1. Long file specifications can be replaced by shorter, mnemonic handles.2. Handles can be used to qualify table names in multi-database transactions. DSQL applications do not support multi-database transactions.3. Handles can be reassigned to other databases as needed.4. The number of database cache buffers can be specified as an additional CONNECT parameter.For more information about setting the number of database cache buffers, see “Setting d atabase cache buffers” on page 47. 4Using strings or host-language variables Instead of using a database handle, CONNECT can use a database name supplied at run time. The database name can be supplied as either a host-language variable or a hard-coded, quoted string.The following C code demonstrates how a program accessing only a single database might implement CONNECT using a file name solicited from a user at run time:. . .char fname[125];. . .printf(‟Enter the desired database name, including nodeand path):\n‟);OPENING A DATABASEEMBEDDED SQL GUIDE 43gets(fname);. . .EXEC SQLCONNECT :fname;. . .TipThis technique is especially useful for programs that are designed to work with many identically structured databases, one at a time, such as CAD/CAM or architectural databases.MULTIPLE DATABASE IMPLEMENTATIONTo use a database specified by the user as a host-language variable in a CONNECT statement in multi-database programs, follow these steps:1. Declare a database handle using the following SET DATABASE syntax:EXEC SQLSET DATABASE handle = COMPILETIME ‟ dbname‟;Here, handle is a hard-coded database handle supplied by the programmer, dbnameis a quoted, hard-coded database name used by gpre during preprocessing.2. Prompt the user for a database to open.3. Store the database name entered by the user in a host-language variable.4. Use the handle to open the database, associating the host-language variable with the handle using the following CONNECT syntax:EXEC SQLCONNECT : variable AS handle;The following C code illustrates these steps:. . .char fname[125];. . .EXEC SQLSET DATABASE DB1 = ‟employee.gdb‟;printf("Enter the desired database name, including nodeand path):\n");gets(fname);EXEC SQLCONNECT :fname AS DB1;. . .CHAPTER 3 WORKING WITH DATABASES44 INTERBASE 6In this example, SET DATABASE provides a hard-coded database file name for preprocessing with gpre. When a user runs the program, the database specified in the variable, fname, is used instead. 4Using a hard-coded database namesIN SINGE-DATABASE PROGRAMSIn a single-database program that omits SET DATABASE, CONNECT must contain a hard-coded, quoted file name in the following format:EXEC SQLCONNECT ‟[ host[ path]] filename‟; host is required only if a program and a dat abase file it uses reside on different nodes.Similarly, path is required only if the database file does not reside in the current working directory. For example, the following CONNECT statement contains ahard-coded file name that includes both a Unix host name and a path name:EXEC SQLCONNECT ‟valdez:usr/interbase/examples/employee.gdb‟;Note Host syntax is specific to each server platform.IMPORTANT A program that accesses multiple databases cannot use this form of CONNECT.IN MULTI-DATABASE PROGRAMSA program that accesses multiple databases must declare handles for each of them in separate SET DATABASE statements. These handles must be used in subsequent CONNECT statements to identify specific databases to open:. . .EXEC SQLSET DATABASE DB1 = ‟employee.gdb‟;EXEC SQLSET DATABASE DB2 = ‟employee2.gdb‟;EXEC SQLCONNECT DB1;EXEC SQLCONNECT DB2;. . .Later, when the program closes these databases, the database handles are no longer in use. These handles can be reassigned to other databases by hard-coding a file name in a subsequent CONNECT statement. For example,OPENING A DATABASEEMBEDDED SQL GUIDE 45. . .EXEC SQLDISCONNECT DB1, DB2;EXEC SQLCONNECT ‟project.gdb‟ AS DB1;. . .Additional CONNECT syntaxCONNECT supports several formats for opening databases to provide programming flexibility. The following table outlines each possible syntax, provides descriptions and examples, and indicates whether CONNECT can be used in programs that access single or multiple databases:For a complete discussion of CONNECT syntax and its uses, see the Language Reference.Syntax Description ExampleSingle accessMultiple accessCONNECT …dbfile‟; Opens a single, hard-coded database file, dbfile.EXEC SQLCONNECT …employee.gdb‟;Yes NoCONNECT handle; Opens the database file associated with a previously declared database handle. This is the preferred CONNECT syntax.EXEC SQLCONNECT EMP;Yes YesCONNECT …dbfile‟ AS handle;Opens a hard-coded database file, dbfile, and assigns a previously declared database handle to it.EXEC SQLCONNECT …employee.gdb‟AS EMP;Yes Yes CONNECT :varname AS handle;Opens the database file stored in the host-language variable, varname, and assigns a previously declared database handle to it.EXEC SQL CONNECT :fname AS EMP;Yes YesTABLE 3.1 CONNECT syntax summaryCHAPTER 3 WORKING WITH DATABASES46 INTERBASE 6Attaching to multiple databasesCONNECT can attach to multiple databases. To open all databases specified in previous SETDATABASE statements, use either of the following CONNECT syntax options: EXEC SQLCONNECT ALL;EXEC SQLCONNECT DEFAULT;CONNECT can also attach to a specified list of databases. Separate each database request from others with commas. For example, the following statement opens two databases specified by their handles:EXEC SQLCONNECT DB1, DB2;The next statement opens two hard-coded database files and also assigns them to previously declared handles:EXEC SQLCONNECT ‟employee.gdb‟ AS DB1, ‟employee2.gdb‟ AS DB2;Tip Opening multiple databases with a single CONNECT is most effective when a program‟s database access is simple and clear. In complex programs that open and close several databases, that substitute database names with host-language variables, or that assign multiple handles to the same database, use separate CONNECT statements to make program code easier to read, debug, and modify.Handling CONNECT errors. The WHENEVER statement should be used to trap and handle runtime errors that occur during database declaration. The following C code fragment illustrates an error-handling routine that displays error messages and ends the program in an orderly fashion:. . .EXEC SQLWHENEVER SQLERRORGOTO error_exit;. . .OPENING A DATABASEEMBEDDED SQL GUIDE 47:error_exitisc_print_sqlerr(sqlcode, status_vector);EXEC SQLDISCONNECT ALL;exit(1);. . .For a complete discussion of SQL error handling, see Chapter 12, “Error Handling and Recovery.”数据库的工作这章描述怎样使用在嵌入式应用过程中的SQL语句控制数据库。
外文翻译---数据库管理
英文资料翻译资料出处:From /china/ database英文原文:Database ManagementDatabase (sometimes spelled database) is also called an electronic database, referring to any collections of data, or information, that is specially organized for rapid search and retrieval by a computer. Databases are structured to facilitate the storage, retrieval modification and deletion of data in conjunction with various data-processing operations. Database can be stored on magnetic disk or tape, optical disk, or some other secondary storage device.A database consists of a file or a set of files. The information in the these files may be broken down into records, each of which consists of one or more fields are the basic units of data storage, and each field typically contains information pertaining to one aspect or attribute of the entity described by the database. Using keywords and various sorting commands, users can rapidly search, rearrange, group, and select the fields in many records to retrieve or create reports on particular aggregates of data.Database records and files must be organized to allow retrieval of the information. Early system were arranged sequentially (i.e., alphabetically, numerically, or chronologically); the development of direct-access storage devices made possible random access to data via indexes. Queries are the main way users retrieve database information. Typically the user provides a string of characters, and the computer searches the database for a corresponding sequence and provides the source materials in which those characters appear. A user can request, for example, all records in which the content of the field for a person’s last name is the word Smith.The many users of a large database must be able to manipulate the information within it quickly at any given time. Moreover, large business and other organizations tend to build up many independent files containing related and even overlapping data, and their data, processing activities often require the linking of data from several files.Several different types of database management systems have been developed to support these requirements: flat, hierarchical, network, relational, and object-oriented.In flat databases, records are organized according to a simple list of entities; many simple databases for personal computers are flat in structure. The records in hierarchical databases are organized in a treelike structure, with each level of records branching off into a set of smaller categories. Unlike hierarchical databases, which provide single links between sets of records at different levels, network databases create multiple linkages between sets by placing links, or pointers, to one set of records in another; the speed and versatility of network databases have led to their wide use in business. Relational databases are used where associations among files or records cannot be expressed by links; a simple flat list becomes one table, or “relation”, and multiple relations can be mathematically associated to yield desired information. Object-oriented databases store and manipulate more complex data structures, called “objects”, which are organized into hierarchical classes that may inherit properties from classes higher in the chain; this database structure is the most flexible and adaptable.The information in many databases consists of natural-language texts of documents; number-oriented database primarily contain information such as statistics, tables, financial data, and raw scientific and technical data. Small databases can be maintained on personal-computer systems and may be used by individuals at home. These and larger databases have become increasingly important in business life. Typical commercial applications include airline reservations, production management, medical records in hospitals, and legal records of insurance companies. The largest databases are usually maintained by governmental agencies, business organizations, and universities. These databases may contain texts of such materials as catalogs of various kinds. Reference databases contain bibliographies or indexes that serve as guides to the location of information in books, periodicals, and other published literature. Thousands of these publicly accessible databases now exist, covering topics ranging from law, medicine, and engineering to news and current events, games, classified advertisements, and instructional courses. Professionals such as scientists,doctors, lawyers, financial analysts, stockbrokers, and researchers of all types increasingly rely on these databases for quick, selective access to large volumes of information.一、DBMS Structuring TechniquesSequential, direct, and other file processing approaches are used to organize and structure data in single files. But a DBMS is able to integrate data elements from several files to answer specific user inquiries for information. That is, the DBMS is able to structure and tie together the logically related data from several large files.Logical Structures. Identifying these logical relationships is a job of the data administrator. A data definition language is used for this purpose. The DBMS may then employ one of the following logical structuring techniques during storage access, and retrieval operations.List structures. In this logical approach, records are linked together by the use of pointers. A pointer is a data item in one record that identifies the storage location of another logically related record. Records in a customer master file, for example, will contain the name and address of each customer, and each record in this file is identified by an account number. During an accounting period, a customer may buy a number of items on different days. Thus, the company may maintain an invoice file to reflect these transactions. A list structure could be used in this situation to show the unpaid invoices at any given time. Each record in the customer in the invoice file. This invoice record, in turn, would be linked to later invoices for the customer. The last invoice in the chain would be identified by the use of a special character as a pointer.Hierarchical (tree) structures. In this logical approach, data units are structured in multiple levels that graphically resemble an “upside down”tree with the root at the top and the branches formed below. There’s a superior-subordinate relationship in a hierarchical (tree) structure. Below the single-root data component are subordinate elements or nodes, each of which, in turn, “own”one or more other elements (or none). Each element or branch in this structure below the root has only a single owner. Thus, a customer owns an invoice, and the invoice has subordinate items. Thebranches in a tree structure are not connected.Network Structures. Unlike the tree approach, which does not permit the connection of branches, the network structure permits the connection of the nodes in a multidirectional manner. Thus, each node may have several owners and may, in turn, own any number of other data units. Data management software permits the extraction of the needed information from such a structure by beginning with any record in a file.Relational structures. A relational structure is made up of many tables. The data are stored in the form of “relations”in these tables. For example, relation tables could be established to link a college course with the instructor of the course, and with the location of the class.To find the name of the instructor and the location of the English class, the course/instructor relation is searched to get the name (“Fitt”), and the course/locati on relation is a relatively new database structuring approach that’s expected to be widely implemented in the future.Physical Structures. People visualize or structure data in logical ways for their own purposes. Thus, records R1 and R2 may always be logically linked and processed in sequence in one particular application. However, in a computer system it’s quite possible that these records that are logically contiguous in one application are not physically stored together. Rather, the physical structure of the records in media and hardware may depend not only on the I/O and storage devices and techniques used, but also on the different logical relationships that users may assign to the data found in R1and R2. For example, R1 and R2 may be records of credit customers who have shipments send to the same block in the same city every 2 weeks. From the shipping department manager’s perspective, then, R1 and R2 are sequential entries on a geographically organized shipping report. But in the A/R application, the customers represented by R1 and R2 may be identified, and their accounts may be processed, according to their account numbers which are widely separated. In short, then, the physical location of the stored records in many computer-based information systems is invisible to users.二、Database Management Features of OracleOracle includes many features that make the database easier to manage. We’ve divided the discussion in this section into three categories: Oracle Enterprise Manager, add-on packs, backup and recovery.1.Oracle Enterprise ManagerAs part of every Database Server, Oracle provides the Oracle Enterprise Manager (EM), a database management tool framework with a graphical interface used to manage database users, instances, and features (such as replication) that can provide additional information about the Oracle environment.Prior to the Oracle8i database, the EM software had to be installed on Windows 95/98 or NT-based systems and each repository could be accessed by only a single database manager at a time. Now you can use EM from a browser or load it onto Windows 95/98/2000 or NT-based systems. Multiple database administrators can access the EM repository at the same time. In the EM repository for Oracle9i, the super administrator can define services that should be displayed on other administrators’consoles, and management regions can be set up.2. Add-on packsSeveral optional add-on packs are available for Oracle, as described in the following sections. In addition to these database-management packs, management packs are available for Oracle Applications and for SAP R/3.(1) standard Management PackThe Standard Management Pack for Oracle provides tools for the management of small Oracle databases (e.g., Oracle Server/Standard Edition). Features include support for performance monitoring of database contention, I/O, load, memory use and instance metrics, session analysis, index tuning, and change investigation and tracking.(2) Diagnostics PackYou can use the Diagnostic Pack to monitor, diagnose, and maintain the health of Enterprise Edition databases, operating systems, and applications. With both historical and real-time analysis, you can automatically avoid problems before theyoccur. The pack also provides capacity planning features that help you plan and track future system-resource requirements.(3)Tuning PackWith the Tuning Pack, you can optimise system performance by identifying and tuning Enterprise Edition databases and application bottlenecks such as inefficient SQL, poor data design, and the improper use of system resources. The pack can proactively discover tuning opportunities and automatically generate the analysis and required changes to tune the systems.(4) Change Management PackThe Change Management Pack helps eliminate errors and loss of data when upgrading Enterprise Edition databases to support new applications. It impact and complex dependencies associated with application changes and automatically perform database upgrades. Users can initiate changes with easy-to-use wizards that teach the systematic steps necessary to upgrade.(5) AvailabilityOracle Enterprise Manager can be used for managing Oracle Standard Edition and/or Enterprise Edition. Additional functionality is provided by separate Diagnostics, Tuning, and Change Management Packs.3. Backup and RecoveryAs every database administrator knows, backing up a database is a rather mundane but necessary task. An improper backup makes recovery difficult, if not impossible. Unfortunately, people often realize the extreme importance of this everyday task only when it is too late –usually after losing business-critical data due to a failure of a related system.The following sections describe some products and techniques for performing database backup operations.(1) Recovery ManagerTypical backups include complete database backups (the most common type), database backups, control file backups, and recovery of the database. Previously,Oracle’s Enterprise Backup Utility (EBU) provided a similar solution on some platforms. However, RMAN, with its Recovery Catalog stored in an Oracle database, provides a much more complete solution. RMAN can automatically locate, back up, restore, and recover databases, control files, and archived redo logs. RMAN for Oracle9i can restart backups and restores and implement recovery window policies when backups expire. The Oracle Enterprise Manager Backup Manager provides a GUI-based interface to RMAN.(2) Incremental backup and recoveryRMAN can perform incremental backups of Enterprise Edition databases. Incremental backups back up only the blocks modified since the last backup of a datafile, tablespace, or database; thus, they’re smaller and faster than complete backups. RMAN can also perform point-in-time recovery, which allows the recovery of data until just prior to a undesirable event.(3) Legato Storage ManagerVarious media-management software vendors support RMAN. Oracle bundles Legato Storage Manager with Oracle to provide media-management services, including the tracking of tape volumes, for up to four devices. RMAN interfaces automatically with the media-management software to request the mounting of tapes as needed for backup and recovery operations.(4)AvailabilityWhile basic recovery facilities are available for both Oracle Standard Edition and Enterprise Edition, incremental backups have typically been limited to Enterprise Edition.Data IndependenceAn important point about database systems is that the database should exist independently of any of the specific applications. Traditional data processing applications are data dependent. COBOL programs contain file descriptions and record descriptions that carefully describe the format and characteristics of the data.Users should be able to change the structure of the database without affecting the applications that use it. For example, suppose that the requirements of yourapplications change. A simple example would be expanding ZIP codes from five digits to nine digits. On a traditional approach using COBOL programs each individual COBOL application program that used that particular field would have to be changed, recompiled, and retested. The programs would be unable to recognize or access a file that had been changed and contained a new data description; this, in turn, might cause disruption in processing unless the change were carefully planned.Most database programs provide the ability to change the database structure by simply changing the ZIP code field and the data-entry form. In this case, data independence allows for minimal disruption of current and existing applications. Users can continue to work and can even ignore the nine-digit code if they choose. Eventually, the file will be converted to the new nine-digit ZIP code, but the ease with which the changeover takes place emphasizes the importance of data independence.Data IntegrityData integrity refers to the accuracy, correctness, or validity of the data in the database. In a database system, data integrity means safeguarding the data against invalid alteration or destruction arise. The first has to do with many users accessing the database concurrently. For example, if thousands of travel agents and airline reservation clerks are accessing the database concurrently. For example, if thousands of travel agents and airline reservation clerks are accessing the same database at once, and two agents book the same seat on the same flight, the first agent’s booking will be lost. In such case the technique of locking the record or field provides the means for preventing one user from accessing a record while another user is updating the same record.The second complication relates to hardwires, software, or human error during the course of processing and involves database transactions treated as a single . For example, an agent booking an airline reservation involves several database updates (i.e., adding the passenger’s name and address and updating the seats-available field), which comprise a single transaction. The database transaction is not considered to be completed until all updates have been completed; otherwise, none of the updates will be allowed to take place.Data SecurityData security refers to the protection of a database against unauthorized or illegal access or modification. For example, a high-level password might allow a user to read from, write to, and modify the database structure, whereas a low-level password history of the modifications to a database-can be used to identify where and when a database was tampered with and it can also be used to restore the file to its original condition.三、Choosing between Oracle and SQL ServerI have to decide between using the Oracle database and WebDB vs. Microsoft SQL Server with Visual Studio. This choice will guide our future Web projects. What are the strong points of each of these combinations and what are the negatives?Lori: Making your decision will depend on what you already have. For instance, if you want to implement a Web-based database application and you are a Windows-only shop, SQL Server and the Visual Studio package would be fine. But the Oracle solution would be better with mixed platforms.There are other things to consider, such as what extras you get and what skills are required. WebDB is a content management and development tool that can be used by content creators, database administrators, and developers without any programming experience. WebDB is a browser-based tool that helps ease content creation and provides monitoring and maintenance tools. This is a good solution for organizations already using Oracle. Oracle also scales better than SQL Server, but you will need to have a competent Oracle administrator on hand.The SQL Sever/Visual Studio approach is more difficult to use and requires an experienced object-oriented programmer or some extensive training. However, you do get a fistful of development tools with Visual Studio: Visual Basic, Visual C++, and Visual InterDev for only $1,619. Plus, you will have to add the cost of the SQL Server, which will run you $1,999 for 10 clients or $3,999 for 25 clients-a less expensive solution than Oracle’s.Oracle also has a package solution that starts at $6,767, depending on the platform selected. The suite includes not only WebDB and Oracle8i butalso other tools for development such as the Oracle application server, JDeveloper, and Workplace Templates, and the suite runs on more platforms than the Microsoft solution does. This can be a good solution if you are a start-up or a small to midsize business. Buying these tools in a package is less costly than purchasing them individually.Much depends on your skill level, hardware resources, and budget. I hope this helps in your decision-making.Brooks: I totally agree that this decision depends in large part on what infrastructure and expertise you already have. If the decision is close, you need to figure out who’s going to be doing the work and what your priorities are.These two products have different approaches, and they reflect the different personalities of the two vendors. In general, Oracle products are designed for very professional development efforts by top-notch programmers and project leaders. The learning period is fairly long, and the solution is pricey; but if you stick it out you will ultimately have greater scalability and greater reliability.If your project has tight deadlines and you don’t have the time and/or money to hire a team of very expensive, very experienced developers, you may find that the Oracle solution is an easy way to get yourself in trouble. There’s nothing worse than a poorly developed Oracle application.What Microsoft offers is a solution that’s aimed at rapid development and low-cost implementation. The tools are cheaper, the servers you’ll run it on are cheaper, and the developers you need will be cheaper. Choosing SQL Sever and Visual Studio is an excellent way to start fast.Of course, there are trade-offs. The key problem I have with Visual Studio and SQL Server is that you’ll be tied to Microsoft operating systems and Intel hardware. If the day comes when you need to support hundreds of thousands of users, you really don’t have anywhere to go other than buying hundreds of servers, which is a management nightmare.If you go with the Microsoft approach, it sounds like you may not need morethan Visual Interdev. If you already know that you’re going to be developing ActiveX components in Visual Basic or Visual C++, that’s warning sign that maybe you should look at the Oracle solution more closely.I want to emphasize that, although these platforms have their relative strengths and weaknesses, if you do it right you can build a world-class application on either one. So if you have an organizational bias toward one of the vendors, by all means go with it. If you’re starting out from scratch, you’re going to have to ask yourself whether your organization leans more toward perfectionism or pragmatism, and realize that both “isms”have their faults.中文译文:数据库管理数据库(也称DataBase)也称为电子数据库,是指由计算机特别组织的用下快速查找和检索的任意的数据或信息集合。
管理信息系统外文翻译 (2)
毕业设计(论文)外文文献翻译毕业设计(论文)题目翻译(1)题目管理信息系统翻译(2)题目数据库管理系统的介绍学院计算机学院专业姓名班级学号Management Information SystemIt is the MIS(Management Information System ) that we constantly say that the management information system , and is living to emphasize the administration , and emphasizes that it changes into more and more significantly and more and more is universalized in the contemporary community of message . MIS is a fresh branch of learning, and it leaped over several territories, and for instance administers scientific knowledge, system science, operational research, statistic along with calculating machine scientific knowledge. Is living on these the branches of learning base, and takes shape that the message is gathered and the process means, thereby take shape the system that the crossbar mingles.1. The Management Information System Summary20 centuries, in the wake of the flourishing development of whole world economy, numerous economists propose the fresh administration theory one by one. Xi Men propose the administration and was dependent on idea to message and decision of strategic importance in the 50’s 20 centuries. The dimension of simultaneous stage is admitted issuing cybernetics, and he thinks that the administration is a control procedure. In 1958, Ger. write the lid: “ the administration shall obtain without delay with the lower cost and exact message, completes the better control “. This particular period, the calculating machine starts being used accountancy work. The data handling term has risen.In 1970, Walter T.Kennevan give administration that has raised the only a short while ago information system term to get off a definition: “ either the cover of the book shape with the discount, is living appropriately time to director, staff member along with the outside world personnel staff supplies the past and now and message that internal forecasting the approaching relevant business reaches such environment, in order to assist they make a strategic de cision”. Is living in this definition to emphasize, yet does not emphasize using the pattern, and mention the calculating machine application in the way of the message support decision of strategic importance.In 1985, admonishing information system originator, title Buddhist nun Su Da university administration professor Gordon B.Davis give the management information system relatively integrated definition, in immediate future “ administer the information system is one use calculating machine software and hardware resources along with data bank man - the engine system.It be able to supply message support business either organization operation, administration or the decision making function. Comprehensive directions of this definition management information system target and meritorious service capacity and component, but also make known the management information system to be living the level that attains at that time.1.1 The Developing History of MISThe management information system is living the most primarily phase iscounting the system, the substance which researched is the regular pattern on face between the incremental data, it what may separate into the data being mutually related and more not being mutually related series, afterwards act as the data conversion to message.The second stage is the data are replaced the system, and it is that the SABRE that the American airline company put up to in the 50’s 20 centuries subscribes to book the bank note system that such type stands for. It possess 1008 bank note booking spots, and may access 600000 traveler keep the minutes and 27000 flight segments record. Its operation is comparatively more complex, and is living whatever one “spot ”wholly to check whether to be the free place up some one flight n umbers. Yet through approximately attending school up to say, it is only a data and replaces the system, for instance it can not let know you with the bank note the selling velocity now when the bank note shall be sell through, thereby takes remedying the step. As a result it also is administer information system rudimentary phase.The third phase is the status reports system, and it may separate into manufacture state speech and service state and make known and research the systems such as status reports and so on. Its type stands for the production control system that is the IBM corporation to the for instance manufacture state speech system. As is known to all, the calculating machine corporation that the IBM corporation is the largest on the world, in 1964 it given birth to middle-sized calculating machine IBM360 and causes the calculating machine level lift a step, yet form that the manufacture administration work. Yet enormously complicatedly dissolve moreover, the calculating machine overtakes 15000 difference components once more, in addition the plant of IBM extends all over the American various places to every one components once more like works an element, and the order of difference possess difference components and the difference element, and have to point out that what element what plant what installation gives birth to, hence not merely giving birth to complexly, fitting, installation and transportation wholly fully complex. Have to there be a manufacture status reports system that takes the calculating machine in order to guarantee being underway successfully of manufacture along with else segment as the base. Hence the same ages IBM establish the systematic AAS of well-developed administration it be able to carry on 450 professional work operations. In 1968, the corporation establishes the communal once more and manufactures informationsystem CMIS and runs and succeeds very much, the past needs 15 weeks work, that system merely may be completed in the way of 3 weeks.It is the data handling system that the status reports system still possess one kind of shape , and that it is used for handles the everyday professional work to make known with manufacture , and stress rests with by the handwork task automation , and lifts the effectiveness with saves the labor power . The data handling system ordinarily can not supply decision of strategic importance message.Last phase is the support systems make a strategic decision, and it is the information system being used for supplementary making a strategic decision. That system may program and the analysis scheme, and goes over key and the error solve a problem. Its proper better person-machine dialogue means, may with not particularlythe personnel staff who have an intimate knowledge of the calculating machine hold conversation. It ordinarily consists of some pattern so as to come into being decision of strategic importance message, yet emphasize comprehensive administration meritorious service capacity.1.2 The Application of Management Information SystemThe management information system is used to the most base work, like dump report form, calculation pay and occurrences in human tubes and so on, and then developing up business financial affairs administrations and inventory control and so on individual event operational control , this pertains to the electron data handling ( EDP Data Processing ) system . When establish the business data bank, thereby possess the calculating machine electric network to attain data sharing queen , the slave system concept is start off , when the implementation the situation as a whole is made program and the design information system ,attained the administration information system phase . In the wake of calculating machine technique progress and the demand adjust the system of people lift further, people emphasize more furthermore administer the information system phase. Progress and people in the wake of the calculating machine technique lift at the demand adjust the system further, people emphasize more furthermore to administer the information system whether back business higher level to lead makes a strategic decision this meritorious service capacity, still more lay special emphasis on the gathering to the external message of business and integrated data storehouse, model library , means storehouse and else artificial intelligence means whether directly to decision of strategic importance person , this is the support system ( DDS ) mission making a strategic decision.There is the part application that few business start MIS inner place the limit of the world at the early days of being living in the 70’s 20 centuries. Up at the moment, MIS is living, and there be the appropriatePopularization rate in every state nation in world, and nearly covered that every profession reaches every department.1.3 The Direction of MIS DevelopmentClose 20 curtains; external grand duke takes charge of having arisen3 kinds of alternations:A. Paying special attention to the administration being emphasized toestablishing MIS’s s ystem, and causing the administration technique headfor the ageing.B. The message is the decision of strategic importance foundation, and MISsupplies the message service in the interest of director at all times.C. Director causes such management program getting in touch with togetherwith the concrete professional work maneuver by means of MIS. not merelybig-and-middle-sized business universally establish MIS some small-sizebusiness also not exceptions of self, universally establish the communaldata network, like the electronic mail and electron data exchange and so on,MIS supplied the well support environment to the application of Intranet’stechnique to speedily developing of INTERNET especially in the past fewyears in the interest of the business.Through international technique development tendency is see, in the 90’s 20 centuries had arisen some kinds of brand-new administration technique.1. Business Processes Rebuild (BPR)A business should value correctly time and produce quality, manufacturing cost and technical service and so on several section administrations, grip at the moment organization and the process compose once more,andcompletes that meritorious service capacity integrationist, operation processization and organization form fluctuation. Shall act as the service veer of middle layer management personnel staff the decision of strategic importance of the director service?2. Intelligentization Decision Support System (IDSS)The intelligentization decision of strategic importance support system was sufficiently consider demand and the work distinguishing feature of business higher level personnel staff.3. Lean Production (LP)Application give birth to on time, comprehensive quality control and parallel project that picked amount is given birth to and so on the technique, the utmost product design cutting down and production cycle, raise produce quality and cuts down the reproduced goods to reserve, and is living in the manufacture promote corps essence, in order to meet the demand that client continuously changes.4. Agile Manufacture (AM)One kind of business administration pattern that possess the vision, such distinguishing feature is workers and staff members’ quality is high, and the organization simplifies and the multi-purpose group effectiveness GAO message loading is agile and answers client requires swiftly.2. The Effect To The Business Administration of MIS DevelopmentThe effect to the business administration of the management information system development is administered the change to business and business administration of information system development and come into being and is coming into being the far-reaching effect with.Decision of strategic importance, particularly strategic decision-making may be assisted by the administration information system, and its good or bad directly affects living and the development up the business. The MIS is impeding the orientation development that the administration means one another unites through quality and ration. This express to utilize the administration in the calculation with the different mathematical model the problem in the quantitative analysis business.The past administer that the problem is difficult to test, but MIS may unite the administration necessaries, and supply the sufficient data, and simulates to produce the term in the interest of the administration.In the wake of the development of MIS, much business sit up the decentralizedmessage concentration to establish the information system ministry of directly under director, and the chief of information system ministry is ordinarily in the interest of assistant manager’s grade. After the authority of business is centralized up high-quality administration personnel staff’s hand, as if causing much sections office work decrease, hence someone prophesy, middle layer management shall vanish. In reality, the reappearance phase employed layer management among the information system queen not merely not to decrease, on the contrary there being the increase a bit.This is for, although the middle layer management personnel staff getting off exonerate out through loaded down with trivial details daily routine, yet needs them to analyses researching work in the way of even more energy, lift further admonishing the decision of strategic importance level. In the wake of the development of MIS, the business continuously adds to the demand of high technique a talented person, but the scarce thing of capability shall be washed out gradually. This compels people by means of study and cultivating, and continuously lifts individual’s quality. In The wake of the news dispatch and electric network and file transmission system development, business staff member is on duty in many being living incomparably either the home. Having caused that corporation save the expenses enormously, the work efficiency obviously moves upward American Rank Zeros corporation the office system on the net, in the interest of the creativity of raise office personnel staff was produced the advantageous term.At the moment many countries are fermenting one kind of more well-developed manufacturing industry strategy, and become quickly manufacturing the business. It completely on the basis of the user requirement organization design together with manufacture, may carry on the large-scale cooperation in the interest of identical produce by means of the business that the flow was shifted the distinct districts, and by means of the once more programming to the machinery with to the resources and the reorganization of personnel staff , constituted a fresh affrication system, and causes that manufacturing cost together with lot nearly have nothing to do with. Quickly manufacturing the business establishes a whole completely new strategy dependence relation against consumer, and is able to arouse the structure of production once more revolution.The management information system is towards the self-adoption and Self-learning orientation development, the decision procedure of imitation man who is be able to be better. Some entrepreneurs of the west vainly hope that consummate MIS is encircles the magic drug to govern the business all kinds of diseases; Yet also someone says, and what it is too many is dependent on the defeat that MIS be able to cause on the administration. It is adaptable each other to comprehend the effect to the business of MIS, and is favor of us to be living in development and the research work, and causes the business organization and administer the better development against MIS of system and administration means , and establish more valid MIS.The Source Of Article: Russ Basiura, Mike Batongbacal管理信息系统管理信息系统就是我们常说的MIS(Management Information System), 在强调管理,强调信息的现代社会中它变得越来越重要、越来越普及。
《现代数据库管理(英文版)》课件—11
Traditional Administration Definitions
Data Administration: A high-level function
that is responsible for the overall management of data resources in an organization, including maintaining corporate-wide definitions and standards
Integrity Controls
Protect data from unauthorized use Domains–set allowable values Assertions–enforce database conditions Triggers – prevent inappropriate actions, invoke
10
Figure 11-3 Establishing Internet Security
11
Web Security
Static HTML files are easy to secure
Standard database access controls Place Web files in protected directories on server
Database Administration: A technical
function that is responsible for physical database design and for dealing with technical issues such as security enforcement, database performance, and backup and recovery
(完整word版)数据库管理系统介绍 外文翻译
外文资料Database Management SystemsA database (sometimes spelled data base) is also called an electronic database , referring to any collection of data, or information, that is specially organized for rapid search and retrieval by a computer. Databases are structured to facilitate the storage, retrieval , modification, and deletion of data in conjunction with various data-processing operations .Databases can be stored on magnetic disk or tape, optical disk, or some other secondary storage device.A database consists of a file or a set of files. The information in these files may be broken down into records, each of which consists of one or more fields. Fields are the basic units of data storage , and each field typically contains information pertaining to one aspect or attribute of the entity described by the database . Using keywords and various sorting commands, users can rapidly search , rearrange, group, and select the fields in many records to retrieve or create reports on particular aggregate of data.Complex data relationships and linkages may be found in all but the simplest databases .The system software package that handles the difficult tasks associated with creating ,accessing, and maintaining database records is called a database management system(DBMS).The programs in a DBMS package establish an interface between the database itself and the users of the database.. (These users may be applications programmers, managers and others with information needs, and various OS programs.)A DBMS can organize, process, and present selected data elements form the database. This capability enables decision makers to search, probe, and query database contents in order to extract answers to nonrecurring and unplanned questions that aren’t available in regular reports. These questions might initially be vague and/or poorly defined ,but people can “browse” through the database until they have the needed information. In short, the DBMS will “manage” the stored data items and assemble the needed items from the common database in response to the queries of those who aren’t programmers.A database management system (DBMS) is composed of three major parts:(1)a storage subsystem that stores and retrieves data in files;(2) a modeling and manipulation subsystem that provides the means with which to organize the data and to add , delete, maintain, and update the data;(3)and an interface between the DBMS and its users. Several major trends are emerging that enhance the value and usefulness of database management systems;Managers: who require more up-to-data information to make effective decisionCustomers: who demand increasingly sophisticated information services and more current information about the status of their orders, invoices, and accounts.Users: who find that they can develop custom applications with database systems in a fraction of the time it takes to use traditional programming languages.Organizations : that discover information has a strategic value; they utilize their database systems to gain an edge over their competitors.The Database ModelA data model describes a way to structure and manipulate the data in a database. The structural part of the model specifies how data should be represented(such as tree, tables, and so on ).The manipulative part of the model specifies the operation with which to add, delete, display, maintain, print, search, select, sort and update the data.Hierarchical ModelThe first database management systems used a hierarchical model-that is-they arranged records into a tree structure. Some records are root records and all others have unique parent records. The structure of the tree is designed to reflect the order in which the data will be used that is ,the record at the root of a tree will be accessed first, then records one level below the root ,and so on.The hierarchical model was developed because hierarchical relationships are commonly found in business applications. As you have known, an organization char often describes a hierarchical relationship: top management is at the highest level, middle management at lower levels, and operational employees at the lowest levels. Note that within a strict hierarchy, each level of management may have many employees or levels of employees beneath it, but each employee has only one manager. Hierarchical data are characterized by this one-to-many relationship among data.In the hierarchical approach, each relationship must be explicitly defined when the database is created. Each record in a hierarchical database can contain only one key field and only one relationship is allowed between any two fields. This can create a problem because data do not always conform to such a strict hierarchy.Relational ModelA major breakthrough in database research occurred in 1970 when E. F. Codd proposed a fundamentally different approach to database management called relational model ,which uses a table as its data structure.The relational database is the most widely used database structure. Data is organized into related tables. Each table is made up of rows called and columns called fields. Each record contains fields of data about some specific item. For example, in a table containing information on employees, a recordwould contain fields of data such as a person’s last name ,first name ,and street address.Structured query language(SQL)is a query language for manipulating data in a relational database .It is nonprocedural or declarative, in which the user need only specify an English-like description that specifies the operation and the described record or combination of records. A query optimizer translates the description into a procedure to perform the database manipulation.Network ModelThe network model creates relationships among data through a linked-list structure in which subordinate records can be linked to more than one parent record. This approach combines records with links, which are called pointers. The pointers are addresses that indicate the location of a record. With the network approach, a subordinate record can be linked to a key record and at the same time itself be a key record linked to other sets of subordinate records. The network mode historically has had a performance advantage over other database models. Today , such performance characteristics are only important in high-volume ,high-speed transaction processing such as automatic teller machine networks or airline reservation system.Both hierarchical and network databases are application specific. If a new application is developed ,maintaining the consistency of databases in different applications can be very difficult. For example, suppose a new pension application is developed .The data are the same, but a new database must be created.Object ModelThe newest approach to database management uses an object model , in which records are represented by entities called objects that can both store data and provide methods or procedures to perform specific tasks.The query language used for the object model is the same object-oriented programming language used to develop the database application .This can create problems because there is no simple , uniform query language such as SQL . The object model is relatively new, and only a few examples of object-oriented database exist. It has attracted attention because developers who choose an object-oriented programming language want a database based on an object-oriented model. Distributed DatabaseSimilarly , a distributed database is one in which different parts of the database reside on physically separated computers . One goal of distributed databases is the access of information without regard to where the data might be stored. Keeping in mind that once the users and their data are separated , the communication and networking concepts come into play .Distributed databases require software that resides partially in the larger computer. This software bridges the gap between personal and large computers and resolves the problems of incompatible dataformats. Ideally, it would make the mainframe databases appear to be large libraries of information, with most of the processing accomplished on the personal computer.A drawback to some distributed systems is that they are often based on what is called a mainframe-entire model , in which the larger host computer is seen as the master and the terminal or personal computer is seen as a slave. There are some advantages to this approach . With databases under centralized control , many of the problems of data integrity that we mentioned earlier are solved . But today’s personal computers, departmental computers, and distributed processing require computers and their applications to communicate with each other on a more equal or peer-to-peer basis. In a database, the client/server model provides the framework for distributing databases.One way to take advantage of many connected computers running database applications is to distribute the application into cooperating parts that are independent of one anther. A client is an end user or computer program that requests resources across a network. A server is a computer running software that fulfills those requests across a network . When the resources are data in a database ,the client/server model provides the framework for distributing database.A file serve is software that provides access to files across a network. A dedicated file server is a single computer dedicated to being a file server. This is useful ,for example ,if the files are large and require fast access .In such cases, a minicomputer or mainframe would be used as a file server. A distributed file server spreads the files around on individual computers instead of placing them on one dedicated computer.Advantages of the latter server include the ability to store and retrieve files on other computers and the elimination of duplicate files on each computer. A major disadvantage , however, is that individual read/write requests are being moved across the network and problems can arise when updating files. Suppose a user requests a record from a file and changes it while another user requests the same record and changes it too. The solution to this problems called record locking, which means that the first request makes others requests wait until the first request is satisfied . Other users may be able to read the record, but they will not be able to change it .A database server is software that services requests to a database across a network. For example, suppose a user types in a query for data on his or her personal computer . If the application is designed with the client/server model in mind ,the query language part on the personal computer simple sends the query across the network to the database server and requests to be notified when the data are found.Examples of distributed database systems can be found in the engineering world. Sun’s Network Filing System(NFS),for example, is used in computer-aided engineering applications to distribute data among the hard disks in a network of Sun workstation.Distributing databases is an evolutionary step because it is logical that data should exist at thelocation where they are being used . Departmental computers within a large corporation ,for example, should have data reside locally , yet those data should be accessible by authorized corporate management when they want to consolidate departmental data . DBMS software will protect the security and integrity of the database , and the distributed database will appear to its users as no different from the non-distributed database .In this information age, the data server has become the heart of a company. This one piece of software controls the rhythm of most organizations and is used to pump information lifeblood through the arteries of the network. Because of the critical nature of this application, the data server is also the one of the most popular targets for hackers. If a hacker owns this application, he can cause the company's "heart" to suffer a fatal arrest.Ironically, although most users are now aware of hackers, they still do not realize how susceptible their database servers are to hack attacks. Thus, this article presents a description of the primary methods of attacking database servers (also known as SQL servers) and shows you how to protect yourself from these attacks.You should note this information is not new. Many technical white papers go into great detail about how to perform SQL attacks, and numerous vulnerabilities have been posted to security lists that describe exactly how certain database applications can be exploited. This article was written for the curious non-SQL experts who do not care to know the details, and as a review to those who do use SQL regularly.What Is a SQL Server?A database application is a program that provides clients with access to data. There are many variations of this type of application, ranging from the expensive enterprise-level Microsoft SQL Server to the free and open source mySQL. Regardless of the flavor, most database server applications have several things in common.First, database applications use the same general programming language known as SQL, or Structured Query Language. This language, also known as a fourth-level language due to its simplistic syntax, is at the core of how a client communicates its requests to the server. Using SQL in its simplest form, a programmer can select, add, update, and delete information in a database. However, SQL can also be used to create and design entire databases, perform various functions on the returned information, and even execute other programs.To illustrate how SQL can be used, the following is an example of a simple standard SQL query and a more powerful SQL query:Simple: "Select * from dbFurniture.tblChair"This returns all information in the table tblChair from the database dbFurniture.Complex: "EXEC master..xp_cmdshell 'dir c:\'"This short SQL command returns to the client the list of files and folders under the c:\ directory of the SQL server. Note that this example uses an extended stored procedure that is exclusive to MS SQL Server.The second function that database server applications share is that they all require some form of authenticated connection between client and host. Although the SQL language is fairly easy to use, at least in its basic form, any client that wants to perform queries must first provide some form of credentials that will authorize the client; the client also must define the format of the request and response.This connection is defined by several attributes, depending on the relative location of the client and what operating systems are in use. We could spend a whole article discussing various technologies such as DSN connections, DSN-less connections, RDO, ADO, and more, but these subjects are outside the scope of this article. If you want to learn more about them, a little Google'ing will provide you with more than enough information. However, the following is a list of the more common items included in a connection request.Database sourceRequest typeDatabaseUser IDPasswordBefore any connection can be made, the client must define what type of database server it is connecting to. This is handled by a software component that provides the client with the instructions needed to create the request in the correct format. In addition to the type of database, the request type can be used to further define how the client's request will be handled by the server. Next comes the database name and finally the authentication information.All the connection information is important, but by far the weakest link is the authentication information—or lack thereof. In a properly managed server, each database has its own users with specifically designated permissions that control what type of activity they can perform. For example, a user account would be set up as read only for applications that need to only access information. Another account should be used for inserts or updates, and maybe even a third account would be used for deletes. This type of account control ensures that any compromised account is limited in functionality. Unfortunately, many database programs are set up with null or easy passwords, which leads to successful hack attacks.译文数据库管理系统介绍数据库也可以称为电子数据库,是专门组织起来的一组数据或信息,其目的是为了便于计算机快速查询及检索。
数据库外文翻译
DatabaseA database may be defined as a collection of interrelated data stored together with as little redundancy as possible to serve one or more applications in an optimal fashion; the data are stored so that they are independents of programs which use the data; a common and controlled approach is used in adding new data and in modifying and retrieving existing data within the data base one system is said to contain a collection of databases if they are entirely separate in structure.The restructuring should be possible without having to rewrite the application program and in general should cause as little upheaval as possible the ease with which a database can be changed will have a major effect on the rate at which data-processing application can be developed in a corporation.The term data independence is often quoted as being one of the main attributes of a database int implies that the data and the may be changed without changing the other, when a single setoff data items serves a variety of applications, different application programs perceive different relationships between the data items, to a large extent database organization is concerned with the as how and where the data are stored.A database used for many applications can have multiple interconnection referred to as entities. An entity may be a tangible object or no tangible if it has various properties which we may wish to record. It can describe the real world. The data item represents an attribute and the attribute must be associated which the relevant entity. We relevant entity we design values to the attributes one attribute has a special significance in that it identifies the entity.Logical data description is called a model.We must distinguish a record and a record examples, when talking about all personnel records when it is really a record type, not combined with its data value.A model is used to describe the database used storage in the database data item type and record types of general charts, subschema paragraph refers to an application programmer view of data, many different patterns can get from one mode. The schemaand the subschema are both used by the database management system the primary function of which is to serve the application programs by execution their data operations.A DBMS will usually be handling multiple data calls concurrently, it must organize its system buffers so that different data operations can be in process together, it provides a data definition language to specify the conceptual schema and most likely some of the details regarding the implementation of the conceptual schema by the physical schema the describe the conceptual schema in terms for a “data model”.The choice of a data model is a difficult one, since it must be such enough in structure to describe significant aspects of the real world, yet it must be possible to determine fairly automatically an efficient implementation of the conceptual conceptual schema by a physical schema. It should be emphasized that while a DBMS might be used to build small databases many databases involve millions of bytes and an inefficient implementation can be disastrous.The hierarchical and network structures have been used for DBMS since the 1960’s . the relational structure was introduced in the early 1970’s.In the relational model two-dimensional tables represent the entities and their relationships every table represents an entities are represented by common columns containing values from a domain or range of possible values .The end user is presented with a simple data model his and her request and don not reflect any complexities due to system-oriented aspects a relational data model is what the user sees , but it is mot necessarily what will be implemented physically.The relational data model removes the details of storage structure and access strategy from the user inter-face the model providers a relatively higher degree of data to make use of this property of the relational data model however, the design of the relations must be complete and accurate. Although some DBMS based on the relational data model are commercially available today it is difficult to provide a complete set of operational capabilities with required efficiency on a large scale it appears today that technological improvements in providing faster and more reliable hardware may answer the question positively.The hierarchical data model is based no a tree-like structure made up of nodes and branches a node is a collection of data attributes describing the entity at that opine the highest node of the hierarchical.A hierarchical data model always starts with a root node every node consists of one or more attributes describing the entity at that node dependent nodes can follow the succeeding levels the mode in the receding level becomes the parent node of the new dependent nodes a parent node can have one child node as a dependent or many children nodes the major advantage of the hierarchical data model is the existence of proven database management systems that use the hierarchical data model as the basic structure there is a reduction of data dependency but any child mode is accessible only in a clumsy way this often results in a redundancy in stored data.The database concept has evolved since the 1960s to ease increasing difficulties in designing, building, and maintaining complex information systems (typically with many concurrent end-users, and with a large amount of diverse data). It has evolved together with database management systems which enable the effective handling of databases. Though the terms database and DBMS define different entities, they are inseparable: a database's properties are determined by its supporting DBMS and vice-versa. With the progress in technology in the areas of processors, computer memory, computer storage and computer networks, the sizes, capabilities, and performance of databases and their respective DBMSs have grown in orders of magnitudes. For decades it has been unlikely that a complex information system can be built effectively without a proper database supported by a DBMS. The utilization of databases is now spread to such a wide degree that virtually every technology and product relies on databases and DBMSs for its development and commercialization, or even may have such embedded in it. Also, organizations and companies, from small to large, heavily depend on databases for their operations.No widely accepted exact definition exists for DBMS. However, a system needs to provide considerable functionality to qualify as a DBMS. Accordingly its supported data collection needs to meet respective usability requirements (broadly defined by therequirements below) to qualify as a database. Thus, a database and its supporting DBMS are defined here by a set of general requirements listed below. Virtually all existing mature DBMS products meet these requirements to a great extent, while less mature either meet them or converge to meet them.Database researchDatabase research has been an active and diverse area, with many specializations, carried out since the early days of dealing with the database concept in the 1960s. It has strong ties with database technology and DBMS products. Database research has taken place at research and development groups of companies (e.g., notably at IBM Research, who contributed technologies and ideas virtually to any DBMS existing today), research institutes, and Academia. Research has been done both through Theory and Prototypes. The interaction between research and database related product development has been very productive to the database area, and many related key concepts and technologies emerged from it. Notable are the Relational and the Entity-relationship models, related Concurrency,control,techniques,Query,languages,and Query,optimization metho ds, RAID, and more. Research has provided deep insight to virtually all aspects of databases, though not always has been pragmatic, effective (and cannot and should not always be: research is exploratory in nature, and not always leads to accepted or useful ideas). Ultimately market forces and real needs determine the selection of problem solutions and related technologies, also among those proposed by research. However, occasionally, not the best and most elegant solution wins (e.g., SQL). Along their history DBMSs and respective databases, to a great extent, have been the outcome of such research, while real product requirements and challenges triggered database research directions and sub-areas.The database research area has several notable dedicated academic journals and annual conferences(e.g.,ACM PODS, VLDB, IEEE ICDE, and more), as well as an active and quite heterogeneous (subject-wise) research community all over the world. Functional requirementsCertain general functional requirements need to be met in conjunction with a database. They describe what is needed to be defined in a database for any specific application.Defining the structure of data: Data modeling and Data definition languagesThe database needs to be based on a data model that is sufficiently rich to describe in the database all the needed respective application's aspects. A data definition language exists to describe the databases within the data model. Such language is typically data model specific.Manipulating the data: Data manipulation languages and Query languagesA database data model needs support by a sufficiently rich data manipulation language to allow all database manipulations and information generation (from the data) as needed by the respective application. Such language is typically data model specific. Protecting the data: Setting database security types and levelsThe DB needs built-in security means to protect its content (and users) from dangers of unauthorized users (either humans or programs). Protection is also provided from types of unintentional breach. Security types and levels should be defined by the database owners.Database designDatabase design is done before building it to meet needs of end-users within a given application/information-system that the database is intended to support. The database design defines the needed data and data structures that such a database comprises. A design is typically carried out according to the common three architectural levels of a database (see Database architecture above). First, the conceptual level is designed, which defines the over-all picture/view of the database, and reflects all the real-world elements (entities) the database intends to model, as well as the relationships among them. On top of it the external level, various views of the database, are designed according to (possibly completely different) needs of specific end-user types. More external views can be added later. External views requirements may modify the design of the conceptual level (i.e., add/remove entities and relationships), but usually a welldesigned conceptual level for an application well supports most of the needed external views. The conceptual view also determines the internal level (which primarily deals with data layout in storage) to a great extent. External views requirement may add supporting storage structures, like materialized views and indexes, for enhanced performance. Typically the internal layer is optimized for top performance, in an average way that takes into account performance requirements (possibly conflicting) of different external views according to their relative importance. While the conceptual and external levels design can usually be done independently of any DBMS (DBMS-independent design software packages exist, possibly with interfaces to some specific popular DBMSs), the internal level design highly relies on the capabilities and internal data structure of the specific DBMS utilized (see the Implementation section below).A common way to carry out conceptual level design is to use the Entity-relationship model (ERM) (both the basic one, and with possible enhancement that it has gone over), since it provides a straightforward, intuitive perception of an application's elements and semantics. An alternative approach, which preceded the ERM, is using the Relational model and dependencies (mathematical relationships) among data to normalize the database, i.e., to define the ("optimal") relations (data record or tupple types) in the database. Though a large body of research exists for this method it is more complex, less intuitive, and not more effective than the ERM method. Thus normalization is less utilized in practice than the ERM method.The ERM may be less subtle than normalization in several aspects, but it captures the main needed dependencies which are induced bykeys/identifiers of entities and relationships. Also the ERM inherently includes the important inclusion dependencies (i.e., an entity instance that does not exist (has not been explicitly inserted) cannot appear in a relationship with other entities) which usually have been ignored in normalization..Another aspect of database design is its security. It involves both defining access control to database objects (e.g., Entities, Views) as well as defining security levels and methods for the data itself.数据库一个数据库可以被定义成一个相关数据的集合,这个集合尽可能小的冗余为一个或多个应用程序在最理想的方式下服务,存贮数据的目的是使他们与使用数据的程序独立,一种相同的控制方法用于数据库更新数据和修改,恢复已存在的数据,如果一个系统在结构上完全分离,则他们被称为一个数据库集合。
计算机专业外文翻译+原文-数据库管理系统介绍
外文资料Database Management SystemsA database (sometimes spelled data base) is also called an electronic database , referring to any collection of data, or information, that is specially organized for rapid search and retrieval by a computer. Databases are structured to facilitate the storage, retrieval , modification, and deletion of data in conjunction with various data-processing operations .Databases can be stored on magnetic disk or tape, optical disk, or some other secondary storage device.A database consists of a file or a set of files. The information in these files may be broken down into records, each of which consists of one or more fields. Fields are the basic units of data storage , and each field typically contains information pertaining to one aspect or attribute of the entity described by the database . Using keywords and various sorting commands, users can rapidly search , rearrange, group, and select the fields in many records to retrieve or create reports on particular aggregate of data.Complex data relationships and linkages may be found in all but the simplest databases .The system software package that handles the difficult tasks associated with creating ,accessing, and maintaining database records is called a database management system(DBMS).The programs in a DBMS package establish an interface between the database itself and the users of the database.. (These users may be applications programmers, managers and others with information needs, and various OS programs.)A DBMS can organize, process, and present selected data elements form the database. This capability enables decision makers to search, probe, and query database contents in order to extract answers to nonrecurring and unplanned questions that aren’t available in regular reports. These questions might initially be vague and/or poorly defined ,but people can “browse”through the database until they have the needed information. In short, the DBMS will “manage” the stored data items and assemble the needed itemsfrom the common database in response to the queries of those who aren’t programmers.A database management system (DBMS) is composed of three major parts:(1)a storage subsystem that stores and retrieves data in files;(2) a modeling and manipulation subsystem that provides the means with which to organize the data and to add , delete, maintain, and update the data;(3)and an interface between the DBMS and its users. Several major trends are emerging that enhance the value and usefulness of database management systems;Managers: who require more up-to-data information to make effective decisionCustomers: who demand increasingly sophisticated information services and more current information about the status of their orders, invoices, and accounts.Users: who find that they can develop custom applications with database systems in a fraction of the time it takes to use traditional programming languages.Organizations : that discover information has a strategic value; they utilize their database systems to gain an edge over their competitors.The Database ModelA data model describes a way to structure and manipulate the data in a database. The structural part of the model specifies how data should be represented(such as tree, tables, and so on ).The manipulative part of the model specifies the operation with which to add, delete, display, maintain, print, search, select, sort and update the data.Hierarchical ModelThe first database management systems used a hierarchical model-that is-they arranged records into a tree structure. Some records are root records and all others have unique parent records. The structure of the tree is designed to reflect the order in which the data will be used that is ,the record at the root of a tree will be accessed first, then records one level below the root ,and so on.The hierarchical model was developed because hierarchical relationships are commonly found in business applications. As you have known, an organization char often describes a hierarchical relationship: topmanagement is at the highest level, middle management at lower levels, and operational employees at the lowest levels. Note that within a strict hierarchy, each level of management may have many employees or levels of employees beneath it, but each employee has only one manager. Hierarchical data are characterized by this one-to-many relationship among data.In the hierarchical approach, each relationship must be explicitly defined when the database is created. Each record in a hierarchical database can contain only one key field and only one relationship is allowed between any two fields. This can create a problem because data do not always conform to such a strict hierarchy.Relational ModelA major breakthrough in database research occurred in 1970 when E.F. Codd proposed a fundamentally different approach to database management called relational model ,which uses a table as its data structure.The relational database is the most widely used database structure. Data is organized into related tables. Each table is made up of rows called and columns called fields. Each record contains fields of data about some specific item. For example, in a table containing information on employees, a record would contain fields of data such as a person’s last name ,first name ,and street address.Structured query language(SQL)is a query language for manipulating data in a relational database .It is nonprocedural or declarative, in which the user need only specify an English-like description that specifies the operation and the described record or combination of records. A query optimizer translates the description into a procedure to perform the database manipulation.Network ModelThe network model creates relationships among data through a linked-list structure in which subordinate records can be linked to more than one parent record. This approach combines records with links, which are called pointers. The pointers are addresses that indicate the location of a record. With the network approach, a subordinate record can be linked to a key record and at the same time itself be a key record linked to other sets of subordinate records. The network mode historically has had a performanceadvantage over other database models. Today , such performance characteristics are only important in high-volume ,high-speed transaction processing such as automatic teller machine networks or airline reservation system.Both hierarchical and network databases are application specific. If a new application is developed ,maintaining the consistency of databases in different applications can be very difficult. For example, suppose a new pension application is developed .The data are the same, but a new database must be created.Object ModelThe newest approach to database management uses an object model , in which records are represented by entities called objects that can both store data and provide methods or procedures to perform specific tasks.The query language used for the object model is the same object-oriented programming language used to develop the database application .This can create problems because there is no simple , uniform query language such as SQL . The object model is relatively new, and only a few examples of object-oriented database exist. It has attracted attention because developers who choose an object-oriented programming language want a database based on an object-oriented model.Distributed DatabaseSimilarly , a distributed database is one in which different parts of the database reside on physically separated computers . One goal of distributed databases is the access of information without regard to where the data might be stored. Keeping in mind that once the users and their data are separated , the communication and networking concepts come into play .Distributed databases require software that resides partially in the larger computer. This software bridges the gap between personal and large computers and resolves the problems of incompatible data formats. Ideally, it would make the mainframe databases appear to be large libraries of information, with most of the processing accomplished on the personal computer.A drawback to some distributed systems is that they are often based on what is called a mainframe-entire model , in which the larger host computeris seen as the master and the terminal or personal computer is seen as a slave. There are some advantages to this approach . With databases under centralized control , many of the problems of data integrity that we mentioned earlier are solved . But today’s personal computers, departmental computers, and distributed processing require computers and their applications to communicate with each other on a more equal or peer-to-peer basis. In a database, the client/server model provides the framework for distributing databases.One way to take advantage of many connected computers running database applications is to distribute the application into cooperating parts that are independent of one anther. A client is an end user or computer program that requests resources across a network. A server is a computer running software that fulfills those requests across a network . When the resources are data in a database ,the client/server model provides the framework for distributing database.A file serve is software that provides access to files across a network. A dedicated file server is a single computer dedicated to being a file server. This is useful ,for example ,if the files are large and require fast access .In such cases, a minicomputer or mainframe would be used as a file server. A distributed file server spreads the files around on individual computers instead of placing them on one dedicated computer.Advantages of the latter server include the ability to store and retrieve files on other computers and the elimination of duplicate files on each computer. A major disadvantage , however, is that individual read/write requests are being moved across the network and problems can arise when updating files. Suppose a user requests a record from a file and changes it while another user requests the same record and changes it too. The solution to this problems called record locking, which means that the first request makes others requests wait until the first request is satisfied . Other users may be able to read the record, but they will not be able to change it .A database server is software that services requests to a database across a network. For example, suppose a user types in a query for data on his or her personal computer . If the application is designed with the client/server model in mind ,the query language part on the personal computer simplesends the query across the network to the database server and requests to be notified when the data are found.Examples of distributed database systems can be found in the engineering world. Sun’s Network Filing System(NFS),for example, is used in computer-aided engineering applications to distribute data among the hard disks in a network of Sun workstation.Distributing databases is an evolutionary step because it is logical that data should exist at the location where they are being used . Departmental computers within a large corporation ,for example, should have data reside locally , yet those data should be accessible by authorized corporate management when they want to consolidate departmental data . DBMS software will protect the security and integrity of the database , and the distributed database will appear to its users as no different from the non-distributed database .In this information age, the data server has become the heart of a company. This one piece of software controls the rhythm of most organizations and is used to pump information lifeblood through the arteries of the network. Because of the critical nature of this application, the data server is also the one of the most popular targets for hackers. If a hacker owns this application, he can cause the company's "heart" to suffer a fatal arrest.Ironically, although most users are now aware of hackers, they still do not realize how susceptible their database servers are to hack attacks. Thus, this article presents a description of the primary methods of attacking database servers (also known as SQL servers) and shows you how to protect yourself from these attacks.You should note this information is not new. Many technical white papers go into great detail about how to perform SQL attacks, and numerous vulnerabilities have been posted to security lists that describe exactly how certain database applications can be exploited. This article was written for the curious non-SQL experts who do not care to know the details, and as a review to those who do use SQL regularly.What Is a SQL Server?A database application is a program that provides clients with access todata. There are many variations of this type of application, ranging from the expensive enterprise-level Microsoft SQL Server to the free and open source mySQL. Regardless of the flavor, most database server applications have several things in common.First, database applications use the same general programming language known as SQL, or Structured Query Language. This language, also known as a fourth-level language due to its simplistic syntax, is at the core of how a client communicates its requests to the server. Using SQL in its simplest form, a programmer can select, add, update, and delete information in a database. However, SQL can also be used to create and design entire databases, perform various functions on the returned information, and even execute other programs.To illustrate how SQL can be used, the following is an example of a simple standard SQL query and a more powerful SQL query:Simple: "Select * from dbFurniture.tblChair"This returns all information in the table tblChair from the database dbFurniture.Complex: "EXEC master..xp_cmdshell 'dir c:\'"This short SQL command returns to the client the list of files and folders under the c:\ directory of the SQL server. Note that this example uses an extended stored procedure that is exclusive to MS SQL Server.The second function that database server applications share is that they all require some form of authenticated connection between client and host. Although the SQL language is fairly easy to use, at least in its basic form, any client that wants to perform queries must first provide some form of credentials that will authorize the client; the client also must define the format of the request and response.This connection is defined by several attributes, depending on the relative location of the client and what operating systems are in use. We could spend a whole article discussing various technologies such as DSN connections, DSN-less connections, RDO, ADO, and more, but these subjects are outside the scope of this article. If you want to learn more about them, a little Google'ing will provide you with more than enough information. However, the following is a list of the more common itemsincluded in a connection request.Database sourceRequest typeDatabaseUser IDPasswordBefore any connection can be made, the client must define what type of database server it is connecting to. This is handled by a software component that provides the client with the instructions needed to create the request in the correct format. In addition to the type of database, the request type can be used to further define how the client's request will be handled by the server. Next comes the database name and finally the authentication information.All the connection information is important, but by far the weakest link is the authentication information—or lack thereof. In a properly managed server, each database has its own users with specifically designated permissions that control what type of activity they can perform. For example, a user account would be set up as read only for applications that need to only access information. Another account should be used for inserts or updates, and maybe even a third account would be used for deletes. This type of account control ensures that any compromised account is limited in functionality. Unfortunately, many database programs are set up with null or easy passwords, which leads to successful hack attacks.译文数据库管理系统介绍数据库(database,有时拼作data base)又称为电子数据库,是专门组织起来的一组数据或信息,其目的是为了便于计算机快速查询及检索。
外文文献之数据库信息管理系统简介
外文文献之数据库信息管理系统简介Introduction to database informationmanagement systemThe database is stored together a collection of the relevant data, the data is structured, non-harmful or unnecessary redundancy, and for a variety of application services, data storage independent of the use of its procedures; insert new data on the database , revised, and the original data can be retrieved by a common and can be controlled manner. When a system in the structure of a number of entirely separate from the database, the system includes a "database collection."Database management system (database management system) is a manipulation and large-scale database management software is being used to set up, use and maintenance of the database, or dbms. Its unified database management and control so as to ensure database security and integrity. Dbms users access data in the database, the database administrator through dbms database maintenance work. It provides a variety of functions, allows multiple applications and users use different methods at the same time or different time to build, modify, and asked whether the database. It allows users to easily manipulate data definition and maintenance of data security and integrity, as well as the multi-user concurrency control and the restoration of the database.Using the database can bring many benefits: such as reducing data redundancy, thus saving the data storage space; to achieve full sharing of data resources, and so on. In addition, the database technology also provides users with a very simple means to enable users to easily use the preparation of thedatabase applications. Especially in recent years introduced micro-computer relational database management system dBASELL, intuitive operation, the use of flexible, convenient programming environment to extensive (generally 16 machine, such as IBM / PC / XT, China Great Wall 0520, and other species can run software), data-processing capacity strong. Database in our country are being more and more widely used, will be a powerful tool of economic management.The database is through the database management system (DBMS-DATA BASE MANAGEMENT SYSTEM) software for data storage, management and use of dBASELL is a database management system software.Information management system is the use of data acquisition and transmission technology, computer network technology, database construction, multimediatechnology, business needs, such as the establishment of a management platform, the platform constructed on the basis of pure software business management system (to meet the business needs for the purpose), achieving operational systems of data and information sharing, and based on this structure enquiries, schedulingor decision-making system.Information system can be manual or computer-based, independent or integrated, batch or on-line. The information system is usually the various types of combination. That is, of course, it can not be independent and is integrated.1. Independent system to meet a specific application areas (eg, personnel management) design. Independent system with its own documents, which are inevitable with a certain degree of redundancy.2. Integrated information systems through their use of the data were combined. Resource sharing system using a database to achieve integrated objectives. For example, the normal wage system requirements from the human resources and accounting systems found in the data.3. Artificial system has been developed based on a variety of computer information systems. So far, in a computerized artificial, and still lacks design experience (or) lack of information between users and service personnel exchanges. That is to say, computer-based workflow system directly from the manual system workflow. Often, these systems are independent, and the computer just as a data processor. In the design of these systems, with little regard to their integrated to the end of intent.4. Information systems according to a batch, on-line processing or both combination classification. In a batch system, and data will be handled in batches or reports. For example, banks will be a large number of cheque code, and then the end of the day, in batches of cheques, sorting and processing. Also, in order to prevent an airline ticket T alas in Atlanta and another at the same time point of sale outlets from Los Angeles to San Francisco, the last one a flight tickets, airlines must be on-line booking system, in order to reflect the current status of the database. Most on-line information system is successful batch requirements. even if the information resources management (IRM) system, and the potential of the computer information system has been widely recognized, most of the systems is still independent batch system. Now most of these systems have lost value, but was re-designed as an integrated, online system. By definition, we can see the comprehensive requirements of business managers and company leaders closercooperation. Information services professionals as consultants, and the integrated information system and business areas of conflict and differences should be resolved by the user groups. Resolve these differences in order to achieve a comprehensive environmental information services staff to the challenges posed by the user manager.数据库信息管理系统简介数据库是存储在一起的相关数据的集合,这些数据是结构化的,无有害的或不必要的冗余,并为多种应用服务;数据的存储独立于使用它的程序;对数据库插入新数据,修改和检索原有数据均能按一种公用的和可控制的方式进行。
JDBC(数据库连接)外文翻译及原文
JDBC (Java Data Base Connectivity)JDBC (Java Data Base Connectivity,) is a SQL statement for the implementation of the Java API, for a variety of relational databases to provide a unified visit by a group, it’s using Java language preparation classes and interface. JDBC for tools / database development provides a standard API, which can build more sophisticated tools and interfaces to database developers. Pure Java API can be used to prepare database applications, at the same time, JDBC is also a brand name. With JDBC, data sent to the various relationships SQL statement is a very easy matter. In other words with JDBC API, we do not have to visit a Sybase database to write specialized procedures, visit the Oracle database specifically to write a program, or visit Informix database and the preparation of another procedure, programmers should use the JDBC API to write a procedure enough, it can be sent to the corresponding SQL database calls. Meanwhile, the Java language and JDBC to integrate non-programmers do not have to, with a platform for the preparation of different applications, just write it again in the process can be run on any platform, which is the Java language "Write once, run everywhere" advantage. Java database Connect Architecture for Java application of the standard method of connecting to the database. JDBC is the case of Java programmers API, and the realization of the database connection is the case of service providers interface model.As API, JDBC program development for the provision of standard interfaces, and database vendors and third-party middleware vendors to achieve connectivity and database provides a standard method. JDBC use the existing SQL standard - Support and other databases and connectivity standards, such as bridge between ODBC. JDBC achieve all these objectives and standards for a simple, high-performance and strict definition of achieving type interface. Java with a solid, safe, easy to use, easy to understand and can be automatically downloaded from the Internet and other characteristics of the preparation of the outstanding database application language. Need is a Java application Database with a variety of different procedures for a dialogue between the methods. The JDBC is the mechanism for such purposes. Java JDBC expanded functionality. For example, with Java and JDBC API Applet can be issued containing the page, and the applet may use the information from remote databases enterprises can also use JDBC to all staff through the Intranet will be connected to one or more Internal database (even if those staff computers are used by Windows, Macintosh, and UNIX, and other various operating systems). As more and more programmers using Java Programming language, Java from the convenient access to the database requirements areincreasing. MIS administrators like the combination of Java and JDBC, because it makes it easy to disseminate information and Economy. Enterprises can continue to use their installed database, and can easily access information, even if this information is stored in the different database management systems. The development of new procedures is a very short period. An Equipment and version control will be greatly simplified. Programmers can prepare only what applications or updated only once, and then put it on the server, and then on any person can get the latest version of the application. Sales for the business information services, Java and JDBC for external customers with better access to information update method.First, the use of JDBCSimply put, JDBC to do three things: establish a connection with the database, send SQL statements and the results. The following codes are the basic examples:Connection con = DriverManager.getConnection ( "jdbc: odbc: wombat," "login""Password");Statement stmt = con.createStatement ();ResultSet rs = stmt.executeQuery ( "SELECT a, b, c FROM Table1");While (rs.next ()) {Int x = rs.getInt ( "a");String s = rs.getString ( "b");Float f = rs.getFloat ( "c");}Based on the above code JDBC database access to a summary of the classic, of course, in this part of the follow-up section we will do a detailed analysis.Second, JDBC APIJDBC is a "low-level" interface, that is, it calls for direct SQL commands. In this respect it functions very good, and other than the easy-to-use database connectivity API, but it also has been designed as a basis interface, it can be established on the High interface and tools. High interface is "user-friendly" interface, which uses a more comprehensible and more convenient API. This API is converted in the behind-the-scenes such as JDBC such a low-level interface. In the relational database "object / relationship" mapping, each row in the table corresponding to the category of an example, the value of each column the examples should be an attribute. Therefore, programmers can directly operate on the Java objects; SQL for data access call will be "under the guise of" automatically generated. They can also be more complex mapping, for example, a number of rows in the table integrated into a Java class. With the interest of the people of JDBC the growing, and more and more developers have been using JDBC-based tools So that the preparation process more easily. Programmers has been trying to make in the preparation of end-user database access has become moresimple applications. For example, applications can provide a choice of According to the mandate of the menu. Task was chosen, the application will be given tips and blank selected for the task of completing the implementation of the necessary information. Application procedures for the importation of the required information will automatically call for SQL Order. In such a process with the assistance, even if they do not understand the fundamental SQL syntax, but also can perform database tasks.Third, JDBC and ODBC compared with other APICurrently, Microsoft's ODBC API is the most widely used for the visit of the relational database programming interface. It can connect almost all platforms almost all databases. For What Java does not use ODBC? The answer to this question is: Java can use ODBC, but preferably with the help of the JDBC to JDBC-ODBC Bridge in the form of use of this point, we later say. The problem now has become: "Why do we need JDBC?" The answer is clear: ODBC not suitable for direct use in Java, because it uses C language interface. Transferred from Java C code in the local security, achieved solid and procedural aspects of the automatic transplantation has many shortcomings. From ODBC C API Java API to the literal translation is not advisable. For example, Java does not guide, and it has ODBC indicators used very widely (including very error-prone Guidelines "void *"). You can imagine JDBC will be converted into the object-oriented interface to the ODBC, and the object-oriented interface to make it easier for Java programmers to receive. ODBC is difficult to learn. It simple and advanced features of the mix, and even the simple query, the options are extremely complex. On the contrary, JDBC to guarantee simple function of simplicity, At the same time, if necessary, to allow the use of advanced features. The opening of "pure Java" mechanism needs such as JDBC Java API. If you use ODBC, it is necessary to manually will be ODBC driver management and driver installation in each client machines. If completely written in Java JDBC Driver in all the JDBC code on the Java platform (from the computer network to the mainframe) can be Automatic installation, and guarantee the safety of transplantation.In short, JDBC API for SQL abstract and basic concepts of Java is a natural interface. It is built on ODBC rather than starting from scratch. Therefore, programmers will be familiar with ODBC JDBC found very easy to use. ODBC JDBC retains the basic design features; In fact, the two interfaces are based on the X / Open SQL CLI (call-level interface). Among them the largest district, another is: Java JDBC to style and based on the merits and optimization, more easy to use.At present, Microsoft has introduced a new addition to ODBC API: RDO, ADO and OLE DB. These design in many ways and JDBC is the same, that is, they are the object-oriented Based on the database interface and can be achieved on ODBC in the category.But the interface, we did not see any special features that make their choice we need to turn to alternative ODBC, especially in the ODBC Flooding Has been established procedure for better market conditions. They also is the largest in the ODBC add a decoration only. Forth, JDBC on the B / S and C / S mode supportJDBC API supports both the two-tier model of database access (C / S), but has also supported the three-tier model (B / S). In the two-tier model, Java applet or application will be directly into the database to dialogue. This will require a JDBC driver to visit with the specific database management systems to communicate. Users of SQL statements sent to the database, and its results will be returned to user. Database can be located on another computer, users connected to the above network. This is called client / server configuration, user's computer for the client, providing database computing Machines for servers. Intranet network can be (it can be linked to company staff), it can also be an internet.In the three-tier model, the order was first sent to the "middle layer", and then by the SQL statement it sent to the database. Database on SQL statement processed and the results sent back to the middle Layer, the middle layer then the results returned to users. MIS managers have discovered the three-tier model is very attractive, because the middle layer can be used to control access to company data and can be used for the newer types. In Another advantage of inter-layer, the user can use the easy-to-use high-level API, and the middle layer will be converted to its corresponding low-level calls. Finally, in many cases under the three-tier structure can provide some performance on the benefits.So far, the middle layer are usually in C or C + + language to prepare such, the implementation of these languages faster. However, with the most optimized compiler (it to switch to Java byte code Efficient in the specific machine code) the introduction, use Java to achieve middle layer will be more practical. This will be a big step forward, it enables people to take full advantage of the many Java Advantages (such as robust, multi-threaded, and security features). For Java JDBC from the middle layer to access a database is very important.Fifth, SQL consistencyStructured Query Language (SQL) relational database access is the standard language. The tricky part is: Although most of the DBMS (database management system) to use the basic functions Standard forms of SQL, but they are not consistent with the recent higher standard definition of the functions of SQL syntax or semantics. For example, not all databases support stored procedures or external connections, it More support this function in the database and mutually inconsistent. It is hoped that the SQL standard that the real part to expanding to include more and more functions. But at the same time it must support JDBCAPI With the existing SQL.JDBC API solution to this problem is to allow a way for any string has been reached by the driver on the DBMS. This means that applications can use any number of SQL Functional, but it must take the risk: it is possible in some DBMS errors. In fact, applications for SQL even if not, or that it may be for a specific DBMS Design SQL dedicated derivatives (for example, documents or images enquiries). JDBC deal with the issue of consistency SQL second method is to provide ODBC-style escape clause, which will in the follow-up Part of the discussion. Escape for a few common grammatical differences SQL provides a standard syntax JDBC. For example, the date has been stored text and the process of calling all escaped grammar. For complex Miscellaneous applications, JDBC third method used to deal with the issue of consistency in its SQL Database Meta Data interface to use DBMS on the description of information, thus enabling application - Each DBMS order to adapt to the requirements and functional. As JDBC API will be used to develop advanced tools and database access API, API basis, it must also pay attention to all of its superstructure consistency. "TM with JDBC standards," representatives of the JDBC users can rely on the standard-level functions. To use this statement, the driver must be at least support the ANSI SQL-2 Entry Level (ANSI SQL-2 represent the United States National Bureau of Standards in 1992, the standards adopted. Entry Level SQL functions on behalf of a specific list). Driver developers can be carried by the JDBC API Testing kits to determine whether the driver of their compliance with these standards. "TM with JDBC standards," said the JDBC providers have been adopted to achieve the Java Soft the conformance testing. These tests will check the consistency of the definition of JDBC API all the classes and methods exist, as far as possible, to check whether the procedures SQL Entry Level function. Of course, these tests not entirely, but now has no intention of Java Soft the various providers to the realization of superscript level. However, this definition of consistency can indeed achieve the JDBC provide a certain degree of credibility. As more and more Database providers, connecting providers, Internet providers and application programming Members of the JDBC API acceptance, JDBC is also rapidly becoming the standard Java database access.Sixth, JDBC entrance - Establishment of connectionYou need to do the first thing is you want to use the DBMS and the establishment of a connection. This includes two steps: loading drivers and establish a connection.Loading driversLoading drivers need only a very simple line code. For example, you want to use JDBC-ODBC Bridge Driver, loading it with the following code:Class.forName ( "sun.jdbc.odbc.JdbcOdbcDriver");Document your driver will tell you should use the class name. For example, if the category were jdbc.DriverXYZ, you will be used to code the following code loading drivers: Class.forName ( "jdbc.DriverXYZ");You do not need to create an instance of the class driver and register it with DriverManager, because calls will be automatically loaded Class.forName Driver category. If you had to create their own examples, you will create an unnecessary copy, but it will not do any harm.Loading Driver category, they can be used to connect with the database.ConnectionThe second step is to use the appropriate driver of the establishment of a connection with the DBMS. The following code is the general practice:Connection con = DriverManager.getConnection (url, "myLogin", "myPassword");This step is very simple and the most difficult is how to provide url. If you are using JDBC-ODBC Bridge, JDBC URL will be jdbc: odbc beginning: the remaining URL is usually your data source name, or database system. Therefore, assuming that you are using ODBC access to a man named "Fred" ODBC data source, your JDBC URL is jdbc: odbc: Fred. "MyLogin" and "myPassword" landing DBMS are the replacement for your user name and password. If you landing database system are the user name "Fernanda" Password "J8", only the following two lines of code can establish a connection:String url = "jdbc: odbc: Fred";Connection con = DriverManager.getConnection (url, "Fernanda," "J8");If you are using the third-party developers of the JDBC driver, the documents will tell you what subprotocol use is in the JDBC URL on the back of some jdbc. For example, if a driver developers registered as a subprotocol acme, JDBC URL in the first and second part will be jdbc: acme. Drivers will tell you the remaining documents JDBC URL format. JDBC URL last part of the positioning is to provide the information in the database.If you load the driver identification provided to the JDBC URL DriverManager.getConnection, that driver will be the establishment of a JDBC URL link to a specific DBMS. As the name indicates, DriverManager class management behind the scenes for you to connect all the details. Unless you are writing drivers, you may not use any other method such, the general programmers need to use such a direct approach is the only DriverManager.getConnection.DriverManager.getConnection method returns an open connection, you can use this link to create JDBC statements and send SQL statements to the database. In the preceding example, the object is a con opened connection, and we will in the future example, use it.外文翻译JDBC(数据库连接)JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。
数据库外文参考文献及翻译
数据库外文参考文献及翻译数据库外文参考文献及翻译SQL ALL-IN-ONE DESK REFERENCE FOR DUMMIESData Files and DatabasesI. Irreducible complexityAny software system that performs a useful function is going to be complex. The more valuable the function, the more complex its implementation will be. Regardless of how the data is stored, the complexity remains. The only question is where that complexity resides. Any non-trivial computer application has two major components: the program the data. Although an application’s level of complexity depends on the task to be performed, developers have some control over the location of that complexity. The complexity may reside primarily in the program part of the overall system, or it may reside in the data part.Operations on the data can be fast. Because the programinteracts directly with the data, with no DBMS in the middle, well-designed applications can run as fast as the hardware permits. What could be better? A data organization that minimizes storage requirements and at the same time maximizes speed of operation seems like the best of all possible worlds. But wait a minute . Flat file systems came into use in the 1940s. We have known about them for a long time, and yet today they have been almost entirely replaced by database s ystems. What’s up with that? Perhaps it is the not-so-beneficial consequences。
《现代数据库管理(英文版)》课件—03
defining a more general entity type from a set of more specialized entity types. BOTTOM-UP
Specialization: The process of defining
Note: no subtype for motorcycle, since it has no unique attributes
11
Figure 3-5 Example of specialization a) Entity type PART
Only applies to manufactured parts Applies only to purchased parts
21
Figure 3-9 Subtype discriminator (overlap rule)
22
Figure 3-10 Example of supertype/subtype hierarchy
23
Entity Clusters
EER diagrams are difficult to read when there are too many entities and relationships
Total Specialization Rule: Yes (double line) Partial Specialization Rule: No (single line)
14
Figure 3-6 Examples of completeness constraints a) Total specialization rule
数据库中英文对照表
DBA词典:数据库设计常用词汇中英文对照表1. Access method(访问方法):此步骤包括从文件中存储和检索记录。
2. Alias(别名):某属性的另一个名字。
在SQL中,可以用别名替换表名。
3. Alternate keys(备用键,ER/关系模型):在实体/表中没有被选为主健的候选键。
4. Anomalies(异常)参见更新异常(update anomalies)5. Application design(应用程序设计):数据库应用程序生命周期的一个阶段,包括设计用户界面以及使用和处理数据库的应用程序。
6. Attribute(属性)(关系模型):属性是关系中命名的列。
7. Attribute(属性)(ER模型):实体或关系中的一个性质。
8. Attribute inheritance(属性继承):子类成员可以拥有其特有的属性,并且继承那些与超类有关的属性的过程。
9. Base table(基本表):一个命名的表,其记录物理的存储在数据库中。
10. Binary relationship(二元关系):一个ER术语,用于描述两个实体间的关系。
例如,panch Has Staff。
11. Bottom-up approach(自底向上方法):用于数据库设计,一种设计方法学,他从标识每个设计组建开始,然后将这些组件聚合成一个大的单元。
在数据库设计中,可以从表示属性开始底层设计,然后将这些属性组合在一起构成代表实体和关系的表。
12. Business rules(业务规则):由用户或数据库的管理者指定的附加规则。
13. Candidate key(候选键,ER关系模型):仅包含唯一标识实体所必须得最小数量的属性/列的超键。
14. Cardinality(基数):描述每个参与实体的可能的关系数目。
15. Centralized approach(集中化方法,用于数据库设计):将每个用户试图的需求合并成新数据库应用程序的一个需求集合16. Chasm trap(深坑陷阱):假设实体间存在一根,但某些实体间不存在通路。
数据库管理系统中英文对照
数据库管理系统地介绍Raghu Ramakrishnan数据库<database, 有时拼作data base )又称为电子数据库, 是专门组织起来地一组数据或信息, 其目地是为了便于计算机快速查询及检索. 数据库地结构是专门设计地, 在各种数据处理操作命令地支持下, 可以简化数据地存储, 检索, 修改和删除. 数据库可以存储在磁盘, 磁带, 光盘或其他辅助存储设备上. b5E2RGbCAP 数据库由一个或一套文件组成, 其中地信息可以分解为记录, 每一记录又包含一个或多个字段<或称为域). 字段是数据存取地基本单位. 数据库用于描述实体,其中地一个字段通常表示与实体地某一属性相关地信息. 通过关键字以及各种分类<排序)命令,用户可以对多条记录地字段进行查询,重新整理,分组或选择,以实体对某一类数据地检索, 也可以生成报表. p1EanqFDPw所有数据库<最简单地除外)中都有复杂地数据关系及其链接.处理与创建,访问以及维护数据库记录有关地复杂任务地系统软件包叫做数据库管理系统vDBMS .DBMS 软件包中地程序在数据库与其用户间建立接口.<这些用户可以是应用程序员,管理员及其他需要信息地人员和各种操作系统程序). DXDiTa9E3d DBMS可组织,处理和表示从数据库中选出地数据元•该功能使决策者能搜索探查和查询数据库地内容, 从而对在正规报告中没有地,不再出现地且无法预料地问题做出回答.这些问题最初可能是模糊地并且<或者)是定义不恰当地, 但是人们可以浏览数据库直到获得所需地信息•简言之,DBMS将“管理”存储地数据项, 并从公共数据库中汇集所需地数据项以回答非程序员地询问. RTCrpUDGiTDBMS由3个主要部分组成:<1)存储子系统,用来存储和检索文件中地数据;<2)建模和操作子系统, 提供组织数据以及添加, 删除,维护, 更新数据地方法;<3)用户和DBMS之间地接口.在提高数据库管理系统地价值和有效性方面正在展现以下一些重要发展趋势;5PCzVD7HxA1 .管理人员需要最新地信息以做出有效地决策.2.客户需要越来越复杂地信息服务以及更多地有关其订单, 发票和账号地当前信息.3.用户发现他们可以使用传统地程序设计语言, 在很短地一段时间内用数据库系统开发客户应用程序4.商业公司发现了信息地战略价值,他们利用数据库系统领先于竞争对手. 数据库模型数据库模型描述了在数据库中结构化和操纵数据地方法, 模型地结构部分规定了数据如何被描述<例如树, 表等):模型地操纵部分规定了数据添加,删除, 显示, 维护, 打印,查找,选择,排序和更新等操作. jLBHrnAILg 分层模型第一个数据库管理系统使用地是分层模型,也就是说,将数据记录排列成树形结构.一些记录时根目录, 在其他所有记录都有独立地父记录.树形结构地设计反映了数据被使用地顺序, 也就是首先访问处于树根位置地记录, 接下来是跟下面地记录,等等. xHAQX74J0X分层模型地开发是因为分层关系在商业应用中普遍存在,众所周知,一个组织结构图表就描述了一种分层关系:高层管理人员在最高层, 中层管理人员在较低地层次,负责具体事务地雇员在最底层. 值得注意地是, 在一个严格地分层结构体系中, 在每个管理层下可能有多个雇员或多个层次地雇员, 但每个雇员只有一个管理者.分层结构数据地典型特征是数据之间地一对多关系. LDAYtRyKfE 在分层方法中,当数据库建立时, 每一关系即被明确地定义. 在分层数据库中地每一记录只能包含一个关键字段, 任意两个字段之间只能有一种关系. 由于数据并不总是遵循这种严格地分层关系, 所以这样可能会出现一些问题. Zzz6ZB2Ltk 关系模型在1970 年, 数据库研究取得了重大突破.E.F.Codd 提出了一种截然不同地数据库管理方法, 使用表作为数据结构, 称之为关系模型. dvzfvkwMI1关系数据库是使用最广地数据结构,数据被组织成关系表, 每个表由称作记录地行和称作字段地列组成. 每个记录包含了专用工程地字段值. 例如,在一个包含雇员信息地表中, 一个记录包含了像一个人姓名和地址这样地字段地值. rqyn14ZNXI 结构化查询语言<SQL是一种在关系型数据库中用于处理数据地查询语言.它是非过程化语言或者说是描述性地,用户只须指定一种类似于英语地描述, 用来确定操作, 记录或描述记录组合. 查询优化器将这种描述翻译为过程执行数据库操作. EmxvxOtOco 网状模型网状模型在数据之间通过链接表结构创建关系, 子记录可以链接到多个父记录.这种将记录和链接捆绑到一起地方法叫做指针, 他是指向一个记录存储位置地存储地址. 使用网状方法,一个子记录可以链接到一个关键记录,同时, 它本身也可以作为一个关键记录.链接到其他一系列子记录.在早期, 网状模型比其他模型更有性能优势;但是在今天,这种优势地特点只有在自动柜员机网络, 航空预定系统等大容量和高速处理过程中才是最重要地. SixE2yXPq5分层和网状数据库都是专用程序, 如果开发一个新地应用程序, 那么在不同地应用程序中保持数据库地一致性是非常困难地. 例如开发一个退休金程序, 需要访问雇员数据,这一数据同时也被工资单程序访问.虽然数据是相同地, 但是也必须建立新地数据库. 6ewMyirQFL 对象模型最新地数据库管理方法是使用对象模型, 记录由被称作对象地实体来描述, 可以在对象中存储数据, 同时提供方法或程序执行特定地任务. kavU42VRUs对象模型使用地查询语言与开发数据库程序所使用地面向对象地程序设计语言是相同地,因为没有像SQL这样简单统一地查询语言,所以会产生一些问题. 对象模型相对较新, 仅有少数几个面向对象地数据库实例. 它引起了人们地关注, 因为选择面向对象程序设计语言地开发人员希望有一个基于在对象模型基础上地数据库. y6v3ALoS89 分布式数据库类似地, 分布式数据库指地是数据库地各个部分分别存储在物理上相互分开地计算机上. 分布式数据库地一个目地是访问数据信息时不必考虑其他位置. 注意, 一旦用户和数据分开, 通信和网络则开始扮演重要角色. M2ub6vSTnP分布式数据库需要部分常驻于大型主机上地软件, 这些软件在大型机和个人计算机之间建立桥梁, 并解决数据格式不兼容地问题. 在理想情况下, 大型主机上地数据库看起来像是一个大地信息仓库, 而大部分处理则在个人计算机上完成. 0YujCfmUCw 分布式数据库系统地一个缺点是它们常以主机中心模型为基础, 在这种模型中, 大型主机看起来好像是雇主, 而终端和个人计算机看起来好像是奴隶. 但是这种方法也有许多优点:由于数据库地集中控制, 前面提到地数据完整性和安全性地问题就迎刃而解了.当今地个人计算机,部门级计算机和分布式处理都需要计算机之间以及应用程序之间在相等或对等地基础上相互通信, 在数据库中客户机/ 服务器模型为分布式数据库提供了框架结构. eUts8ZQVRd利用相互连接地计算机上运行地数据库应用程序地一种方法是将程序分解为相互独立地部分. 客户端是一个最终用户或通过网络申请资源地计算机程序, 服务器是一个运行着地计算机软件, 存储着那些通过网络传输地申请.当申请地资源是数据库中地数据时, 客户机/服务器模型则为分布式数据库提供了框架结构. sQsAEJkW5T 文件服务器指地是一个通过网络提供文件访问地软件, 专门地文件服务器是一台被指定为文件服务器地计算机. 这是非常有用地,例如,如果文件比较大而且需要快速访问,在这种情况下,一台微型计算机或大型主机将被用作文件服务器. 分布式文件服务器将文件分散到不同地计算机上, 而不是将它们集中存放到专门地文件服务器上.GMsIasNXkA后一种文件服务器地优点包括在其他计算机上存储和检索文件地能力, 并可以在每一台计算机上消除重复文件. 然而,一个重要地缺点是每个读写请求需要在网络上传播, 在刷新文件时可能出现问题. 假设一个用户申请文件中地一个数据并修改它, 同时另外一个用户也申请这个数据并修改它, 解决这种问题地方法叫做数据锁定, 即第一个申请使其他申请处于等待状态, 直到完成第一个申请,其他用户可以读取这个数据, 但不能修改. TIrRGchYzg数据库服务器是一个通过网络为数据库申请提供服务地软件,例如, 假设某个用户在他地个人计算机上输入了一个数据查询命令, 如果应用程序按照客户机/ 服务器模型设计, 那么个人计算机上地查询语言通过网络传送数据库服务器上, 当发现数据时发出通知. 7EqZcWLZNX在工程界也有许多分布式数据库地例子,如SUN公司地网络文件系统<NFS 被应用到计算机辅助工程应用程序中,将数据分散到由SUNT作站组成地网络上地不同硬盘之间. lzq7IGf02E分布式数据库是革命性地进步, 因为把数据存放在被使用位置上是很合乎常理地.例如一个大公司不同部门之间地计算机, 应该将数据存储在本地, 然而,当被授权地管理人员需要整理部门数据时, 数据应该能够被访问. 数据库信息系统软件将保护数据库地安全性和完整性, 对用户而言, 分布式数据库和非分布式数据库看起来没有什么差别. zvpgeqJ1hk原文Database Management Systems( 3th Edition >,Wiley ,2004, 5-12NrpoJac3v1A introduction to Database Management SystemRaghu RamakrishnanA database (sometimes spelled data base> is also called an electronicdatabase , referring to any collection of data, or information, that is specially organized for rapid search and retrieval by a computer. Databases are structuredto facilitate the storage, retrieval , modification, and deletion of data in conjunction with various data- processing operations .Databases can be stored on magnetic disk or tape, optical disk, or some other secondary storagedevic1e n.owfTG4KIA database consists of a file or a set of files. The information in thesefiles may be broken down into records, each of which consists of one or more fields. Fields are the basic units of data storage , and each field typically contains information pertaining to one aspect or attribute of the entity described by the database . Using keywords and various sorting commands, users can rapidly search , rearrange, group, and select the fields in many records to retrieve or create reports on particular aggregate of data f.jnFLDa5ZoComplex data relationships and linkages may be found in all but the simplest databases .The system software package that handles the difficult tasks associated with creating ,accessing, and maintaining database records is called a database management system(DBMS>.The programs in a DBMS package establish an interface between the database itself and the users of the database.. (These users may be applications programmers, managers and others with information needs, and various OS programs.>tfnNhnE6e5A DBMS can organize, process, and present selected data elements form the database. This capability enables decision makers to search, probe, and query database contents in order to extract answers to nonrecurring and unplanned questions that aren't available in regular reports. These questions mightinitially be vague and/or poorly defined ,but people can “browse”through the database until they have the needed information. In short, the DBMS will “manage”the stored data items and assemble the needed items from the common database in response to the queries of those who aren't programmers.HbmVN777sLA database management system (DBMS> is composed of three major parts:(1>a storage subsystem that stores and retrieves data in files 。
数据库 外文翻译 外文文献 英文文献 数据库安全
Database Security“Why do I need to secure my database server? No one can access it —it’s in a DMZ protected by the firewall!” This is often the response when it is recommended that such devices are included within a security health check. In fact, database security is paramount in defending an organizations information, as it may be indirectly exposed to a wider audience than realized.This is the first of two articles that will examine database security. In this article we will discuss general database security concepts and common problems. In the next article we will focus on specific Microsoft SQL and Oracle security concerns.Database security has become a hot topic in recent times. With more and more people becoming increasingly concerned with computer security, we are finding that firewalls and Web servers are being secured more than ever(though this does not mean that there are not still a large number of insecure networks out there). As such, the focus is expanding to consider technologies such as databases with a more critical eye.◆Common sense securityBefore we discuss the issues relating to database security it is prudent to high- light the necessity to secure the underlying operating system and supporting technologies. It is not worth spending a lot of effort securing a database if a vanilla operating system is failing to provide a secure basis for the hardening of the data- base. There are a large number of excellent documents in the public domain detailing measures that should be employed when installing various operating systems.One common problem that is often encountered is the existence of a database on the same server as a web server hosting an Internet (or Intranet) facing application. Whilst this may save the cost of purchasing a separate server, it does seriously affect the security of the solution. Where this is identified, it is often the case that the database is openly connected to the Internet. One recent example I can recall is an Apache Web server serving an organizations Internet offering, with an Oracle database available on the Internet on port 1521. When investigating this issue further it was discovered that access to the Oracle server was not protected (including lack of passwords), which allowed the server to be stopped. The database was not required from an Internet facing perspective, but the use of default settings and careless security measures rendered the server vulnerable.The points mentioned above are not strictly database issues, and could be classified as architectural and firewall protection issues also, but ultimately it is the database that is compromised. Security considerations have to be made from all parts of a public facing net- work. You cannot rely on someone or something else within your organization protecting your database fr om exposur e.◆ Attack tools are now available for exploiting weaknesses in SQL and OracleI came across one interesting aspect of database security recently while carrying out a security review for a client. We were performing a test against an intranet application, which used a database back end (SQL) to store client details. The security review was proceeding well, with access controls being based on Windows authentication. Only authenticated Windows users were able to see data belonging to them. The application itself seemed to be handling input requests, rejecting all attempts to access the data- base directly.We then happened to come across a backup of the application in the office in which we were working. This media contained a backup of the SQL database, which we restored onto our laptop. All security controls which were in place originally were not restored with the database and we were able to browse the complete database, with no restrictions in place to protect the sensitive data. This may seem like a contrived way of compromising the security of the system, but does highlight an important point. It is often not the direct approach that is taken to attack a target, and ultimately the endpoint is the same; system compromise. A backup copy of the database may be stored on the server, and thus facilitates access to the data indirectly.There is a simple solution to the problem identified above. SQL 2000 can be configured to use password protection for backups. If the backup is created with password protection, this password must be used when restoring the password. This is an effective and uncomplicated method of stopping simple capture of backup data. It does however mean that the password must be remembered!◆Curr ent tr endsThere are a number of current trends in IT security, with a number of these being linked to database security.The focus on database security is now attracting the attention of the attackers. Attack tools are now available for exploiting weaknesses in SQL and Oracle. The emergence of these tools has raised the stakes and we have seen focused attacks against specific data- base ports on servers exposed to the Internet.One common theme running through the security industry is the focus on application security, and in particular bespoke Web applications. With he functionality of Web applications becoming more and more complex, it brings the potential for more security weaknesses in bespoke application code. In order to fulfill the functionality of applications, the backend data stores are commonly being used to format the content of Web pages. This requires more complex coding at the application end. With developers using different styles in code development, some of which are not as security conscious as other, this can be the source of exploitable errors.SQL injection is one such hot topic within the IT security industry at the moment. Discussions are now commonplace among technical security forums, with more and more ways and means of exploiting databases coming to light all the time. SQL injection is a misleading term, as the concept applies to other databases, including Oracle, DB2 and Sybase.◆ What is SQL Injection?SQL Injection is simply the method of communication with a database using code or commands sent via a method or application not intended by the developer. The most common form of this is found in Web applications. Any user input that is handled by the application is a common source of attack. One simple example of mishandling of user input is highlighted in Figure 1.Many of you will have seen this common error message when accessing web sites, and often indicates that the user input has not been correctly handled. On getting this type of error, an attacker will focus in with more specific input strings.Specific security-related coding techniques should be added to coding standard in use within your organization. The damage done by this type of vulnerability can be far reaching, though this depends on the level of privileges the application has in relation to the database.If the application is accessing data with full administrator type privileges, then maliciously run commands will also pick up this level of access, and system compromise is inevitable. Again this issue is analogous to operating system security principles, where programs should only be run with the minimum of permissions that is required. If normal user access is acceptable, then apply this restriction.Again the problem of SQL security is not totally a database issue. Specific database command or requests should not be allowed to pass through theapplication layer. This can be prevented by employing a “secure coding” approach.Again this is veering off-topic, but it is worth detailing a few basic steps that should be employed.The first step in securing any application should be the validation and control of user input. Strict typing should be used where possible to control specific data (e.g. if numeric data is expected), and where string based data is required, specific non alphanumeric characters should be prohibited where possible. Where this cannot be performed, consideration should be made to try and substitute characters (for example the use of single quotes, which are commonly used in SQL commands).Specific security-related coding techniques should be added to coding standard in use within your organization. If all developers are using the same baseline standards, with specific security measures, this will reduce the risk of SQL injection compromises.Another simple method that can be employed is to remove all procedures within the database that are not required. This restricts the extent that unwanted or superfluous aspects of the database could be maliciously used. This is analogous to removing unwanted services on an operating system, which is common security practice.◆ OverallIn conclusion, most of the points I have made above are common sense security concepts, and are not specific to databases. However all of these points DO apply to databases and if these basic security measures are employed, the security of your database will be greatly improved.The next article on database security will focus on specific SQL and Oracle security problems, with detailed examples and advice for DBAs and developers.There are a lot of similarities between database security and general IT security, with generic simple security steps and measures that can be (and should be) easily implemented to dramatically improve security. While these may seem like common sense, it is surprising how many times we have seen that common security measures are not implemented and so causea security exposure.◆User account and password securityOne of the basic first principals in IT security is “make su re you have a good password”. Within this statement I have assumed that a password is set in the first place, though this is often not the case.I touched on common sense security in my last article, but I think it is important to highlight this again. As with operating systems, the focus of attention within database account security is aimed at administrationaccounts. Within SQL this will be the SA account and within Oracle it may be the SYSDBA or ORACLE account.It is very common for SQL SA accounts to have a password of ‘SA’ or even worse a blank password, which is just as common. This password laziness breaks the most basic security principals, and should be stamped down on. Users would not be allowed to have a blank password on their own domain account, so why should valuable system resources such as databases be allowed to be left unprotected. For instance, a blank ‘SA’password will enable any user with client software (i.e. Microsoft query analyser or enterprise manager to ‘manage’ the SQL server and databases).With databases being used as the back end to Web applications, the lack of password control can result in a total compromise of sensitive information. With system level access to the database it is possible not only to execute queries into the database, create/modify/delete tables etc, but also to execute what are known as Stored Procedures.数据库安全“为什么要确保数据库服务安全呢?任何人都不能访问-这是一个非军事区的保护防火墙”,当我们被建议使用一个带有安全检查机制的装置时,这是通常的反应。
数据库外文参考文献及翻译.
数据库外文参考文献及翻译数据库外文参考文献及翻译数据库管理系统——实施数据完整性一个数据库,只有用户对它特别有信心的时候。
这就是为什么服务器必须实施数据完整性规则和商业政策的原因。
执行SQL Server的数据完整性的数据库本身,保证了复杂的业务政策得以遵循,以及强制性数据元素之间的关系得到遵守。
因为SQL Server的客户机/服务器体系结构允许你使用各种不同的前端应用程序去操纵和从服务器上呈现同样的数据,这把一切必要的完整性约束,安全权限,业务规则编码成每个应用,是非常繁琐的。
如果企业的所有政策都在前端应用程序中被编码,那么各种应用程序都将随着每一次业务的政策的改变而改变。
即使您试图把业务规则编码为每个客户端应用程序,其应用程序失常的危险性也将依然存在。
大多数应用程序都是不能完全信任的,只有当服务器可以作为最后仲裁者,并且服务器不能为一个很差的书面或恶意程序去破坏其完整性而提供一个后门。
SQL Server使用了先进的数据完整性功能,如存储过程,声明引用完整性(DRI),数据类型,限制,规则,默认和触发器来执行数据的完整性。
所有这些功能在数据库里都有各自的用途;通过这些完整性功能的结合,可以实现您的数据库的灵活性和易于管理,而且还安全。
声明数据完整性声明数据完整原文请找腾讯3249114六,维-论'文.网 定义一个表时指定构成的主键的列。
这就是所谓的主键约束。
SQL Server使用主键约束以保证所有值的唯一性在指定的列从未侵犯。
通过确保这个表有一个主键来实现这个表的实体完整性。
有时,在一个表中一个以上的列(或列的组合)可以唯一标志一行,例如,雇员表可能有员工编号( emp_id )列和社会安全号码( soc_sec_num )列,两者的值都被认为是唯一的。
这种列经常被称为替代键或候选键。
这些项也必须是唯一的。
虽然一个表只能有一个主键,但是它可以有多个候选键。
SQL Server的支持多个候选键概念进入唯一性约束。
DBMS简介--外文翻译
DBMS简介数据库管理系统是编程系统中的重要的一种,现今可以用在最大以及最小的电脑上。
其他重要形式的系统软件,比如汇编以及操作系统,近些年来开发出一系列容易理解的数据库管理系统原则,并且这些概念既有助于理解如何有效利用系统,以可以帮助设计和执行DBMS系统。
DBMS是一程序的集合,它使你能够存储、修改以及从数据库中提了提取信息。
有很多种不同类型的DBMS系统,从运行在个人电脑上的小型系统到运行在大型主机上的巨型系统。
DBMS的功能有两种功能使数据库区别于其他设计系统:1)管理固有数据的能力,以及2)高效访问大量数据的能力第一点只是表明现有一个固定存在的数据库,而这些数据库的内容也就是DBMS所要访问和管理的那些数据。
第二点将DBMS和同样能管理固有数据的文件系统区分开来。
通常在数据非常大的时候还需要用到DBMS系统的功能,因为对于小量数据而言,简单的访问技术如对数据的线性扫就足够了。
虽然我们将以上两点作为DBMS的基本特性,但是其他一些功能也是在商业DBSM的系统中常见的,它们是:·支持至少一种用户可以据这浏览数据的模式或数学提取方式。
·支持某种允许用户用来定义数据的结构,访问和操纵数据的高级语言。
·事务管理,即对多个用户提供正确,同时访问数据库的能力。
·访问控制,即限制末被授权用户对数据访问能力,以及检测数据有效性能力。
·恢复功能,即能够从系统错误中恢复过来而不丢失数据的能力。
数据模型每个DBMS提供了至少一种允许用户不是以原始比特位的方式,而是以更容易理解的术语来观看信息的抽象数据模型。
实际上,通常要观察以几个不同级别提取出来的数据是可能的。
在相关的低级别中,DBMS一般允许我们将数据形象化为文件的组成部分。
高效数据访问存储一个文件的能力并不特别:操纵系统中的结合的文件系统都能够如此。
DBMS的能力在我们访问文件的数据时才能显示出来。
比如,假设我希望找到员工经理“克拉克·肯特”。
Database_Management_Systems的外文翻译
Database Management Systems( 3th Edition ),Wiley ,2004, 5-12A introduction to Database Management SystemRaghu RamakrishnanA database (sometimes spelled data base) is also called an electronic database , referring to any collection of data, or information, that is specially organized for rapid search and retrieval by a computer. Databases are structured to facilitate the storage, retrieval , modification, and deletion of data in conjunction with various data-processing operations .Databases can be stored on magnetic disk or tape, optical disk, or some other secondary storage device.A database consists of a file or a set of files. The information in these files may be broken down into records, each of which consists of one or more fields. Fields are the basic units of data storage , and each field typically contains information pertaining to one aspect or attribute of the entity described by the database . Using keywords and various sorting commands, users can rapidly search , rearrange, group, and select the fields in many records to retrieve or create reports on particular aggregate of data.Complex data relationships and linkages may be found in all but the simplest databases .The system software package that handles the difficult tasks associated with creating ,accessing, and maintaining database records is called a database management system(DBMS).The programs in a DBMS package establish an interface between the database itself and the users of the database.. (These users may be applications programmers, managers and others with information needs, and various OS programs.)A DBMS can organize, process, and present selected data elements form the database. This capability enables decision makers to search, probe, and query database contents in order to extract answers to nonrecurring and unplanned questions that aren’t available in regular reports. These questions might initially be vague and/or poorly defined ,but people can “browse” through the database until they have the needed information. In short, the DBMS will “manage”the stored data items and assemble the needed items from the common database in response to the queries of those who aren’t programmers.A database management system (DBMS) is composed of three major parts:(1)a storage subsystem that stores and retrieves data in files;(2) a modeling and manipulation subsystem that provides the means with which to organize the data and to add , delete, maintain, and update the data;(3)and an interface between the DBMS and its users. Several major trends are emerging that enhance the value and usefulness of database management systems;Managers: who require more up-to-data information to make effective decisionCustomers: who demand increasingly sophisticated information services and more current information about the status of their orders, invoices, and accounts.Users: who find that they can develop custom applications with database systems in a fraction of the time it takes to use traditional programming languages.Organizations : that discover information has a strategic value; they utilize their database systems to gain an edge over their competitors.The Database ModelA data model describes a way to structure and manipulate the data in a database. The structural part of the model specifies how data should be represented(such as tree, tables, and so on ).The manipulative part of the model specifies the operation with which to add, delete, display, maintain, print, search, select, sort and update the data.Hierarchical ModelThe first database management systems used a hierarchical model-that is-they arranged records into a tree structure. Some records are root records and all others have unique parent records. The structure of the tree is designed to reflect the order in which the data will be used that is ,the record at the root of a tree will be accessed first, then records one level below the root ,and so on.The hierarchical model was developed because hierarchical relationships arecommonly found in business applications. As you have known, an organization char often describes a hierarchical relationship: top management is at the highest level, middle management at lower levels, and operational employees at the lowest levels. Note that within a strict hierarchy, each level of management may have many employees or levels of employees beneath it, but each employee has only one manager. Hierarchical data are characterized by this one-to-many relationship among data.In the hierarchical approach, each relationship must be explicitly defined when the database is created. Each record in a hierarchical database can contain only one key field and only one relationship is allowed between any two fields. This can create a problem because data do not always conform to such a strict hierarchy.Relational ModelA major breakthrough in database research occurred in 1970 when E. F. Codd proposed a fundamentally different approach to database management called relational model ,which uses a table as its data structure.The relational database is the most widely used database structure. Data is organized into related tables. Each table is made up of rows called and columns called fields. Each record contains fields of data about some specific item. For example, in a table containing information on employees, a record would contain fields of data such as a person’s last name ,first name ,and street address.Structured query language(SQL)is a query language for manipulating data in a relational database .It is nonprocedural or declarative, in which the user need only specify an English-like description that specifies the operation and the described record or combination of records. A query optimizer translates the description into a procedure to perform the database manipulation.Network ModelThe network model creates relationships among data through a linked-list structure in which subordinate records can be linked to more than one parent record. This approach combines records with links, which are called pointers. The pointers are addresses that indicate the location of a record. With the network approach, a subordinate record can be linked to a key record and at the same time itself be a key record linked to other sets of subordinate records. The network modehistorically has had a performance advantage over other database models. Today , such performance characteristics are only important in high-volume ,high-speed transaction processing such as automatic teller machine networks or airline reservation system.Both hierarchical and network databases are application specific. If a new application is developed ,maintaining the consistency of databases in different applications can be very difficult. For example, suppose a new pension application is developed .The data are the same, but a new database must be created.Object ModelThe newest approach to database management uses an object model , in which records are represented by entities called objects that can both store data and provide methods or procedures to perform specific tasks.The query language used for the object model is the same object-oriented programming language used to develop the database application .This can create problems because there is no simple , uniform query language such as SQL . The object model is relatively new, and only a few examples of object-oriented database exist. It has attracted attention because developers who choose an object-oriented programming language want a database based on an object-oriented model.Distributed DatabaseSimilarly , a distributed database is one in which different parts of the database reside on physically separated computers . One goal of distributed databases is the access of information without regard to where the data might be stored. Keeping in mind that once the users and their data are separated , the communication and networking concepts come into play .Distributed databases require software that resides partially in the larger computer. This software bridges the gap between personal and large computers and resolves the problems of incompatible data formats. Ideally, it would make the mainframe databases appear to be large libraries of information, with most of the processing accomplished on the personal computer.A drawback to some distributed systems is that they are often based on what is called a mainframe-entire model , in which the larger host computer is seen as themaster and the terminal or personal computer is seen as a slave. There are some advantages to this approach . With databases under centralized control , many of the problems of data integrity that we mentioned earlier are solved . But today’s personal computers, departmental computers, and distributed processing require computers and their applications to communicate with each other on a more equal or peer-to-peer basis. In a database, the client/server model provides the framework for distributing databases.One way to take advantage of many connected computers running database applications is to distribute the application into cooperating parts that are independent of one anther. A client is an end user or computer program that requests resources across a network. A server is a computer running software that fulfills those requests across a network . When the resources are data in a database ,the client/server model provides the framework for distributing database.A file serve is software that provides access to files across a network. A dedicated file server is a single computer dedicated to being a file server. This is useful ,for example ,if the files are large and require fast access .In such cases, a minicomputer or mainframe would be used as a file server. A distributed file server spreads the files around on individual computers instead of placing them on one dedicated computer.Advantages of the latter server include the ability to store and retrieve files on other computers and the elimination of duplicate files on each computer. A major disadvantage , however, is that individual read/write requests are being moved across the network and problems can arise when updating files. Suppose a user requests a record from a file and changes it while another user requests the same record and changes it too. The solution to this problems called record locking, which means that the first request makes others requests wait until the first request is satisfied . Other users may be able to read the record, but they will not be able to change it .A database server is software that services requests to a database across a network. For example, suppose a user types in a query for data on his or her personal computer . If the application is designed with the client/server model in mind ,thequery language part on the personal computer simple sends the query across the network to the database server and requests to be notified when the data are found.Examples of distributed database systems can be found in the engineering world. Sun’s Network Filing System(NFS),for example, is used in computer-aided engineering applications to distribute data among the hard disks in a network of Sun workstation.Distributing databases is an evolutionary step because it is logical that data should exist at the location where they are being used . Departmental computers within a large corporation ,for example, should have data reside locally , yet those data should be accessible by authorized corporate management when they want to consolidate departmental data . DBMS software will protect the security and integrity of the database , and the distributed database will appear to its users as no different from the non-distributed database .Database Management Systems( 3th Edition ),Wiley ,2004, 5-12数据库管理系统的介绍Raghu Ramakrishnan数据库(database,有时拼作data base)又称为电子数据库,是专门组织起来的一组数据或信息,其目的是为了便于计算机快速查询及检索。
《现代数据库管理(英文版)》课件—02
multivalued and
composite
17
More on Relationships
Relationship Types vs. Relationship Instances
The relationship type is modeled as lines between entity types…the instance is between specific entity instances
Derived from date employed and current date
ቤተ መጻሕፍቲ ባይዱ15
Figure 2-9 Simple and composite identifier attributes
The identifier is boldfaced and underlined
16
Figure 2-19 Simple example of time-stamping
An object that will be composed of multiple attributes
An object that we are trying to model
SHOULD NOT BE:
A user of the database system An output of the database system (e.g., a
Classifications of attributes:
Required versus Optional Attributes Simple versus Composite Attribute Single-Valued versus Multivalued Attribute Stored versus Derived Attributes Identifier Attributes
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库管理数据库(有时拼成Database)也称为电子数据库,是指由计算机特别组织的用下快速查找和检索的任意的数据或信息集合。
数据库与其它数据处理操作协同工作,其结构要有助于数据的存储、检索、修改和删除。
数据库可存储在磁盘或磁带、光盘或某些辅助存储设备上。
一个数据库由一个文件或文件集合组成。
这些文件中的信息可分解成一个个记录,每个记录有一个或多个域。
域是数据库存储的基本单位,每个域一般含有由数据库描述的属于实体的一个方面或一个特性的信息。
用户使用键盘和各种排序命令,能够快速查找、重排、分组并在查找的许多记录中选择相应的域,建立特定集上的报表。
数据库记录和文件的组织必须确保能对信息进行检索。
早期的系统是顺序组织的(如:字母顺序、数字顺序或时间顺序);直接访问存储设备的研制成功使得通过索引随机访问数据成为可能。
用户检索数据库信息的主要方法是query(查询)。
通常情况下,用户提供一个字符串,计算机在数据库中寻找相应的字符序列,并且给出字符串在何处出现。
比如,用户必须能在任意给定时间快速处理内部数据。
而且,大型企业和其它组织倾向于建立许多独立的文件,其中包含相互关联的甚至重叠的数据,这些数据、处理活动经常需要和其它文件的数据相连。
为满足这些要求,开发邮各种不同类型的数据库管理系统,如:非结构化的数据库、层次型数据库、网络型数据库、关系型数据库、面向对象型数据库。
在非结构化的数据库中,按照实体的一个简单列表组织记录;很多个人计算机的简易数据库是非结构的。
层次型数据库按树型组织记录,每一层的记录分解成更小的属性集。
层次型数据库在不同层的记录集之间提供一个单一链接。
与此不同,网络型数据库在不同记录集之间提供多个链接,这是通过设置指向其它记录集的链或指针来实现的。
网络型数据库的速度及多样性使其在企业中得到广泛应用。
当文件或记录间的关系不能用链表达时,使用关系型数据库。
一个表或一个“关系”,就是一个简单的非结构列表。
多个关系可通过数学关系提供所需信息。
面向对象的数据库存储并处理更复杂的称为对象的数据结构,可组织成有层次的类,其中的每个类可以继承层次链中更高一级类的特性,这种数据库结构最灵活,最具适应性。
很多数据库包含自然语言文本信息,可由个人在家中使用。
小型及稍大的数据库在商业领域中占有越来越重要的地位。
典型的商业应用包括航班预订、产品管理、医院的医疗记录以及保险公司的合法记录。
最大型的数据库通常用天政府部门、企业、大专院校等。
这些数据库存有诸如摘要、报表、成文的法规、通讯录、报纸、杂志、百科全书、各式目录等资料。
索引数据库包含参考书目或用于找到相关书籍、期刊及其它参考文献的索引。
目前有上万种可公开访问的数据库,内容包罗万象,从法律、医学、工程到新闻、时事、游戏、分类广告、指南等。
科学家、医生、律师、财经分析师、股票经纪人等专家和各类研究者越来越多地依赖这些数据库从大量的信息中做快速的查找访问。
数据库管理系统的组织技术顺序的、直接的以及其他的文件处理方式常用于单个文件中数据的组织和构造,而DBMS可综合几个文件的数据项以回答用户对信息的查询,这就意味着DBMS 能够访问和检索非关键记录字段的数据,即DBMS能够将几个大文件夹中逻辑相关的数据组织并连接在一起。
逻辑结构。
确定这些逻辑关系是数据管理者的任务,由数据定义语言完成。
DBMS在存储、访问和检索操作过程中可选用以下逻辑构造技术:链表结构。
在该逻辑方式中,记录通过指针链接在一起。
指针是记录集中的一个数据项,它指出另一个逻辑相关的记录的存储位置,例如,顾客主文件中的记录将包含每个顾客的姓名和地址,而且该文件中的每个记录都由一个账号标识。
在记账期间,顾客可在不同时间购买许多东西。
公司保存一个发票文件以反映这下地交易,这种情况下可使用链表结构,以显示给定时间内未支付的发票。
顾客文件中的每个记录都包含这样一个字段,该字段指向发票文件中该顾客的第一个发票的记录位置,该发票记录又依次与该顾客的下一个发票记录相连,此链接的最后一个发票记录由一个作为指针的特殊字符标识。
层次(树型)结构。
该逻辑方式中,数据单元的多级结构类似一棵“倒立”的树,该树的树根在顶部,而树枝向下延伸。
在层次(树型)结构中存在主-从关系,惟一的根数据下是从属的元或节点,而每个元或树枝都只有一个所有者,这样,一个customer(顾客)拥有一个invoice(发票),而invoice(发票)又有从属项。
在树型结构中,树枝不能相连。
网状结构。
网状结构不像树型结构那样不允许树枝相连,它允许节点间多个方向连接,这样,每个节点都可能有几个所有者,中央电视台它又可能拥有任意多个其他数据单元。
数据管理软件允许从文件的任一记录开始提取该结构中的所需信息。
关系型结构。
关系型结构由许多表格组成,数据则以“关系”的形式存储在这些表中。
例如,可建立一些关系表,将大学课程同任课教师及上课地点连接起来。
为了找到英语课的上课地点和教师名,首先查询课程/教师关系表得到名字(为“Fitt”),再查询课程/地点关系表得到地点(“Main 142”),当然,也可能有其他关系。
这是一个相当新颖的数据库组织技术,将来有望得到广泛应用。
物理结构。
人们总是为了各自的目的,按逻辑方式设想或组织数据。
因此,在一个具体应用中,记录R1和R2是逻辑相连且顺序处理的,但是,在计算机系统中,这些在一个应用中逻辑相邻的记录,物理位置完全可能不在一起。
记录在介质和硬件中的物理结构不仅取决于所采用的I/O设备、存储设备及输入输出和存取技术,而且还取决于用户定义的R1和R2中数据的逻辑关系。
例如,R1和R2可能是持有信用卡的顾客记录,而顾客要求每两周将货物运送到同一个城市的同一个街区,而从运输部门的管理者看,R1和R2是按地理位置组织的运输记录的顺序项,但是在A/R应用中,可找到R1长表示的顾客,并且可根据其完全不同的账号处理他们的账目。
简言之,在许多计算机化的信息记录中,存储记录的物理位置用户是看不见的。
Oracle的数据库管理功能Oracle 包括许多使数据库易于管理的功能,分三部分讨论:Oracle 企业管理器、附加包、备份和恢复。
1.Oracle 企业管理器和任何数据库服务器一样,Oracle 数据库服务器包括以下部分:Oracle 企业管理器(IM)、一个带有图形接口的用于管理数据库用户、实例和提供Oracle 环境等附加信息功能(如:复制)的数据库管理工具框架。
在Oracle8i数据库之前,EM 软件必须安装在Windows95/98或者基于NT 的系统中,而且每个库每次只能由一个数据库管理者访问。
如今你可以通过浏览器或者把EM 装入Window95/98/2000 或基于NT 的系统中来使用EM。
多个数据库管理员可以同时访问EM库。
在Oracle9i的EM版中,超级管理员可以定义在普通管理员的控制台上显示的服务,并能建立管理区域。
2.附加包正如下面所描述的那样,Oracle可使用一些可选的附加包,还有用于Oracle 应用程序和SAP R/3的管理包。
(1)标准管理包Oracle的标准管理包提供了用于小型Oracle数据库的管理工具(如:Oracle 服务器/标准版)。
功能包括:对数据库争用、输入/输出、装载、内存使用和实例、对话分析、索引调整进行监控,并改变调查和跟踪。
(2)诊断包利用诊断包,可以监控、诊断及维护企业版数据库、操作系统和应用程序的安全。
用有关历史和实时的分析,可自动的在问题发生前将其消除。
诊断包还提供空间管理功能,有助于对未来系统资源需要的计划和跟踪。
(3)调整包利用调整包,可确定并调整企业版数据库和应用系统的瓶颈,如效率低的SQL、很差的数据设计、系统资源的不当使用,从而优化系统性能。
调整包能提前发现调整时机,并自动生成分析和需求变化来调整系统。
(4)变化管理包变化管理包在升级企业版数据库时帮助排错和避免丢失数据,以达到支持新的应用程序的目的。
该包能分析与应用程序变动有关的影响和复杂依赖关系并自动升级数据库。
用户可使用一种简单的向导按必要的步骤来升级。
(5)可用性Oracle 企业管理器可用管理Oracle标准版或企业版。
在标准版中,用于诊断、调整和改变实例的附加功能由标准管理包提供。
对于企业版,这些附加的功能由单独的诊断包、调整包和变化管理包提供。
3. 备份和恢复正如每个数据库管理者所熟知的,对数据库做备份是一件很普通但又必要的工作。
一次不当的备份会使数据库难于恢复甚至不可恢复。
不幸的是,人们往往在相关系统发生故障而丢失了重要的业务数据后才认识到这项日常工作的重要。
下面介绍一些实现数据库备份操作的产品技术。
(1)恢复管理者典型的备份包括完整的数据库备份(最普通的类型)、桌面空间备份、数据文件备份、控件备份和存档注册备份。
Oracle8i为数据服务器管理备份和恢复管理器(RMAN)。
以前,Oracle的企业备份工具(EBU)在一些平台上提供了相似的解决方案。
然而,RMAN及其存储在Oracle数据库中的恢复目录提供了更完整的解决方案。
RMAN可以自动定位、备份、存储并恢复数据文件、控制文件和存档记录注册。
当备份到期时,Oracle9i的RMAN可以重新启动备份和恢复来实现恢复窗口的任务。
Oracle企业管理器的备份管理器曾RMAN提供基于图形用户界面的接口。
(2)附加备份和恢复RMAN能够执行企业版数据库的附加备份。
附加备份仅备份上一次备份后改变了的数据文件、桌面空间或数据库块,因此,它比完整的备份占用时间短而且速度快。
RMAN也能执行及时指向的恢复,这种恢复能在一个不期望的事件发片之前(如错误的删除表格)恢复数据。
(3)连续存储管理器许多媒体软件商支持RMAN。
Oracle捆绑了连续存储管理器来提供媒体管理服务,包括为至多四台设备提供磁带容量跟踪的服务。
RMAN界面自动地与媒体管理软件一起来管理备份和恢复操作必须的磁带设备。
(4)可用性尽管标准版和企业版的Oracle都有基本的恢复机制,但附加备份仅限于企业版。
Oracle 和 SQL Server 的比较选择我不得不决定是使用Oracle数据库及其数据库开发系统,还是选择配有Visual Studio的Microsoft SQL Server。
这个决策将决定我们今后Web项目的方向。
这两种组合各有什么优势和劣势呢?Lori: 决定选择哪种方案将取决于你目前的工作平台。
例如,如果你想实现一种基于Web的数据库应用,而且你的工作平台只是Windows,那么SQL Sever 和Visual Studio 组件就是一个不错的选择。
但是对于混合平台,则最好选择Oracle解决方案。
还要考虑一些其他的因素,例如你可以获得哪些额外的功能以及需要哪些技术。