5/13/2013

[كتاب] الموسوعة العربية لادارة قاعدة البيات اوركل

السلام عليكم

كتاب اكثر من رائع يتحدث عن قواعد البيانات فى اصدار 10G لـ مديرى قواعد البيانات  بـ اسم (الموسوعة العربية لادارة قاعدة البيات اوركل )

لـ استاذ / ابى صلاح الميرغنى 

مقطتفات من الكتاب:

مكونات قاعدة البيانات:

من البديهي أن نبدأ حديثنا ونقاشنا عن إدارة قاعدة البيانات بهذا الموضوع الهام، إذ أن مدير قاعدة
البيانات بحاجة ماسة لمعرفة مكونات قاعدة البيانات وطريقة عملها، وإذا تعذر عليه استيعاب هذا الجزء
فالأرجح أنه سوف يواجه مشاكل أكبر في استيعاب التفاصيل التي ُتبني أساسًا علي هذا الأصل ، لذا
وجب علي مدير قاعدة البيانات الاهتمام بهذا الجزء أيما اهتمام.

4/09/2013

Correlated Subqueries

السلام عليكم 
Correlated Subqueries

يستخدم الـ Correlated Subqueries لمعالجه الصفوف (صف صف) ويتم تنفيذ كل استعلام فرعى مره واحده لكل صف من الأستعلام الخارجى (outer query) وتتم معالجته بواسطه (parent statement) ويمكن ان يكون parent statement جمله select ,update and delete

اعتقد ان الكلام مبهم بعض الشىء ولكن ان شاء الله من خلال الأسطر القادمه سوف يتضح لك الأمر بشكل واضح واكثر تفصيل ولكن اقرا الموضوع من البدايه للنهايه اكثر من مره  فى حاله لو لم تتضح لك الرؤيا -بس ان شاء الله مع نهايه الموضوع وقرائته بتمعن هتلاقى كله تمام - واى سؤال حاضر ان شاء الله

نرجع لموضعنا الأساسى فى البدايه انت محتاج انك تعرف الفرق بين Nested subquery والـ Correlated Subqueries  ومن خلال الفروقات ده هتقدر تعرف ايه هو اصلا Correlated Subqueries وامتى تستخدمه وهتستفيد ايه لما تستخدمه لان من بره شكل Nested subquery و Correlated Subqueries شبه بعض .

ما الفرق بين  Nested subquery و Correlated Subqueries ؟
Nested Subqueries Versus Correlated Subqueries

4/02/2013

Scalar Subquery Expressions

السلام عليكم
Scalar Subquery Expressions

هو عباره عن subquery  يقوم  بأسترجاع قيمه واحده من عمود فى صف واحد وقيمه scalar subquery expression تأتى من جمله الـ SELECT...
 فى حاله ان scalar subquery يسترجع 0 اذن فـ قيمته تساوى null فى حاله scalar subquery قام بأسترجاع اكثر من صف -returns more than one row- تظهر اوركل خطأ.

يمكنك استخدام Scalar Subquery Expressions  فى الحالات التاليه:


The condition and expression part of DECODE and CASE
All clauses of SELECT except GROUP BY
The SET clause and WHERE clause of an UPDATE statement

4/01/2013

Column Comparisons

السلام عليكم 

يوجد نوعان من Column Comparisons :
Pairwise comparison 
Nonpairwise comparison

Pairwise comparison

Code

SELECT EMPLOYEE_ID
     , MANAGER_ID
     , DEPARTMENT_ID
FROM   EMPLOYEES
WHERE (MANAGER_ID, DEPARTMENT_ID) IN (SELECT MANAGER_ID
                                           , DEPARTMENT_ID
                                      FROM   EMPLOYEES
                                      WHERE  EMPLOYEE_ID IN (199,174))
AND    EMPLOYEE_ID NOT IN (199,174);


3/16/2013

Managing Data in Different Time Zones

السلام عليكم
Managing Data in Different Time Zones

