Professional Documents
Culture Documents
1) Introduction:: (Databases and Database Users) Chapter Content
1) Introduction:: (Databases and Database Users) Chapter Content
1) Introduction:
Almost all our life activities involve someone or some computer program accessing a
database. For example:
Traditional database applications in which most of the information that is stored
and accessed is either textual or numeric. Such as the database that holds the
inventory of grocery items.
Big data database systems of NOSQL systems that store nontraditional data, such
as posts, tweets, images, and video clips.
Multimedia databases that store images, audio clips, and video streams digitally.
Geographic information systems (GISs) can store and analyze maps, weather data,
and satellite images.
Data warehouses and online analytical processing (OLAP) systems are used in
many companies to extract and analyze useful business information from very large
databases to support decision making.
Real-time and active database technology is used to control industrial and
manufacturing processes.
.حà ﻄﺔ وﻣﺶ ﻣﺤﺘﺎﺟﺔ9 ﻣﺠﺮد ﻣﻘﺪﻣﺔ ;ﺴ... ﺎﻧﺎت واﺳﺘﺨﺪاﻣﺎﺗﻬﺎ9ﺪﻳﻨﺎ ﻓﻜﺮة ﻋﻦ أﻧﻮاع ﻗﻮاﻋﺪ اﻟﺒ9ﻫﻨﺎ ;ﺲ ﺑ
––––––––––––––––––––––––––––––––––––––––
What is database and what is data?
A Database, simply, is a collection of related data. And by data, we mean known facts
that can be recorded and that have implicit meaning. For example, consider the names,
telephone numbers, and addresses.
Page 1 of 40
The database and the miniworld:
The previous meaning of database is general meaning, but the actual meaning of the term
is usually more restricted.
A database is designed, built, and populated with data for a specific purpose. It has
an intended group of users and some preconceived applications in which these
users are interested.
ﻘﺼﺪk ﻌﺾ واﻟﺪاﺗﺎgﺎرة ﻋﻦ ﺗﺠﻤﻴﻊ ﻣﻌﻠﻮﻣﺎت ﻟﻴﻬﺎ ﻋﻼﻗﺔ ﺑg ﻋi
h ﺎﻧﺎت9 او ﻗﺎﻋﺪة اﻟﺒdatabaseﻘﻮل ان ال9ﻟﺤﺪ ﻫﻨﺎ ﺑ
} ﺴﺠﻞ وﻟﻴﻬﺎ€ او اﻟﺤﻘﺎﺋﻖ اﻟ‚ ﻳﻨﻔﻊ ﺗfactsﺑﻴﻬﺎ ال
ذي ﻣﺜﻼ اﺳﻢ اﻟﻄﺎﻟﺐ وﺳﻨﻪ... ﻣﻌ~ واﺿﺢ
ﺴﺘﺨﺪﻣﻬﺎ ﻋﺸﺎن ﻧﻌﺮف ﺣﺎﺟﺔŽ ﺑdatabase ﻠﻤﺔƒ وﻟ„ﻦ... ﺗﻌˆ‡ﻒ ﻋﺎم،ﺎﻧﺎت9ﻘﻮل ان اﻟﺘﻌˆ‡ﻒ دە ﻟﻘﺎﻋﺪة اﻟﺒ9ﻟ„ﻦ ﺑ
™“ ﻣﻌ” او ﺻﻐ }
} “ ﺴﺘﺨﺪﻣﻬﺎ ﻓﻘﻂ ﻋﺸﺎن ﻧﺘ—ﻠﻢ ﻋﻦ ﺟﺰءŽ ﺑdatabase ﻠﻤﺔƒ •ﻤﻌ~ ان }
... ﻪk•ﻤﻌ~ ا .... ••ﻤﻔﻬﻮم ﻣﺨﺘ
› } ... miniworldﻪ ال9ﺴﻤŽ ﺑreal worldﻣﻦ ال
ﻣﺠﻤﻮﻋﺔœg ﻳworld ﺎرة ﻋﻦgﻌ~ ﻣﺜﻼ ﻟﻮ ﻗﻮﻟﺖ ان اﻟﺠﺎﻣﻌﺔ ﻣﺜﻼ ﻋk
}
‚ﻨﻌﻜﺲ ﻋŸ دە ﺑminiworld الžh ™ﺗﻐ “ واي... ﺑﺮﺿﻮ وﻫﻜﺬاminiworld ﺎﺗﺮة اﻟﺠﺎﻣﻌﺔƒ ودminiworld اﻟﻄﺎﻟﺐ
.ﺎﻧﺎت9ﻗﺎﻋﺪة اﻟﺒ
} logically coherent ﻜﻮن ﻓﻴﻬﺎ ﻣﻌﻠﻮﻣﺎت ﺗﻜﻮنk ﺎﻧﺎت ﻻزم9ﻘﻮل ان ﻗﺎﻋﺪة اﻟﺒ9¢و
ﺔ9ﻌ~ ﺗﻜﻮن ﻟﻴﻬﺎ ﻋﻼﻗﺔ ﻣﻨﻄﻘk
} “ ﺎﻧﺎت ﻟﻤﺎ ﺗﻌﻤﻠﻬﺎ ﻻزم ﺗﻜﻮن ﻋﺎﻣﻠﻬﺎ ﻟﻐﺮض9ﻨﻘﻮل ﺑﺮﺿﻮ ان ﻗﺎﻋﺪة اﻟﺒ¢ و.ﺎﻣﻦƒ ~ﻣﻌ
ﺴﺘﺨﺪم€ﻣﻌ” وﻫ }
} ¤ﺪو9¢و ﻌﻀﻬﺎgﺑ
h }
} }
ﻪ ﻗﺎﻋﺪة9ﻌ~ ﻣﺜﻼ ﻣﻮﻗﻊ اﻻﻣﺎزون ﻓk ... ”اﻟﻤﺴﺘﺨﺪﻣ
“ ﺴﺘﺨﺪﻣﻬﺎ ﻣﺠﻤﻮﻋﺔ ﻣﻌﻴﻨﺔ ﻣﻦ€ﻘﺎت ﻣﻌﻴﻨﺔ واﻟ‚ ﻫﻴ9 ﺗﻄﺒžh
ﻌﻮﻫﺎ ﻣﺜﻼ ﻣﻦ ﻛﺘﺐ وﺧﻼﻓﻪ واﻧﻬﺎ ¦ﺴﺠﻞgŸﻣﻌ” وﻫﻮ اﻧﻬﺎ ﺗﺨﺰن اﻟﺤﺎﺟﺎت اﻟ‚ ﺑ } “ ﻌﺎ وﻣﻌﻤﻮﻟﺔ ﻟﻐﺮضgﺎﻧﺎت ﺿﺨﻤﺔ ﻃ9ﺑ
}“
.ﻌﺎgﻣﺴﺘﺨﺪﻣ” ﻃ ﻪ9اء وﻛﺪا وﻟª̀ﺎت اﻟﺒﻴﻊ واﻟ9ﻋﻤﻠ
Database Management System (DBMS):
A database can be generated and maintained manually or it me computerized by the
DBMS
The DBMS A software package/ system to facilitate the creation and maintenance of a
computerized database.
The DBMS is a general-purpose software system that facilitates the processes of defining,
constructing, manipulating, and sharing databases among various users and applications.
ﻪ9ﻘﺼﺪ ﺑk database management system ﺎﻧﺎت ﻣﻤﻜﻦ ﺗﻌﻤﻠﻬﺎ ﻣﺎﻧﻮل او •ﺎﺳﺘﺨﺪام9ﻘﻮل ان ﻗﺎﻋﺪة اﻟﺒ9ﻫﻨﺎ ﺑ
ﻠﻬﺎƒ database functionﻞ الƒ وﻣﻦ ﺧﻼﻟﻪ ﺑﺘﻘﺪر ﺗﻌﻤﻞoracle والSQLﺎﻧﺎت ذي ال9ﻌﻤﻞ ﻗﺎﻋﺪة اﻟﺒ9ﺑﺮﻧﺎﻣﺞ ﺑ
›
.~دﻟﻮﻗ ﺸﻮﻓﻬﺎŽاﻟ‚ ﻫ
Page 2 of 40
DBMS Functions:
1) Defining a database:
Defining a database involves specifying the data types, structures, and constraints of the
data to be stored in the database. The database definition or descriptive information is
also stored by the DBMS in the form of a database catalog or dictionary; it is called meta-
data (Meta data = data about data).
ﻓﺮ او أي ﻫﺎرد د¸ﺴﻚa ‚ﺘﺨﺰﻧﻬﺎ ﻋ¢ اﻟﻤﺮﺣﻠﺔ اﻟ‚ ﺑﺘﻌﻤﻠﻬﺎ ﻓﻌﻼ وi
h ﺎﻧﺎت9ﺸﺎء ﻗﺎﻋﺪة اﻟﺒ¹ او اconstructingال
.ﺎ9وﺗﺨﺰن ﻓﻴﻬﺎ داﺗﺎ ﻓﻌﻠ
3) Manipulating a database
Manipulating a database includes functions such as:
Retrieval: Querying the database to retrieve specific data, generating reports
Updating the database to reflect changes in the miniworld: Insertions, deletions
and updates to its content
Accessing the database through Web applications
Page 3 of 40
› i ¼ اﻷو... ﺎg‡ˆﺎت ﺗﻘ9 ﻋﻤﻠ٣ ﺸﺎء ودي ﻓﻴﻬﺎ •ﻌﺾ¹ﺎﻧﺎت •ﻌﺪ اﻻ9ودي ﻣﺮﺣﻠﺔ اﻟﺘﻌﺎﻣﻞ ﻣﻊ ﻗﺎﻋﺪة اﻟﺒ
اﺳ™ﺟﺎع h }
ﻣﻦminiworld الžh ﻟﻠﺘﻐ™ات اﻟ‚ ﺣﺼﻠﺖ
“ ﻘﺎgﺔ وﺗﺤﺪﻳﺜﻬﺎ ﻃ9ﺸﺎء اﻟﺘﻘﺎر‡ﺮ واﻟﺘﺎﻧ¹ﺎﻧﺎت وا9اﻟﻤﻌﻠﻮﻣﺎت ﻣﻦ ﻗﺎﻋﺪة اﻟﺒ
.ﺎﻧﺎت9 او اﻟﺪﺧﻮل ﻋ‚ ﻗﺎﻋﺪة اﻟﺒaccessing الi h ﺚ واﻟﺘﺎﻟﺘﺔkادﺧﺎل وﺣﺬف وﺗﺤﺪ
4) Sharing a database
Sharing a database allows multiple users and programs to access the database
simultaneously through and application program.
An application program accesses the database by sending queries or requests for data to
the DBMS. A query typically causes some data to be retrieved; a transaction may cause
some data to be read and some data to be written into the database.
› ﻘﺼﺪ ﺑﻴﻬﺎ اﻧﻬﺎk ﻟ„ﻦ... ﺲ ﻣﺜﻼÀﻘﺼﺪش ﺑﻴﻬﺎ اﻧﻪ ¸ﺸ™ﻫﺎ ﻋ‚ اﻟﻔ9 ﻣsharing databae ﻠﻤﺔƒ
ﻣﺘﺎﺣﺔœgﺗ “
› } } }“
à ... ”ﻣﻌ
ﻮاد ﺑﺘﻘﺪر ¦ﺴ™ﺟﻊÂﻪ ا9ﻜﻮن ﻓ9اﻟ™ﻧﺎﻣﺞ دە ﺑ “ اﺳﺘﺨﺪاﻣﻬﺎ ﻣﻦ ﺧﻼل ﺑﺮﻧﺎﻣﺞžh ﺸﺎرﻛﻮ€ﻛﺘ™ ﻳ
“ ”ﻟﻤﺴﺘﺨﺪﻣ
ﺎﻧﺎت9اﻟﻤﻌﻠﻮﻣﺎت ﻣﻦ ﻗﺎﻋﺪة اﻟﺒ
5) Other features:
Protection includes system protection against hardware or software malfunction (or
crashes) and security protection against unauthorized or malicious access.
A typical large database may have a life cycle of many years, so the DBMS must be able
to maintain the database system by allowing the system to evolve as requirements
change over time.
حà دي واﺿﺤﺔ •ﺎﻻﻧﺠﻠﺶ وﻣﺸﻤﺤﺘﺎﺟﺔ
To complete our initial definitions, we will call the database and DBMS software together
a database system.
.database system بDBMS ﻣﻊ الdatabase ال²ﺴÀﻘﻮل ان ﻫ9ﻫﻨﺎ ﺑ
––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
Page 4 of 40
2) University example
}
•ﺎﻟﻌﺮ ¤ﻋﻠﻄﻮل ...ﻟﻮ ﻋﺎﻳﺰ ﺗﻘﺮا اﻻﻧﺠﻠﺶ ﻫﺘﻼﻗ9ﻪ žhاﻟﻤﺮﺟﻊ ال 7th editionﺻﻔﺤﺔ ٦ل٩
hà اﺣﻨﺎ ﻫª̀Žح اﻟﻤﺜﺎل
وi
ﻓﺎﻟﻤﺮﺟﻊ ﻗﺎل ﺟﻤﻠﺔ ﺣﻠﻮة ﻻزم ﻧﻔﻬﻤﻬﺎ ﻛʱﺲ h
To define this database, we must specify the structure of the records of each file by
specifying the different types of data elements to be stored in each record.
Page 5 of 40
... ﻞ ﺻﻒƒ žh } ﺴﺠﻞ€ﺎﻧﺎت اﻟ‚ ﻫﺘ9 اﻟﺒrecordﻞƒ ﺑﺘﺎﻋﺔstructureﻘﻮل اﻧﻚ ﻻزم ﺗﻌﺮف ال9 ﺑ... ﻼم دەËﻪ اﻟkﻌ~ اk }
ﻪ ﻓﺎﻟﺠﺪولk ﻋﺎﻳﺰ ¦ﺴﺠﻞ ا... i } اول ﺣﺎﺟﺔ... اﻋﻤ‚ ﺟﺪول ﻋﻦ اﻟﻄﻼب }
ﻟﻤﺎ اﻧﺎ اﻗﻮﻟﻚ... ﻪk•ﻤﻌ~ ا
h ﺴﺎﻟ~ ﻓﻴﻬﺎ€ﻫ
h h
data elements اﻧﺎ ﻛﺪة ﺣﺪدت ال... ﺳﺠ‚ اﻻﺳﻢ واﻟﺮﻗﻢ واﻟﻔﺼﻞ او اﻟﺘﺨﺼﺺ h ﻓﻬﻘﻮﻟﻚ ﻣﺜﻼ... دە ﻋﻦ اﻟﻄﻼب
}
.record ﻞË ﻟstructure ﻻزم اﺣﺪد ال¤•ﺎ h ﻪ9ﻘﺼﺪ ﺑk ‚ ودە اﻟ... او اﻻﻋﻤﺪة ﺑﺘﺎﻋﺔ اﻟﺠﺪول
} ﻞ ﺣﺎﺟﺔË ﻟdata type ﻧﺤﺪد الœ•› ﻓﺎﺿﻞ
. وﻫﻜﺬا... double وﻻinteger ﻜﻮن9ﻌ~ ﻣﺜﻼ اﻟﺮﻗﻢ ﻫk
} tables او الfilesدﻟﻮﻗ~ ﺧﻼص ﺣﺪدﻧﺎ ال
وﺣﺪدﻧﺎstructure of each recordﻌ~ وﺣﺪدﻧﺎ اﻻﻋﻤﺪة او الk › ﺐ9ﻃ
}
ﺪاgﻌ~ ﻫﻨk construction of database ﻫﻨﻌﻤﻞ... ﻪ •ﻌﺪ ﻛﺪةk اﻟﻤﻔﺮوض ﻧﻌﻤﻞ ا... ﻞ ﻋﻤﻮدË ﻟdata typeال
.ﺎﻧﺎت9ﺸﺎء ﻗﺎﻋﺪة اﻟﺒ¹ اžh }
;ﺲ ﻫﺘﻼﺣﻆ... ﻞ ﺟﺪولƒ žh } records ﺪا ¦ﺴﺠﻞg ﻓﻬﺘ... ﺔ9ﺎﻧﺎت ﻓﻌﻠ9ﻞ ﺑ9ﺘﻀﻤﻦ ¦ﺴﺠŸﺎﻧﺎت ﺑ9ﺸﺎء ﻗﺎﻋﺪة اﻟﺒ¹ﻗﻮﻟﻨﺎ ا
... gradeﻂ •ﺎﻟﺠﺪول ﺑﺘﺎع الgﻌ~ ﻣﺜﻼ اﻟﺠﺪول ﺑﺘﺎع اﻟﻄﻼب ﻣﺮﺗk} ... ﻌﺾgان اﻟﺠﺪاول او اﻟﻤﻠﻔﺎت ﻟﻴﻬﻢ ﻋﻼﻗﺔ ﺑ
ﻌ~ ﺟﺪولk} Section_identifierﻤﺎن الƒ وstudent_numberﻪ ﻋﻤﻮد ﻟﻞ9 ﻓgrade ﺟﺪول الž} ﻫﺘﻼﺣﻆ
h
.ﻂ •ﺠﺪول اﻟ„ﻮرﺳﺎتg ﻣﺮﺗPrerequisite وﻛﺬﻟﻚ ﺟﺪول ال.ﻂ •ﺠﺪول اﻟﻄﻼب وﺟﺪول اﻟﺴ—ﺎﺷﻦg ﻣﺮﺗgradeال
› ﻌ~ ﻣﺜﻼ ﻣﻤﻜﻦk
¦ﺴ™ﺟﻊ } ... Update اوdelete اوinsert ﺎرة ﻋﻦg دي ﻗﻮﻟﻨﺎ اﻧﻬﺎ ﻋ... manipulationﺐ ال9ﻃ
وﻣﻤﻜﻦDB اﻟﺨﺎﺻﺔ •ﻜﻮرس الprerequisite course¦ﺴ™ﺟﻊ ال › او اﻧﻚsmith ﻞ اﻟ„ﻮرﺳﺎت واﻟﺪرﺟﺎت ﺑﺘﺎﻋﺔƒ
ﻣﻤﻜﻦ... ﺔ9 ﺳﻨﺔ ﺗﺎﻧžh } ﺗﻐ™ ﺣﺎﻟﺔ اﻟﻄﺎﻟﺐ ﻣﻦ ﻃﺎﻟﺐ ﻣﺴﺘﺠﺪ ﻟﻄﺎﻟﺐ ﻣﻮﺟﻮد “ ﺚ ذي ﻣﺜﻼ اﻧﻚk او ﺗﺤﺪupdate ﺗﻌﻤﻞ
.ﺪ ﻣﺜﻼk ﻟ„ﻮرس ﺟﺪInsert ﺗﻌﻤﻞ
At this stage, it is useful to describe the database as part of a larger undertaking known
as an information system within an organization. The Information Technology (IT)
department within an organization designs and maintains an information system
consisting of various computers, storage systems, application software, and databases.
}
ﻘﻮل9¢ و... ﺎﻧﺎت9ﻛﺔ او اﻟﻤﻨﻈﻤﺔ اﻟ‚ ﻓﻴﻬﺎ ﻗﺎﻋﺪة اﻟﺒª̀ اﻟžh ITﺎﻧﺎت ﺑﺘﻜﻮن ﺟﺰء ﻣﻦ ﻗﺴﻢ ال9ﻘﻮل ان ﻗﺎﻋﺪة اﻟﺒ9ﻫﻨﺎ ﺑ
›
.ﺎﻧﺎت9ﺮاﻣﺞ وﻗﻮاﻋﺪ ﺑ¢ﻛﻮﻣﺒﻴ™ات و ﺎﻧﺔ ﻟﻠﻨﻈﺎم ﻣﻦ9ﻢ وﺻ9ﻌﻤﻞ ﺗﺼﻤ9 ﻫﻮ اﻟ‚ ﺑITان ﻗﺴﻢ ال
Second stage:
These requirements are documented in detail and transformed into a conceptual design
that can be represented and manipulated using some computerized tools so that it can
be easily maintained, modified, and transformed into a database implementation. (We
will introduce a model called the Entity-Relationship model in Chapter 3 that is used for
this purpose.)
Page 6 of 40
Third stage:
The design is then translated to a logical design that can be expressed in a data model
implemented in a commercial DBMS. (Various types of DBMSs are discussed throughout
)the text, with an emphasis on relational DBMSs in Chapters 5 through 9.
ﻫﻨﺎ ﺑŸﺘ—ﻠﻢ ﻋﻦ ﻣﺮاﺣﻞ ﺗﺼﻤ9ﻢ ﻗﺎﻋﺪة اﻟﺒ9ﺎﻧﺎت ...اول ﻣﺮﺣﻠﺔ ﺑŽﺴﻤﻴﻬﺎ ال requirements specification and
ﺗﻌﻤ‚ ﺳÀﺴﺘﻢ ﻟﻤﻌﻤﻞ ﺗﺤﺎﻟ9ﻞ k ...ﺎﺗﺮى ﻫﻞ ›
دﻟﻮﻗ~ اﻧﺎ ﻟﻮ ﻋﻤ9ﻞ وﻗﻮﻟﺘﻠﻚ اﻧﺎ ﻋﺎﻳﺰك k ... analysisﻘﺼﺪ ﺑﻴﻬﺎ اkﻪ ....
h
}
¦ﺴﺎﻟ~ ﻋﺎﻳﺰ اﻟﺴÀﺴﺘﻢ دە kﻌﻤﻞ ﻫﺘﻔﺘﺢ اﻟ„ﻮﻣﺒﻴﻮﺗﺮ ﺑﺘﺎﻋﻚ وﺗgﺪا ﺗﺼﻤﻢ ﻗﺎﻋﺪة ﺑ9ﺎﻧﺎت وﺗﻌﻤﻞ ﺑﺮﻧﺎﻣﺞ ﻋﻠﻄﻮل وﻻ ﻻزم
h
kﻌ~ ﻣﻦ اﻻﺧﺮ ﺑ€ﺴﺎﻟﻪ ﻋ‚ ﻣﺘﻄﻠgﺎت اﻟﻌﻤﻞ اﻟ‚ ﺑﻨﺎءا ﻋﻠﻴﻬﺎ ﻫﺘﻌﻤﻞ اkﻪ واkﻪ اﻟﺪاﺗﺎ اﻟ‚ ﺑ€ﺴﺠﻠﻬﺎ و¢ﺘﺨﺰﻧﻬﺎ وﻛﺪة } ...
اﻟ™ﻧﺎﻣﺞ وﻗﺎﻋﺪة اﻟﺒ9ﺎﻧﺎت ....واﻟﻤﺘﻄﻠgﺎت دي ﺑﺘﻜﺘﺒﻬﺎ ;ﺸ—ﻞ ﺟﻤﻞ ﻋﺎدkﺔ ﺟﺪا } žhورق و¢ﺘﻮﺛﻘﻬﺎ Ã
دﻟﻮﻗ~ اﻧﺖ ﺧﻼص › اﻟﻤﻔﺎﻫ .... ²9ودە kﻘﺼﺪ ﺑ9ﻪ اkﻪ .... kﻌ~ اﻟﺘﺼﻤ9ﻢﺗﺎ ¤ﻣﺮﺣﻠﺔ i ...ال} conceptual design }
h h h
ﻗﺎ•ﻠﺖ اﻟﻌﻤ9ﻞ وﻛﺘgﺖ ƒﻞ ﻣﺘﻄﻠgﺎت اﻟﻌﻤﻞ } ... document žhﻫﻞ اﻧﺖ ﻛﺪة •ﻘ9ﺖ ﺟﺎﻫﺰ ﻟﻠﺘﺼﻤ9ﻢ ...ﻻ ....ﻟ9ﻪ ...
kﻌ~ ﻛ9ﺎﻧﺎت ﻻﻧﻚ ﻻزم ﺗﺎﺧﺪ اﻟËﻼم ﺑﺘﺎﻋﻪ وﺗﺤﺎول ﺗﻔﻬﻤﻪ وﺗﺤﺪد ال miniworldsاو اﻟ‚ ﻫŽﺴﻤﻴﻬﺎ •ﻌﺪ ﻛﺪة } Entities
› ﺗﻌﺘ™ filesاو ﺟﺪاول } ...
ﻫﺘﻼ žان اﻟﻄﻼب اﺳﻤﻬﻢ miniworld
} h kﻌ~ ﻣﺜﻼ ﻓﺎﻟﻤﺜﺎل ﺑﺘﺎع اﻟﺠﺎﻣﻌﺔ iاﻟ‚ Ã h ...
وh i
و¢ﺮﺿﻮ ﻫ9ﻜﻮن اﺳﻤﻬﻢ Entityوﻟﻴﻬﻢ ﻣﻠﻒ او ﺟﺪول ...و¢ﺘﻌﻤﻞ ال žh conceptal designﺻﻮرة Diagram
ﺷﺎﺑ™ .٣ودە ﻣﺸÔﺲ ﺑﻨﺤﺪد ﻓ9ﻪ › ﻫ9ﻜﻮن اﺳﻤﻪ Entity relationship diagramاو ال ERDودە اﻟ‚ ﻫﻨﺎﺧﺪە } žh
ﺑ” اﻟﺠﺪاول. اﻟﺠﺪاول وال attributesﺑﺘﺎﻋﺘﻬﺎ او اﻟ‚ iاﻻﻋﻤﺪة ﺑﺘﺎﻋﺔ اﻟﺠﺪاول ...ﻟ„ﻦ ƒﻤﺎن ﺑﺘﺤﺪد اﻟﻌﻼﻗﺎت “ }
h
و iال .... logical designﻫﻨﺎ ›• œﺑg€ﺪا ﺗﺤﺪد ال data typesﻟËﻞ attribute ﻧ• Õ9ﻌﺪ ›ﻛﺪة ﻟﻠﻤﺮﺣﻠﺔ اﻟﺘﺎﻟﺘﺔ h
h Ã
}
ﺗﻐ™ •ﻌﺾ اﻟﺤﺎﺟﺎت žhال ERDﻟﻤﺎ ﺗﻮﺻﻞ ﻟﻠﻤﺮﺣﻠﺔ دي ;ﺸ—ﻞ ﻣﻨﻄ œوﻣﻤﻜﻦ “
اﻷﺧ™ ...دي اﻟﻤﺮﺣﻠﺔ اﻟ‚ ﺑ9ﺤﺼﻞ ا¹ﺸﺎء ﻓﻌ‚ ﻟﻘﺎﻋﺪة اﻟﺒ9ﺎﻧﺎت ﻋ‚ aﻓﺮ او
“ ال Physical designودي اﻟﻤﺮﺣﻠﺔ
ﻛﻮﻣﺒﻴﻮﺗﺮ وgŽ¢ﺪا ¹ﺴﺠﻞ ﻓﻴﻬﺎ ﺑ9ﺎﻧﺎت.
––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
Page 7 of 40
Self-describing nature of a database system:
the database system (the database and DBMS) contains not only the database itself but
also a complete definition or description of the database structure and constraints. This
definition is stored in the DBMS catalog, which contains information such as the structure
of each file, the type and storage format of each data item, and various constraints on the
data. The information stored in the catalog is called meta-data, and it describes the
structure of the primary database
The catalog is used by the DBMS software and also by database users who need
information about the database structure. A general-purpose DBMS software package is
not written for a specific database application. Therefore, it must refer to the catalog to
know the structure of the files in a specific database, such as the type and format of data
it will access.
The following figures show the catalog containing meta data about University database.
Whenever a request is made to access, say, the Name of a STUDENT record, the DBMS
software refers to the catalog to determine the structure of the STUDENT file and the
position and size of the Name data item within a STUDENT record.
Page 8 of 40
Insulation between Programs and Data, and Data
Abstraction
Insulation of Data:
In traditional file processing, the structure of data files is embedded in the application
programs, so any changes to the structure of a file may require changing all programs that
access that file. By contrast, DBMS access programs do not require such changes in most
cases. The structure of data files is stored in the DBMS catalog separately from the access
programs. We call this property program-data independence.
ﻞ ﻣﻠﻒ ﺑﺮﻧﺎﻣﺞ ﻣﺨﺼﻮصËﻌﻤﻠﻮ ﻟ9ﺎﻧﻮ ﺑƒ ﻣﻠﻔﺎت وžh } ﺨﺰﻧﻮ اﻟﺪاﺗﺎ9ﺎﻧﻮ ﺑƒ ﺎﻧﺎت ﻟﻤﺎ9ﻞ ﻗﻮاﻋﺪ اﻟﺒg زﻣﺎن ﻗ... ﻪkﻘﻮل ا9ﻫﻨﺎ ﺑ
‚اﻟ™ﻧﺎﻣﺞ اﻟ
à ﻣﻮﺟﻮدة ﺿﻤﻦ ﺑﺮﻣﺠﺔdata strucrure والdata typeﺎﻧﺖ الƒ ،ﺐ اﻟﺪاﺗﺎ ﻣﻦ اﻟﻤﻠﻒ دە9ﺠk ﻋﺸﺎن
ﻞƒ ﺗﻐ™ ﺑﺮﻣﺠﺔ › }
“ ﻪ9 ﻣﻘﺎ•ﻞ ﻟœg ﻻزم ﻳstructure of record الžh ﺤﺼﻞ9ﺗﻐ™ ﺑ “ ﻘﺮا اﻟﺪاﺗﺎ ﻣﻦ اﻟﻤﻠﻔﺎت دي واي9ﺑ
› }
اوmeta dataﻪ ال9 اﻟ‚ ﻓcatalog ان الžﺑﺘﻼ h DBMS الžh ﻟ„ﻦ.... ﺎﻧﺎت ﻣﻦ اﻟﻤﻠﻔﺎت دي9اﻟ™اﻣﺞ اﻟ‚ ﺑﺘﺎﺧﺪ ﺑ Ã
ﻞkﺎﻟﺘﺎ¼ أي ﺗﻌﺪ¢و
h اﻟ™ﻧﺎﻣﺞ
à وﻣﺸﻤﻮﺟﻮد داﺧﻞDBMS ﻣﻮﺟﻮد ﺟﻮة ال،ﺎﻧﺎت9ﺔ اﻟﺒgﻴﻮﺿﺢ ﺗﺮﻛﻴ¢ وdata type ﻪ9اﻟ‚ ﻓ
} }
ﻌ~ اﻟﺪاﺗﺎ ﻣﻌﺰوﻟﺔk ...ﺎﻧﺎت9ﺎﻧﺎت ﻣﻦ ﻗﺎﻋﺪة اﻟﺒ9ﻟ™اﻣﺞ اﻟ‚ ﺑﺘﺎﺧﺪ اﻟﺒÃ ﺑﺘﻐ™ ﺑﺮﻣﺠﺔ ا
“ ﻪ ﻋﻼﻗﺔ9ﻜﻮن ﻟ9ﺔ اﻟﺪاﺗﺎ ﻣﺸﻬg ﺗﺮﻛﻴžh
.اﻟ™ﻧﺎﻣﺞ } اوprogram-data independence. ﻪ9ﺴﻤŽاﻟ™اﻣﺞ ودە ﺑ
à ﺔ اﻟﺪاﺗﺎ ﻋﻦ9ﻌ~ اﺳﺘﻘﻼﻟk à ﺗﻤﺎﻣﺎ ﻋﻦ
™ﻫﺘﻐ
“ } ﻼد9ﻪ ﺗﺎر‡ـ ــﺦ اﻟﻤ9ﻒ ﻋﻠ9ﺖ ﺗﻀ9ﻢ وﺣﺒk ﻣﻠﻒ زي اﻟﻨﻈﺎم اﻟﻘﺪž} ﺔ ﻣﺘﺨﺰﻧﺔgﺎﻧﺎت اﻟﻄﻠ9ذي ﻣﺜﻼ ﻟﻮ ﻓﺮﺿﺎ ﺑ
~ﻌk h
™ﻫﺘﻐ
“ ﻨﺎت ﻣﺸﻬﺘﺤﺘﺎج ﺗﻌﻤﻞ دە ﻻﻧﻚŸ ﻗﺎﻋﺪة اﻟﺒžh } ﻟ™اﻣﺞ اﻟ‚ ﺑﺘﻘﺮا ﻣﻨﻪ ﻟ„ﻦÃ ﻓ™ﻣﺠﺔ اÃ ﻻزم ﺗﻌﺪلœgﻳ › ﺔ اﻟﺪاﺗﺎg ﺗﺮﻛﻴž}
h
.ﺎﻧﺎت ﻧﻔﺴﻬﺎ ﻓﻘﻂ9 ﻗﺎﻋﺪة اﻟﺒžh } اﻟ‚ ﻣﻮﺟﻮدcatalog الžh }
Insulation of Operation:
Functions or operations (which has names and has arguments with certain data types)
can be defined to operate on data by any programming language can be used by user
application programs to operate on data by invoking these operations through their
names and arguments, regardless of how the operations are implemented. This may be
termed program-operation independence.
•ﺎي ﻟﻐﺔfunctions ﺪ ﺑﻨﻌﻤﻞ9Âﺴﺘﺨﺪﻣﻬﺎ ا€ﻨﻌﻤﻞ ﺑﺮاﻣﺞ ﺑ¢ﺎﻧﺎت و9ﻌﺎ ﻟﻤﺎ ﺑﻨﻌﻠﻢ ﻗﺎﻋﺪة ﺑg ﻃ... ﻪkﻼم دە ﻣﻌﻨﺎە اËاﻟ
}“
اﻟﻤﺴﺘﺨﺪﻣ” ﺑﺘﺎﻋﺔ ﻘﻮل ان9 ﻓﺒ... ﺎﻧﺎت9 ﻗﺎﻋﺪة اﻟﺒžh } ﻞ ﻋﻠﻴﻬﺎkﺣ~ ﻧﻌﻤﻞ ﺗﻌﺪ › ﺑﺮﻣﺠﺔ ﻋﺸﺎن ﻧﻘﺪر
› ﺎﻧﺎت او9ﺴ™ﺟﻊ اﻟﺒ¹
™ﻏ
“ دي ﻋﻦ ﻃˆ‡ﻖ اﺳﻤﻬﺎ ﻣﻦfunctionsﺎت دي او ال9ﺎت ﻋ‚ اﻟﺪاﺗﺎ دي •ﻤﺠﺮد اﺳﺘﺪﻋﺎء اﻟﻌﻤﻠ9ﻌﻤﻠﻮ ﻋﻤﻠ9اﻟ™اﻣﺞ ﺑ Ã
}
ﺎت9ﺔ اﻟﻌﻤﻠ9ﻌ~ اﺳﺘﻘﻼﻟk program-operation independence ﺎت دي ﺑﺘﻢ ودە اﺳﻤﻪ9ﻌﺮﻓﻮ اذاي اﻟﻌﻤﻠk ﻣﺎ
.اﻟ™ﻧﺎﻣﺞ ﻧﻔﺴﻪ
à ﻋﻦ
Data abstraction
The characteristic that allows program-data independence and program-operation
independence is called data abstraction. A DBMS provides users with a conceptual
representation of data that does not include many of the details of how the data is stored
or how the operations are implemented. Informally, a data model is a type of data
abstraction that is used to provide this conceptual representation. The data model uses
logical concepts, such as objects, their properties, and their interrelationships, that may
be easier for most users to understand than computer storage concepts. Hence, the data
Page 9 of 40
model hides storage and implementation details that are not of interest to most database
users.
ﻌﺮﻓﺶ9ﻘﺼﺪ ﺑﻴﻬﺎ ان اﻟﻤﺴﺘﺨﺪم ﻣk .... ﻪk ﻘﺼﺪ ﺑﻴﻬﺎk ... ﻌ~ ﺗﺠˆ‡ﺪ اﻟﺪاﺗﺎk } اوdata abstractionﺘ—ﻠﻢ ﻋﻦ الŸﻫﻨﺎ ﺑ
} ... ;ﺲ ﻛﺪة... ﺎت اﻟ‚ ﺑﺘﻢ ﻋ‚ اﻟﺪاﺗﺎ9ﻞ ﻋﻦ اﻟﻌﻤﻠ9‡ﻦ وﻻ أي ﺗﻔﺎﺻ؇ﻦ وﻻ ﻣ—ﺎن اﻟﺘﺨØﺣﺎﺟﺔ ﻋﻦ ﻃˆ‡ﻘﺔ اﻟﺘﺨ
~ﻌk
} › ﻣﺜﻼ
‡ﻦØ اﻟ‚ ﺑﻴﻬﺘﻢ •ﺎﻟﺘﺨphysical level ﺟﺪول اﻟﻌﻤﻼء ﻋ‚ ﻣﺴﺘﻮى الžh ﻞ9ﺎﻧﺎت ﻋﻤ9اﻓ™ض اﻧﻚ ﺑﺘﺤﺎول ﺗﺨﺰن ﺑ
ﺮة وﻟ„ﻦ‡ﻦ ﻋ‚ اﻟﺬاØﺘﻢ اﻟﺘﺨŸﻌﺮف اذاي ﺑk اﻟﻤ™ﻣﺞ ﻣﺸﻼزم } “ ™اﻟﻤ }
à ﻣﺠ” ﻻن à ﻞ ﻣﻌﺰوﻟﺔ ﻋﻦ9ﻜﻮن ﺗﻔﺎﺻ9ﺮة ﺑ اﻟﺬاžh
ﺔgﺴŽﻌﻀﻬﺎ اﻣﺎ •ﺎﻟg وﻋﻼﻗﺔ اﻟﺠﺪاول ﺑdatatypes وrecords اﻟ‚ ﺑﻴﻮﺻﻒ اﻟﺪاﺗﺎ كlogical levelﻌﺮف الk اﻟﻤ™ﻣﺞ Ã
}
ﻌﺮﻓﺶ أي9ﺔ وﻣkﺘﻌﺎﻣﻞ ﻣﻊ واﺟﻬﺔ اﻟﻤﺴﺘﺨﺪم اﻟﻌﺎدŸﻪ اﻟﻤﺴﺘﺨﺪم ﺑ9 اﻟ‚ ﻓView level ﻣﺴﺘﻮى الžh ﻜﻮن9 ﺑuserﻟﻞ
. ﻣﻌﺎﻟﺠﺔ اﻟﺪاﺗﺎžh } ﺎت اﻟ‚ ﺑﺘﻢ9ﻪ اﻟﻌﻤﻠk‡ﻦ اﻟﺪاﺗﺎ واØﺔ ﺗﺨ9ﻔ9ﺣﺎﺟﺔ ﻋﻦ ﻛ
A multiuser DBMS, as its name implies, must allow multiple users to access the database
at the same time. This is essential if data for multiple applications is to be integrated and
maintained in a single database. The DBMS must include concurrency control software
to ensure that several users trying to update the same data do so in a controlled manner
so that the result of the updates is correct. For example, when several reservation agents
try to assign a seat on an airline flight, the DBMS should ensure that each seat can be
accessed by only one agent at a time for assignment to a passenger. These types of
applications are generally called online transaction processing (OLTP) applications. A
fundamental role of multiuser DBMS software is to ensure that concurrent transactions
operate correctly and efficiently.
ﺪ ﻓﺤﺎﻟﺔ ان9ﻌﺎ ﻣﻔg™ ﻣﻦ ﻣﺴﺘﺨﺪم ¸ﺴﺘﺨﺪﻣﻬﺎ ﻓﻨﻔﺲ اﻟﻮﻗﺖ ودە ﻃÂﻻ › ﺴﻤﺢ€ ﺑmultiuser DBMSﻘﻮل ان ال9ﻫﻨﺎ ﺑ
ﻜﻮن ﻓﻴﻬﺎ ﺑﺮﻧﺎﻣﺞk DBMS اﻟﺤﺎﻟﺔ دي ﻻزم الžh } ﻟ„ﻦ... ﺎﻧﺎت9ﺴﺘﺨﺪم ﻧﻔﺲ ﻗﺎﻋﺪة اﻟﺒ€ ﺑapp ™ ﻣﻦ ﺑﺮﻧﺎﻣﺞ اوÂا ›
} ... ﻧﻔﺲ اﻟﻠﺤﻈﺔž} ﺎت اﻟ‚ ﺑﺘﻢ9 اﻟﻌﻤﻠž} ﺘﺤ—ﻢŸ ودە ﻣﻌﻨﺎە ﺑﺮﻧﺎﻣﺞ ﺑconcurrency control software
ﻌ~ ﻣﺜﻼk h h
}“
ﺔ ﺣﺠﺰ9ﻌﻤﻠﻮ ﻋﻤﻠk ”ﻣﻮﻇﻔ ٢ ﻤﻨﻔﻊ انk ‚ﻪ اﻟk ا... ﺮÂﺤﺠﺰ ﺗﺬا9™ ﻣﻦ ﻣﻮﻇﻒ ﺑÂا › ﻛﺔ ﻃ™ان ﻓﻴﻬﺎà ž} اﻓﺮض....
“ h
Page 10 of 40
}
à ﻜﻮن ﻓﻴﻬﺎk ﺖ ﻻزمŽﺎﻳgﻌﺎ دي ﺣﺎﺟﺔ ﻣﺘﻨﻔﻌﺶ ﻟ„ﻦ ﻗﺎﻋﺪة اﻟg ﻃ.... ﻧﻔﺲ اﻟﻠﺤﻈﺔ؟؟žh Ùاﻟ„ﺮ
‚اﻟ™ﻧﺎﻣﺞ اﻟ h ﻟﻨﻔﺲ
online transaction processing (OLTP) اﻟ™ﻧﺎﻣﺞ اﺳﻤﻬﺎ Ã ﻞ واﺣﺪة و‡ﺮﻓﺾ واﺣﺪة واﻻﻧﻮاع دي ﻣﻦgﻘk
Page 11 of 40
Database Designers
Database designers are responsible for identifying the data to be stored in the database
and for choosing appropriate structures to represent and store this data. These tasks are
mostly undertaken before the database is implemented and populated with data. It is the
responsibility of database designers to communicate with all prospective database users
in order to understand their requirements and to create a design that meets these
requirements. In many cases, the designers are on the staff of the DBA and may be
assigned other staff responsibilities after the database design is completed. Database
designers typically interact with each potential group of users and develop views of the
database that meet the data and processing requirements of these groups. Each view is
then analyzed and integrated with the views of other user groups. The final database
design must be capable of supporting the requirements of all user groups.
}“
ﻘﺎ•ﻠﻮk ﺎﻧﺎت ﻣﻬﻤﺘﻬﻢ اﻧﻬﻢ ﻳﺮوﺣﻮ9ﻣﺼﻤﻤ” ﻗﻮاﻋﺪ اﻟﺒ }“
وﻟ„ﻦ •ﺎﺧﺘﺼﺎر... ﻪ ﻣﻔﻬﻮم9•ﺎﻻﻧﺠﻠ™ي ﻫﺘﻼﻗ ﻼمËﻟﻮ ﻗﺮات اﻟ
} } }
ﻌ~ ﻣﻦ اﻻﺧﺮk ﻞ ﻳﻮمƒ ﺘﻌﺎﻣﻠﻮ ﻣﻌﺎﻫﺎŸﺤﺘﺎﺟﻮﻫﺎ او ﺑ9ﻛﺔ ﻣﺜﻼ و‡ﺠﻤﻌﻮ ﻣﻨﻬﻢ ﻣﻌﻠﻮﻣﺎت ﻋﻦ اﻟﺪاﺗﺎ اﻟ‚ ﺑª̀ اﻟžh ”اﻟﻤﻮﻇﻔ
“
وﻣﻤﻜﻦconcepual design او الERD و‡ﻌﻤﻠﻮ الbusiness requirementsﺎﺧﺪو ﻣﻨﻬﻢ ﻣﻌﻠﻮﻣﺎت ﻋﻦ الk
.Administrator او الDBA اﻟ‚ ﺗﺤﺖ الstaffﻜﻮﻧﻮا ﻣﻦ ﺿﻤﻦ الk
End Users
They use the data for queries, reports and some of them update the database content.
End-users can be categorized into:
Casual: access database occasionally when needed but they may need different
information each time. They use a sophisticated database query interface to specify
their requests and are typically middle- or high-level managers or other occasional
browsers.
}“
‚ او اﻟﻤﺴﺘﺨﺪم اﻟﻌﺎدي اﻟcasualع ﻫﻮ ال± اول ﻧ... ﺎﻧﺎت9ﺴﺘﺨﺪﻣﻮ ﻗﺎﻋﺪة اﻟﺒÀاﻟﻤﺴﺘﺨﺪﻣ” اﻟ‚ ﺑ ﺘ—ﻠﻢ ﻋﻦŸﻫﻨﺎ ﺑ
‡ﺔ ﻟﻠﺘﻌﺎﻣﻞ ﻣﻊ ﻗﺎﻋﺪة± ﺑﺘﻜﻮن ﻣﺨﺼﺼﺔ ﺷinterface ﺴﺘﺨﺪﻣﻮا ﺑﺮاﻣﺞ ﻟﻴﻬﺎÀ¢ﻞ ﻳﻮم وƒ ﺎﻧﺎت9ﺴﺘﺨﺪم ﻗﺎﻋﺪة اﻟﺒÀﺑ
.ﻘﻮ اﻟﻤﺪﻳˆ‡ﻦ ﻣﺜﻼgŸﺎﻧﺎت ودول ﻓﺎﻟﻐﺎﻟﺐ ﺑ9اﻟﺒ
Page 12 of 40
These include engineers, scientists, business analysts, and others who
thoroughly familiarize themselves with the facilities of the DBMS in order to
implement their own applications to meet their complex requirements.
Many use tools in the form of software packages that work closely with the
stored database.
› ﻞ9واﻟﻤﺤﻠﻠ” ودول ﻻزم ﻳﺘﻌﻠﻤﻮا و‡ﻌﺮﻓﻮ ﺗﻔﺎﺻ
™ ﻋﻦÂا }“ }“
”واﻟﻤﻬﻨﺪﺳ ‡ﺔ ذي اﻟﻌﻠﻤﺎء±” اﻟﻤﺘﻄﻮر‡ﻦ ﺷ } “ دول اﻟﻤﺴﺘﺨﺪﻣ
.ﺎﺟﺘﻬﻢ9ﺎﻧﺎت اﻟ‚ ﺗﺨﺪم اﺣﺘ9ﻌﻤﻠﻮ ﻗﻮاﻋﺪ اﻟﺒk ﻘﺪروk ﻋﺸﺎنDBMSال
Stand-alone:
Mostly maintain personal databases using ready-to-use packaged
applications.
An example is a tax program user that creates its own internal database.
Another example is a user that maintains an address book.
}“
ﻌﻤﻞk ﻘﺪرk ﺴﺘﺨﺪم ﻓﺎﻟﻐﺎﻟﺐ ﺑﺮاﻣﺞ ﺟﺎﻫﺰةÀ¢ وêﺎﻧﺎت ﻟﻼﺳﺘﻌﻤﺎل اﻟﺸﺨ9ﻌﻤﻠﻮا ﻗﺎﻋﺪة ﺑ9اﻟﻤﺴﺘﺨﺪﻣ” اﻟ‚ ﺑ ودول
.ﻪ9ﺎﻧﺎت ﺧﺎﺻﺔ ﺑ9ﻣﻦ ﺧﻼﻟﻬﺎ ﻗﻮاﻋﺪ ﺑ
System Analysts and Application Programmers
(Software Engineers)
System analysts determine the requirements of end users, especially naive and
parametric end users, and develop specifications for standard canned transactions that
meet these requirements. Application programmers implement these specifications as
programs; then they test, debug, document, and maintain these canned transactions.
Such analysts and programmers—commonly referred to as software developers or
software engineers—should be familiar with the full range of capabilities provided by the
DBMS to accomplish their tasks.
}“
اﻟ‚ ﻫﻤﺎDBMSﻌﺮﻓﻮش ﺣﺎﺟﺔ ﻋﻦ ال9اﻟﻌﺎدﻳ” اﻟ‚ ﻣ }“
”اﻟﻤﺴﺘﺨﺪﻣ } “ ™اﻟﻤ
ﺎﺟﺎت9ﺤﻠﻠﻮ اﺣﺘ9¢ﻣﺠ” اﻟ‚ ﺑﻴﻬﻤﻮا و Ã دول
}“
.”اﻟﻤﺴﺘﺨﺪﻣ ﺎﺟﺎت9ﻨﺎﺳﺐ ﻣﻊ اﺣﺘ€ﻞ دە ﻋﺸﺎن ﻳƒ ﻄﻮرو9 ﺑ.... canned transactionsﺴﺘﺨﺪﻣﻮ الÀﺑ
––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
‚ اﻟﻨﺎس اﻟoracle ﻛﺔà ذي ﻣﺜﻼ... Database management systemﻌﻤﻠﻮ ال9دول •ﺎﺧﺘﺼﺎر اﻟﻨﺎس اﻟ‚ ﺑ
او اﻟﻨﺎس اﻟ‚ •ﺖ.workers behind the scence ﻫﻤﺎ دول الoracle ﺑﺘﺎﻋﻬﻢ وﺳﻤﻮەDBMSﻓﻴﻬﺎ ﻋﻤﻠﻮ ال
––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
Page 13 of 40
6) Advantages of Using the DBMS Approach
Controlling Redundancy
ﺠﻠ™ي ﻫﻨﺎ ﻟ„ﻦ ﻫª̀Žح اﻟﻔﻜﺮة •ﺎﻻﺧﺘﺼﺎر ƒ ...ﻠﻤﺔ k redundancyﻘﺼﺪ ﺑﻴﻬﺎ اﻟ‡Øﺎدة ﻋﻦ اﻟﺤﺎﺟﺔ ﻣﺸﻬﻨﺤﻂ ƒﻼم اﻧ “ }
kﻌ~ اkﻪ ﺑﺮﺿﻮ واkﻪ ﻋﻼﻗﺘﺔ •ﻘﺎﻋﺪة اﻟﺒ9ﺎﻧﺎت ...ﺑ9ﻘﻮل ﻓﺎﻟﻨﻈﺎم اﻟﻘﺪkﻢ ﻗgﻞ اﺳﺘﺨﺪام ﻗﻮاﻋﺪ اﻟﺒ9ﺎﻧﺎت ƒﺎﻧﻮ ﺑ9ﺨﺰﻧﻮا } ...
اﻟﺒ9ﺎﻧﺎت žhﻣﻠﻔﺎت و9¢ﻌﻤﻠﻮ ﺑﺮاﻣﺞ ﻣﺨﺼﻮﺻﺔ ﻟﻠﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﻠﻔﺎت دي ....دە ﻗﻮﻟﻨﺎە ﻗgﻞ ﻛﺪة ...وƒﺎن ﺑ9ﺤﺼﻞ اkﻪ}
“}
وﻣﺴﺠﻠ” اﺳﻢ اﻟﻄﺎﻟﺐ وﺗﺎر‡ـ ــﺦ ﻣ9ﻼدە وﺳﻨﻪ واﻟﻤﻮاد اﻟ‚ “}
ﻋﺎﻣﻠ” ﻣﻠﻔﺎت ﻟﻠﻄﻠgﺔ ﻣﻮﻇﻔ” اﻟﺸﺌﻮن اﻹدار‡ﺔ “} ...ﻣﺜﻼ
“} “} }
درﺳﻬﺎ وﺗﻘﺪﻳﺮە ƒ žhﻞ ﻣﺎدة ...
ﻋﺎﻣﻠ” ﻣﻠﻔﺎت ﺗﺎﻧ9ﺔ ﻟﻠﻄﻠgﺔ ﻓﻴﻬﺎ اﺳﻢ اﻟﻄﺎﻟﺐ وﺳﻨﻪ وﺗﺎر‡ـ ــﺦ وﻣﻮﻇﻔ” اﻟﺤﺴﺎ•ﺎت ﺑﺮﺿﻮ
و¢ﺎﻟﺘﺎ¼ ﺑÀﺴﺘﺨﺪﻣﻮا ﻣﺴﺎﺣﺔ “}
ﻣﺴﺠﻠ” ﻧﻔﺲ اﻟﺒ9ﺎﻧﺎت “}
اﻟﻘﺴﻤ” ﻣ9ﻼدە واﻟﻤﺼﺎر‡ﻒ اﻟ‚ دﻓﻌﻬﺎ ﻣﺜﻼ ....ﺗﻼﺣﻆ ان
h
ﺗﺨ‡Øﻦ ز‡ﺎدة ﻋﻦ اﻟﺤﺎﺟﺔ او ز‡ﺎدة ﻋﻦ اﻟﻠﺰوم ودە اﻟ‚ اﺳﻤﻪ redundancy
وﻣﺸÔﺲ ﻛﺪة ...ﻟﻤﺎ ﺑﻨﻌﻤﻞ ﺗﻌﺪkﻞ ﻋ‚ ﺑ9ﺎﻧﺎت ﻃﺎﻟﺐ ﻻزم ﺗﻌﺪل }ƒ žﻞ اﻟﻤﻠﻔﺎت اﻟ‚ } žاﻷﻗﺴﺎم }
kﻌ~ اﻟﻤﺠﻬﻮد h h }
اﻟﻤ™ول žhاﻟﺘﻌﺪkﻞ ﻣﻀﺎﻋﻒ ....وƒﻤﺎن اﻧﺖ ﻣﺘﻀﻤŽﺶ اﻧﻪ ƒﻞ اﻟﻤﻠﻔﺎت ﻫﺘﺘﻌﺪل أﺻﻼ ودي ﺑÀﺴﻤﻮﻫﺎ }Ã
}
kﻌ~ ﻣﺜﻼ ﻣﻤﻜﻦ درﺟﺔ ﻃﺎﻟﺐ žﻛﻮرس “ }
ﻣﻌ” }
inconsistencyوﻣﺘﻀﻤŽﺶ اﻧﻬﺎ ﻣﻤﻜﻦ ﺗﺘﻌﺪل ﺻﺢ ƒ žﻞ اﻟﻤﻠﻔﺎت }
h h }
}
ﺗﺎ• ¤ﺎﻟﻐﻠﻂ ﻳﺘﻜﺘﺐ ٩٠ } žﻣﻠﻒ “ }
ﻣﻌ” ﻳﺘﻜﺘﺐ h ٦٠
و žﻣﻠﻒ h h
ﻟ„ﻦ } žhﻗﻮاﻋﺪ اﻟﺒ9ﺎﻧﺎت ﻣﻔÀﺶ ƒﻞ اﻟﻤﺸﺎæﻞ دي ﻻن ƒﻞ اﻟﺒ9ﺎﻧﺎت ﻣﻮﺟﻮدة } žhﺣﺘﺔ وﺣﺪة ﻣﻊ •ﻌﺾ و9¢ﺤﺼﻞ اﻟﺘﻌﺪkﻞ
ﻣﺮة واﺣﺪة.
Restricting Unauthorized Access
kﻌ~ ﻣﺜﻼ } žhﻣﻤﻜﻦ ﺗﺮوح ¦ﺸﺘﻐﻞ
ﻣ” ﻳﺘﻌﺎﻣﻞ ﻣﻊ ﻗﺎﻋﺪة اﻟﺒ9ﺎﻧﺎت } ﻫﻨﺎ ﻋﺎﻳﺰ kﻘﻮل ان ال DBMSﺑÀﺴﻤﺤﻠﻚ ﺗﺘﺤ—ﻢ }} “ ž
h
}
وž
h ﻓﻘﻂ ﺑ9ﺎﻧﺎت ﻋﻦ ¦ﺴﺘﻌﻠﻢ اﻧﻚ ﻣﺜﻼ ذي ﻨﺔ ﻣﻌﻴ ﺻﻼﺣ9ﺎت ﻟ9ﻚ ﻟ„ﻦ ﻓ̀ªﻛﺔ ﻓ9ﻌﻤﻠﻚ اÂﻮﻧﺖ ﻋ‚ ﺳÀﺴﺘﻢ اﻟ̀ªﻛﺔ و
}
اﻟﺤﺎﻟﺔ دي اﻧﺖ اﺧﺮك ﺗﺠ9ﺐ داﺗﺎ ﻣﻦ اﻟﺪاﺗﺎ “ﺑ™ ﻟ„ﻦ ﻣﺘﻘﺪرش ﺗﻌﺪل ﻣﺜﻼ وƒﻤﺎن ﻣﻤﻜﻦ kﻜﻮن ﻣﺸﻤﺴﻤﺤﻮﻟﻚ ¦ﺸﻮف
kﻌ~ ﻣﻤﻜﻦ ﻣ9ﻜﻮ¹ﺶ ﻣﺴﻤﺤﻮﻟﻚ اﻧﻚ ¦ﺸﻮف ﻣﺮﺗﺎ•ﺎت اﻟﻨﺎس ﻟ„ﻦ ﻫ9ﻜﻮن ﻣﺴﻤ±ح ƒﻞ اﻟﺒ9ﺎﻧﺎت او ›
¦ﺴ™ﺟﻊ ƒﻞ اﻟﺒ9ﺎﻧﺎت }
اﻟﻤﺤﺘﺎﺟ” ﻧﻌﺮﻓﻪ } žhاﻟﺠﺰء دە.
“} ﻟﻤﻮﻇ “ }
ﻔ” اﻟﺤﺴﺎ•ﺎت وال ... HRدە ه
Providing Persistent Storage for Program Objects
ﺣ~ Structاو ... objectﻗ9ﻢ اﻟﺪاﺗﺎ ديﻣﺘﻐ™ات او ›
“ ﻫﻨﺎ ﺑ9ﻘﻮل ان ﻣﺜﻼ واﻧﺖ ﺑﺘﻌﻤﻞ ﺑﺮﻧﺎﻣﺞ •ﺎل C++و¢ﺘﻌﺮف
اﻟﻤ™ﻣﺞ ﻋﺎﻳﺰ اﻟﻘ9ﻢ دي ﻣﺘﺘﻤﺴﺤﺶ اﻟ™ﻧﺎﻣﺞ kﺤﺼﻠﻪ runوﺧﻼص ....ﻟ„ﻦ ﻓﺮﺿﺎ Ã ﺑ€ﺘﻤﺴﺢ ﻣﻦ اﻟﻤ9ﻤﻮري •ﻤﺠﺮد ﻣﺎ Ã
} } }
ﺗﺎ ¤وÊﺴﺘﺨﺪﻣﻬﺎ ﻟ„ﻦ ﺧﺎﻟﺺ ﻓﺒk •9ﺨﺰﻧﻬﺎ žhﻣﻠﻒ وﻟﻤﺎ kﺤﺘﺎج اﻟﻘ9ﻢ دي ﺑ9ﻌﻤﻞ ﻛﻮد kﺤﻮل اﻟﻤﻠﻒ دە ﻟﻘ9ﻤﺔ h
اﻟﻤ™ﻣﺞ kﺨﺰن ﻗ9ﻢﺑﺘﺨ‚ Ãh ال DBMSﻓ9ﻪ ﺣﺎﺟﺔ اﺳﻤﻬﺎ Object-oriented database systemsودي ﺧﺎﺻ9ﺔ
ﺗﺎk ¤ﻘﺪر ¸ﺴﺘﺨﺪﻣﻬﺎ ﻋﺎدي.} }
ال objectﻣﺜﻼ žhﻗﺎﻋﺪة اﻟﺒ9ﺎﻧﺎت وﻟﻤﺎ kﺤﺘﺎﺟﻬﺎ ال DBMSﺑ9ﺤﻮﻟﻬﺎ ﻟﻘ9ﻤﺔ h
Providing Storage Structures and Search Techniques for
Efficient Query Processing
دي ﻣﻤﻜﻦ ﺗﺘﻘﺮاي ﻣﻦ اﻟﻤﺮﺟﻊ وﻣﻌﺘﻘﺪش اﻟﺪﻛﺘﻮر ﻫﻴﺘ—ﻠﻢ ﻋﻨﻬﺎ.
Page 14 of 40
Providing Multiple User Interfaces
ﻘﺪر ﻣﻦk او واﺟﻬﺔ ﻣﺴﺘﺨﺪمgraphical user interfaces اوGUI ﻜﻮن ﻓﻴﻬﺎk ﻻزمDBMSﻘﻮل ان الk ﻫﻨﺎ ﻋﺎﻳﺰ
ﺎﻧﺎت و‡ﺘﻌﺎﻣﻞ ﻣﻌﺎﻫﺎ9ﻌﻤﻞ ﻗﺎﻋﺪة ﺑk ﺧﻼﻟﻬﺎ
ﺣﺮف٢٠ ﺴﺘﻤﺤﻠﻚ ﺗﺤﻂ ﻗﻴﻮد ﻋ‚ اﻟﺪاﺗﺎ ذي ﻣﺜﻼ اﺳﻢ اﻟﻄﺎﻟﺐ ﻻ ﻳﺘﻌﺪىÀﻜﻮن ﺑk DBMSﻘﻮل ان ﻻزم الk ﻘﺼﺪk ﻫﻨﺎ
.وﻏ™ە ﻣﻦ اﻟﻘﻴﻮد
“ NULL ﺶ¹ﻜﻮ9ﻌ~ ﻣﻴﺘﻜﺮرش وﻣk } ﻜﻮن ﻓˆ‡ﺪ اوk ~ﻌk
} primary key ﻜﻮن9 ﻫIDاو ان ال
DBMSﻘﻮﻟﻨﺎ ان الk ﻓﻬﻨﺎ ﻋﺎﻳﺰ... ﺔ9ﻘﺼﺪ ﺑﻴﻬﺎ ﺣﺪث ﻟﻮ ﺣﺼﻞ ﻫﻴﺆدي ا¼ ﺣﺪوث •ﻌﺾ اﻻﺣﺪاث اﻟﺘﺎﻧk trigger ﻠﻤﺔƒ
ﺎﻧﺎت9 ﻣﺜﻼ ﻟﻘﺎﻋﺪة اﻟﺒupdate ﺤﺼﻞ9 ﻟﻮ ﺣﺼﻠﺖ ﺑcondition او ﺗﺤﻂtrigger ﻠﺔ اﻧﻚ ﺗﺤﻂ9ﻜﻮن ﻓﻴﻬﺎ وﺳ9ﺑ
.ﺎﻧﺎت ﻣﻌﻴﻨﺔ9ﻟﺒ
Page 15 of 40