إنتقال للمحتوى

  • تسجيل الدخول عبر الفيس بوك تسجيل الدخول عبر تويتر Log In with LinkedIn Log In with Google      تسجيل دخول    
  • إنشاء حساب

صورة
- - - - -

مالفرق بين الـ Constraint على مستوى جدول ومستوى عمود وايهما افضل؟؟


3 رد (ردود) على هذا الموضوع

#1 roro2005

roro2005

    مشترك

  • الأعضــاء
  • 154 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 24 December 2010 - 11:25 AM

السلام عليكم جميعا اعضاء ومشرفي المنتدى ورحمة الله وبركاته
سؤالي عن الـ Constraint
مالفرق بين الـ Constraint على مستوى جدول ومستوى عمود وايهما افضل؟؟
ارجو المساعده العاجلة
اختكم

#2 Dr.Lava

Dr.Lava

    عضو

  • الأعضــاء
  • 29 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 24 December 2010 - 03:36 PM



Column Level Constraints refers Only One Column .Which does
not have the column name at declaration time .
Ex :

 Create table emp
( empno number primary Key,
--,
--);


Table Level constraints refers one or more than one column .
Which does have column name at declaration time.
Ex:
Create table emp
( empno number ,
--,
--,
Constraints pk_con primary Key(empno));


All constraints can be created as Column and Table level
(like, primary key, foreign key,unique)

Not Null constraints can only be created as column level
constraints .

so A column constraint is specified as part of a column definition and applies only to that column.

A table constraint is declared independently from a column definition and can apply to more than one column in a table

Ex:
CREATE TABLE CLASS (
ROOM NUMBER(10) ,
SUBJECT VARCHAR2(200),
CODE VARCHAR2(50) NOT NULL, /* Column level constraint*/
ID NUMBER(8,2),
CLASS_DATE DATE,
CONSTRAINT PK_1 PRIMARY KEY (ROOM)); /* table level


Research & Development Manager


#3 Hari533

Hari533

    عضو

  • الأعضــاء
  • 4 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 26 December 2010 - 06:04 PM

وعليكم السلام و رحمة الله

(طبعا انا جديد في المنتدى) ,,, لكن ان شاء الله اقدر افيد


حسب دراستي السابقة للـ SQL انه لايوجد فرق بين الاثنين الفرق فقط في الساينتكس syntax
والفرق في الساينتكس : انه في الـ column level ندخل الـ constraint بعد الكولمن مباشرة ,,,, اما في table level ندخل الـ constraint بعد ادخال جميع الكولمنز .
وهذا مثال (بالنسبة لل check)

هذا للـ column level
create table employee(eno number(3),ename varchar2(20),esal number constraint
esal_chk check(esal<=5000),esex char(1) constraint esex_chk check(esex='f' or esex='m'))

وهنا للـ table level
create table employee(eno number not null,
ename varchar2(20),
esal number,
esex number,
dname varchar2(20),
design varchar2(20),
company varchar2(20),
constraint esal_chk check(esal>0 and esal<10000),
constraint esex_chk check(esex ='f' or esex ='m'))

أما بالنسبة لأيهما أفضل ,,, فالله أعلم ,,, لأنني مجرد طالب
والعذر اذا كان هناك اي خطأ فأنا مبتدئ

#4 talalme

talalme

    عضو

  • الأعضــاء
  • 15 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 30 December 2010 - 01:45 PM

الـ Constraint على مستوى جدول يمكن حذفة
الـ Constraint على مستوى الحقل لايمكن حذفة
الافضل الـ Constraint على مستوى جدول وشكراً