ان شاء الله بعد انتهاءك من الدرس ستكون قادر على فهم واستخدام الـ Functions التاليه :

• TZ_OFFSET
• FROM_TZ
• TO_TIMESTAMP
• TO_TIMESTAMP_TZ
• TO_YMINTERVAL
• CURRENT_DATE
• CURRENT_TIMESTAMP
• LOCALTIMESTAMP
• DBTIMEZONE
• SESSIONTIMEZONE
• EXTRACT

2/21/2013

Tracking Changes in Data

السلام عليكم
Tracking Changes in Data

قد تكتشف فى بعض الأحيان وجود تحديثات غير لائقه فى البيانات داخل الجداول وتريد ان تعرف متى تم اضافه هذه البيانات داخل الجداول ففى هذه الحاله يمكنك استخدام multiple flashback queries لأستعراض البيانات عند نقطه معينه فمن خلال هذه الأداه سوف تتمكن من استعراض كافه التغييرات على البيانات خلال فترات زمنيه مختلفه.
ملحوظه : يمكنك عمل ذلك فى حاله كان اصدار قاعده البيانات لديك اقل من او يساوى oracle database 10g.1
ولكن ما بعد ذلك فهى تعمل خلال فتره زمنيه لا تتجازو الـ 900 ثانيه 
وتمكنك هذه الاداه من الحاق VERSIONS clause الى جمله SELECT لكى تتمكن من تحديد فتره زمنيه معينه بأستخدام SCN or timestamp   لكى تتمكن من رؤيه التعديلات التى تمت  على البيانات 
ما هو (SCN) ؟
هو System Change Number
تقوم اوركال بأدخال ارقام معينه الى الصفوف فى قاعده البيانات بعد كل عمليه حفظ لكى تتمكن بعد ذلك من الرجوع الى نقطه معينه 

فى المثال التالى سوف اقوم بعمل update على جدول employees سوف اقوم بتعدل راتبه من كذا الى كذا ثم سوف استعرض راتبه قبل التحديث وبعد التحديث ثم سوف استخدام VERSIONS clause لـ استعراض راتبه قبل التحديث وبعده.


2/18/2013

The MERGE Statement

السلام عليكم
The MERGE Statement

تمكنك جمله MERGE من عمل INSERT , UPDATE and DELETE  فى جدول معين بناء على شرط معين ولكى تتمكن من عمل اضافه او تعديل او حذف على جدول معين يجب ان تمتلك هذه الصلاحيات على هذا الجدول ويجب ان تمتلك صلاحيه SELECT من الجدول المراد الاستعلام عنه لـ اضافه ما تم الاستعلام عنه فى جدول المراد التعديل او الاضافه او الحذف عليه بناء عليه فـ انت لديك جدولين جدول -source- وهذا الجدول سيتم منه الاستعلام وجدول اخر -target- وهذا ما سيتم التعديل عليه.
الكود العام لـ MERGE
General Code
MERGE INTO table_name table_alias
USING (table|view|sub_query) alias
ON (join condition)
WHEN MATCHED THEN
UPDATE SET
col1 = col_val1,
col2 = col2_val
WHEN NOT MATCHED THEN
INSERT (column_list)
VALUES (column_values);

2/11/2013

Multitable INSERT Statements

السلام عليكم
Multitable INSERT Statements

ما هو Multitable INSERT Statements ؟
هو يمكنك من  ادخال عده قيم فى اكتر من جدول فى وقت واحد
هو مناسب جدا لـ انظمه المستودعات -warehousind- حيث يمكنك من نقل البيانات الناتجه عن اكثر من عمليه لوضعها فى جدول معين.
وهو اداه سريعه جدا مقارنه بـ استخدام جمل Single DML اوجمل IF فى عمليات INSERT
توجد عده انواع لـ Multitable INSERT Statements
Unconditional INSERT
Conditional ALL INSERT
Conditional FIRST INSERT
Pivoting INSERT
General Code
INSERT [ALL] [conditional_insert_clause]
[insert_into_clause value_clause] (subquery)
# conditional_insert_clause
[ALL] [FIRST]
[WHEN conditional THEN] [insert_into_clause values_clause]
[ELSE] [insert_into_clause values_clause]

2/10/2013

BLOG.ARAFA.ME

السلام عليكم

تم تغيير اسم المدونه من arafaa.blogspot.com الى blog.arafa.me عند استخدامك لـ الدومين القديم سوف يتم تحويلك الى الدومين الجديد مع ظهور هذه الصفحه فلا تقلق استكمل العمليه



2/09/2013

Explicit Default Feature

السلام عليكم
Explicit Default Feature

يمكنك استخدام default مع جمله insert or update لوضع قيمه افتراضيه داخل عمود معين . فى حاله عدم وجود قيمه افتراضيه سوف تقوم اوركال بوضع قيمه null 
فى المثال التالى سوف استخدام default مع جمله insert 
Code
INSERT INTO DEPT 
(DEPARTMENT_ID , DEPARTMENT_NAME,MANAGER_ID)
VALUES
(300,'DEVELOPER',DEFAULT);

2/07/2013

Updating Two Columns with a Subquery,Deleting Rows Based on Another Table

السلام عليكم
Updating Two Columns with a Subquery

كيف يمكنك عمل تحديث لعمودين او اكثر بأستخدام الـ subquery
فى المثال التالى يوجد جملتين subquery   فى الاولى اريد ان اجعل قيمه الـ job_id تساوى نفس قيمه الـ job_id للموظف رقم 205. فى الثانيه اريد ان اجعل قيمه الراتب نفس قيمه راتب الموظف رقم 205 واريد اجمالاعمل تحديث للقيم فى جدول emp13 للموظف رقم 104

Code
UPDATE EMP13
SET         JOB_ID = (SELECT JOB_ID
                              FROM    EMPLOYEES
                              WHERE  EMPLOYEE_ID = 205)
                                    ,
               SALARY= (SELECT SALARY
                              FROM   EMPLOYEES
                              WHERE EMPLOYEE_ID = 205)
WHERE EMPLOYEE_ID = 104;

2/04/2013

Inserting Using a Subquery as a Target , (Retrieving Data with a Subquery as Source (in line view

السلام عليكم
Inserting Using a Subquery as a Target

درس اليوم عكس المره السابقه :) لقد تحدث فى درس سابق عن كيف يمكنك اضافه صف او اكتر من صف داخل جدول باستخدام الـ Subquery وقد استخدمنا ال subquery للاستعلام عن قيمه معينه وادخالها فى الجدول كـ قيمه .

ولكن اليوم سوف نستعلم عن جدول ونضع له القيمه بأستخدام جمله 
value clause
Code
INSERT INTO 
(SELECT EMPLOYEE_ID
               ,LAST_NAME
               ,EMAIL
               ,HIRE_DATE
               ,JOB_ID
               ,SALARY
               ,DEPARTMENT_ID
FROM    EMP13
WHERE  DEPARTMENT_ID = 50);
VALUE
(99999,'ARAFA','A.ARAFA',TO_DATE('5-NOV-1986','DD-MON-RR'),'ORA_DEV'
,':D',50);

2/02/2013

Using Subqueries to Manipulate Data , Copying Rows from Another Table

السلام عليكم
Using Subqueries to Manipulate Data

يمكنك استخدام subquery مع جمل DML 
ويمكنك الاستفاده من subquery فى التالى :

يمكنك نقل البيانات من جدول الى اخر
يمكنك استعاده او استقبال البيانات من inline view
يمكنك تعديل البيانات فى جدول بناء على قيمه مُرسله من جدول آخر
يمكنك مسح صف من جدول بناء على صف من جدول آخر
يمكنك استخدام subqueries  لـ استعاده البيانات من جدول ويمكنك استعمالها فى ادخال البيانات لـ جدول آخر ومن خلال هذا الاسلوب او المنهج يمكنك نقل كميه كبيره من البيانات بسهوله من جدول الى جدول آخر بأستخدام جمله الـ SELECT 
ويمكنك ايضا استخدام subqueries للتعديل او الحذف مع WHERE CLAUSE فى جمله الـ UPDATE OR DELETE ويمكنك ايضا استخدام subqueries مع FORM CLAUSE وهذا ما يسمى بـ INLINE VIEW

2/01/2013

Backup Oracle Database (Oracle Enterprise Manager)

السلام عليكم

كيف يمكنك اخذ نسخه احتياطيه من قاعده بيانات اوركال بأستخدام Oracle Enterprise Manager
قم بلدخول على OEM بأستخدام الرابط التالى
http://LOCALHOST:1158/em
استبدل   LOCALHOST   فى حاله لو لم تكن على سيرفر قاعده البيانات واستبدلها بـ IP سيرفر قاعده البيانات
ثم قم بكتابه اسم المستخدم وكلمه مرور مدير قواعد البيانات ثم اختر من connect as --> SYSDBA

صوره (1)

1/31/2013

Cascading Constraints , ON DELETE CASCADE

السلام عليكم
Cascading Constraints

هى تقوم بـ الغاء العلاقات بين الجداول فى حاله Primary key,Unique , Foreign key
 يمكنك استخدامها مع جمله DROP COLUMN 
يمكنك ايضا من خلالها مسح اكتر من قيد فى نفس الوقت 
على سبيل المثال عندى جدول بأسم test_constraint يوجد علاقه ما بين عمود fk وعمود pk وهى علاقه اب لـ ابن
Code

CREATE TABLE  TEST1 (
PK     NUMBER PRIMARY KEY,
FK     NUMBER,
COL1 NUMBER,
col2   NUMBER,
CONSTRAINT fk_constraint FOREIGN KEY (fk) REFERENCES test1,
CONSTRAINT CK1 CHECK (PK > 0 AND COL1 > 0),
CONSTRAINT ck2 CHECK (col2 > 0));

1/29/2013

The FLASHBACK TABLE Statement

السلام عليكم
The FLASHBACK TABLE Statement

هى ميزه جديده توفرها قاعده بيانات اوركال فى اصدار 10 جى وهى تصنف ضمن SQL DDL. تمكنك هذه الاداه من الرجوع الى نقطه معينه على سبيل المثال لو قمت بمسح جدول عن طريق الخطأ واردت ان تستعيد هذا الجدول مره اخرى ولكن فى حاله استخدامك للامر PURGE لن تتمكن من استعاده اى شىء قمت بحذفه.
 وايضا اذا قمت بمسح او تعديل عمود معين او صف يمكنك من خلال الـ FLASHBACK تستطيع ان تعود الى نقطه معينه وهى اداه سهله وسريعه وبسيطه فى الاستعمال وتمكنك ايضا من استرجاع اكتر من جدول فى نفس الوقت على اكثر من SCHEMA كل ما عليك فعله هو عمل جمله استعلام معينه على RECYCLEBIN  ويظهرلك من خلالها اسم الجدول وحالته والوقت الذى تم فيه عمليه المسح.
هذا هو الكود العام للأمر

1/27/2013

Oracle Enterprise Manager (Host Credentials)

السلام عليكم
Oracle Enterprise Manager (Host Credentials)

 قد تحتاج الى بعض المميزات التى يتيحها لك Oracle Enterprise Manager على سبيل المثال  Schedule Backup لـ استكمال عمليه الـ Backup سوف يطلب منك ادخال كل من اسم المستخدم وكلمه المرور الخاصه بـ Host Credentials وهنا هو يريد ادخال اسم المستخدم وكلمه المرور التى تدخل من خلالهم الى نظام التشغيل لديك .عند ادخالك لهم سوف يظهر لك الخطأ التالى
صوره رقم (1)

How to reset System password when you forgotten

السلام عليكم

كيف يمكنك استعاده كلمه المرور فى حاله فقدانها او نسيانها او ما اشابهه ذلك درس اليوم ارى فيه ميزه كبيره وعيب كبير ايضا والميزه تكمن فى ان فى حاله لا يقدر الله فقدت كلمه مرور مدير النظام .. اذن فـ انت فى مشكله كبيره فمن خلال هذا الدرس ستتمكن ان شاء الله من استرجاعها .. اما العيب فـ يكمن فى ..من وجهه نظرى ان من خلال استخدام مجموعه الاوامر التاليه يستطيع اى شخص من عمل تغيير او استعاده لكلمه مدير النظام وارى فى ذلك خطأ كبير فى نظام حمايه قواعد بيانات اوركال.

قم بفتح برنامج sql plus ثم اكتب فى خانه user name

1/25/2013

How to UPGRADE Fedora 17 to Fedora 18

السلام عليكم 

درس اليوم عن كيفيه عمل تحديث من فيدورا 17 الى فيدورا 18 الموضوع سهل وبسيط كل ما عليك فعله هو كتابه مجموعه الاوامر التاليه وان يكون جهازك متصل بلانترنت

فى البدايه يجب ان يكون لديك صلاحيات الـ root باستخدام الامر التالى 
su -
ثانيا نحتاج لعمل تحديث لحزم rpm باستخدام الامر التالى
yum -y update
yum clean all
قم بعمل اعاده تشغيل للجهاز

1/23/2013

Oracle INDEXES

السلام عليكم

درس اليوم عن Oracle INDEXES 
يوجد نوعان من INDEXES :
الاول:
يتم بناءه بشكل اتوماتيكى عند انشاءك لـ PRIMARY KEY OR UNIQUE KEY داخل الجدول وهذا النوع المفضل عند اوركال
الثانى :
عند استخدامك لكل من CREATE INDEX OR CREATE TABLE
دعنا نتحدث اكتر عن النوع الثانى بمثال :
Code
CREATE TABLE NEW_EMP
(employee_id NUMBER(6)
PRIMARY KEY USING INDEX
(CREATE INDEX emp_id_idx ON
NEW_EMP(employee_id)),
first_name VARCHAR2(20),
last_name VARCHAR2(25));

1/22/2013

How to Disable / Enable Constraint

السلام عليكم

درس اليوم عن كيفيه تعطيل او تفعيل القيود Constraint
Code
To Disable
ALTER TABLE EMP
DISABLE CONSTRAINT EMP_DPT_FK;

1/19/2013

Adding a Constraint Syntax , How to DROP CONSTRAINT

السلام عليكم
Adding a Constraint Syntax

درس اليوم عن كيفيه اضافه شرط معين على عمود فى جدول معين
لقد تحدثنا فى درس سابق عن امر Alter وقد سردنا بعض الخصائص التى يمكنك الاستفاده منها من هذا الامر يمكنك مشاهده الدرس السابق من خلال هذا الرابط
عند استخدامك لـ الامر Alter يمكنك ايضا من التالى :
- يمكنك من اضافه شرط جديد او مسح شرط تم اضافته من قبل.
- يمكنك من عمل تعطيل او تفعيل للشرط.
- يمكنك من اضافه not null باستخدام MODIFY
هذا هو الشكل العام للكود وبناء عليه تقوم بلتعويض عن ما تحتاجه من قيم
Code
ALTER TABLE <table_name>
ADD [CONSTRAINT <constraint_name>]
type (<column_name>);

How to install Fedora 18 with windows 8

السلام عليكم

يمكنك تثبيت فيدورا 18 مع ويندوز 8 من خلال الفيديو التالى
كما يمكنك ايضا تحميل فيدورا 18 من هنا
ويمكنك ايضا تثبيت فيدورا 18 من هنا 



1/17/2013

How to install Fedora 18 , Download Fedora 18

السلام عليكم

درس اليوم عن .. كيف يمكنك تثبيت فيدورا 18 ويمكنك مشاهده الفيديو التالى لمعرفه طريقه التثبيت

يمكنك تحميل فيدور 18 من هذا الرابط والتى تحمل اسم  Spherical Cow
او يمكنك تحميلها من خلال التورنت من هذا الرابط





1/16/2013

The Alter Table Statment , Drop Table PURGE

السلام عليكم
The Alter Table Statment

 درس اليوم عن امر Alter يمكنك هذا الامر من عمل التالى : 
1- يمكنك من اضافه عمود جديد.
2-يمكنك من التعديل على عمود موجود بلفعل.
3-يمكنك من تحديد قيمه -default value- افتراضيه لعمود جديد. 
4- يمكنك من مسح عمود.
بعد انشاء جدول جديد قد تحتاج لـ اضافه عمود جديد مسح عمود معين او اضافه قيمه افتراضيه لعمود معين او ماشابه ذلك اذا, واجهتك اى من الحالات السابقه اذن ف انت تحتاج الى الامر Alter
فى الامثله التاليه سوف اوضح الكود الافتراضى للـ Alter فى عمليات الاضافه او التعديل او المسح
فى عمليه الاضافه
Code
ALTER TABLE table
ADD (column datatype [DEFAULT expr]
[, column datatype]...);  

1/13/2013

Oracle Object Privileges

السلام عليكم
Oracle Object Privileges


اذا كان لديك صلاحيات الـ DBA  فـ انت بلتالى تمتلك اعطاء وسحب هذه الكائنات من والى المستخدمين وان لم يكن لديك صلاحيات ال DBA ولديك بعض الصلاحيات على اى من الكائنات الموضحه بلجدول فـ بأمكانك اعطاء ما تملك لمن يستحق :)
كما هو موضح بلجدول تعريف للكائنات -objects- وصلاحياتها وكيفيه استخدمها على سبيل المثال يمكنك استخدام امر ALTER مع table ولا يمكنك استخدامه مع ال VIEW وهكذا

كيف يمكنك اعطاء بعض الكائنات -objects- الى مستخدمين اخرين من الـ Schema الخاصه بك.. الخاصه بك تعنى هنا اى التى لديك انت عليها صلاحيات.
يمكنك استخدام الكود التالى لـ اعطاء الكائن المناسب للمستخدم المطلوب
فى المثال التالى سوف اعطى الكائن SELECT لمستخدمين 
اخريين

1/12/2013

What is a Oracle Role ?

السلام عليكم

ما هو الـ Role ؟

هى عباره عن مجموعه من الصلاحيات يمكن اعطائها للمستخدم وهذه الطريقه تسهل بعد ذلك سحب الصلاحيات من المستخدم او عمل ما يشبه الصيانه للـ Role والمقصود بلصيانه هنا هى اضافه صلاحيات اخرى للـ Role او مسح صلاحيات منها.
يستطيع اكتر من مستخدم ان يكونو فى نفس ال Role ويمكن اكتر من Role تكون لمستخدم واحد ويتم انشاء الـ Role داخل قاعده البيانات.
كيف تقوم بأنشاء Role جديده ؟
اذا لم تكن Dba او ليس لديك صلاحيات الـ Dba فى هذه الحاله يقوم الـ Dba بأنشاء Role جديده ثم يبدأ فى اعطاء الصلاحيات للـ Role ومن الـ Role يوزع الصلاحيات على المستخدمين

1/10/2013

How to get first SATURDAY after six months

السلام عليكم

من خلال الكود التالى سوف تحصل على اول سبت بعد سته اشهر
Code
SELECT
             NEXT_DAY(ADD_MONTHS(TRUNC(SYSDATE,'YEAR'),6),'SAT')
FROM  DUAL;

1/09/2013

Viewing Memory Use for Each User Session

السلام عليكم

 session سنتحدث اليوم عن كيفيه معرفه استخدام كل مستخدم من الميمورى فى قاعده البيانات على مستوى كل 
Code
SELECT
       USERNAME
     , VALUE || 'bytes' "Current UGA memory"
FROM   V$SESSION sess
     , V$SESSTAT stat
     , V$STATNAME name
WHERE
       sess.SID = stat.SID
       AND stat.STATISTIC# = name.STATISTIC#
       AND name.NAME = 'session uga memory';

Oracle Books SQL , PL/SQL

السلام عليكم

10 g كتب اوركال 
SQL 10g
PL/SQL 10g
FORMS 10g

Report 10g



Oracle Developer 
Ahmed Arafa

1/08/2013

Oracle System Privileges (DBA)

السلام عليكم

  DBA سنتحدث اليوم عن صلاحيات مدير النظام

يوجد اكتر من 100 صلاحيه لمدير النظام بأمكانه استخدامها او منحها لـ مستخدمين اخرين 
على سبيل المثال

CREATE USER
بأمكانه انشاء مستخدم جديد او اعطاء صلاحيه انشاء مستخدم جديد فى اى اسكيما لـ اى مستخدم اخر فى اى اسكيما
DROP USER
بأمكانه مسح اى مستخدم او اعطاء الصلاحيه لذلك لـ اى مستخدم اخر
DROP ANY TABLE
 او اعطاء الصلاحيه لذلك -SCHEMA- بامكانه مسح اى جدول داخل اى اسكيما
BACKUP ANY TABLES
EXPORT UTILITY بأمكانه اخد نسخه احتياطيه من اى اسكيما واعطاء الصلاحيات لذلك بأستخدام اى  
SELECT ANY TABLE
 فى اى اسكيما واعطاء الصلاحيات لذلك VIEW OR SNAPSHOTS بأمكانه الاستعلام عن اى جدول او 
CREATE ANY TABLE
بامكانه بناء اى جدول فى اى اسكيما واعطاء الصلاحيات لذلك

 DBA فى الجدول التالى يوضح اغلب صلاحيات ال 


1/07/2013

How to Create/Unlock/Change User in oracle database

السلام عليكم

سنتحدث اليوم عن كيفيه انشاء او اضافه مستخدم جديد فى قاعده بيانات اوركال 
Code
CREATE USER ARAFA
IDENTIFIED BY AHMED;
ARAFA فى السطر الاول من الكود قمت باضافه مستخدم جديد بـ اسم 
فى السطر الثانى قمت بأنشاء كلمه مرور للمستخدم

ملحوظه: لا يستطيع اى مستخدم انشاء او اضافه مستخدم جديد يجب ان يحمل الصلاحيات الكافيه لـ أضافه مستخدم 
SCHEMA فى قواعد بيانات اوركال يرمز للمستخدم بـ

1/06/2013

SQL DEFAULT Constraint

السلام عليكم 

 DEFAULT CONSTRAINT سنتحدث اليوم عن 
 NULL يستخدم هذا القيد لـ أضافه قيمه افتراضيه داخل حقل فى حاله لم يتم ادخال قيمه فيه او بمعنى اخر لو كانت قيمته بـ

مثال 1
نوضح فى هذا المثال كيفيه ادخال قيمه افتراضيه داخل حقل معين عند انشاء جدول جديد
CODE
CREATE TABLE TEST_DEFAULT
( FIRST_NAME   VARCHAR2(50)
 ,LAST_NAME    VARCHAR2(50)
 ,CITY              VARCHAR2(50)  DEFAULT  'CAIRO'
);
مثال 2
نوضح فى هذا المثال كيف يمكنك التعديل على القيمه الافتراضيه المدخله داخل الحقل
How to Alter Default Constraint .
CODE
ALTER TABLE TEST_DEFAULT
MODIFY CITY DEFAULT 'JEDDAH';