ورود

View Full Version : تعریف فیلد با مقادیر ثابت



astani
سه شنبه 02 خرداد 1385, 12:36 عصر
با سلام خدمت دوستان
یه سوال داشتم البته کملا جستجو کردم ولی متاسفانه جوابی نیافتم.
من می خوام تو SQL یک فیلد تعرف کنم که که مقادیرش ثابتند مثلا فقط زن و مرد. البته منظورم این نیست که تو برنامم ورودی کاربر کنترل بشه می خوام نوعی فیلد تعریف کنم که یه سری مقادیر ثابتی می تونن داشته باشن. (مثلا: تابستان - رمستان - پاییز - بهار) در واقع همون نوع داده Lookup Wizard که توی اکسس درست می کنیم.
آیا امکانش هستت یا نه ؟ خیلی ممنون می شم کسی راهنمایی کنه

AminSobati
سه شنبه 02 خرداد 1385, 13:09 عصر
CREATE TABLE T1(
Col1 NVARCHAR(50) CHECK (Col1 IN ('Spring','Summer','Autumn'))
)
GO

-- This works:
INSERT T1 Values('Summer')

-- This fails:
INSERT T1 Values('Winter')

astani
سه شنبه 02 خرداد 1385, 21:17 عصر
سلام
با تشکر فراوان. ولی من منظورم اینه که یه نوع داده جدید تعریف کنیم که مقادیرش اونها باشند یعنی نمی خوام SQL چک کنه می خوام نوع داده تعریف شده باشه. یه مورد دیگه اینکه چطور با این روشی که نوشتین به یه جدول از قبل موجود یک فیلد به این طریق اضافه کنیم؟

AminSobati
سه شنبه 02 خرداد 1385, 22:07 عصر
این کار باید سمت Client روی Form انجام بشه

hpx
جمعه 05 خرداد 1385, 17:22 عصر
به نظر می رسه طراحی درستی نباشه که جدولی داشته باشی فقط حاوی زن و مرد
مگر اینه ثابتی داشته باشی که بخواد بهش زیاد و کم بشه

Omid Rekabsaz
جمعه 05 خرداد 1385, 17:34 عصر
من حتی در این موارد نیز از جدول استفاده می کنم... ودر طراحی می گنجانم...

hpx
شنبه 06 خرداد 1385, 19:12 عصر
رفتن اینجور ثابتها تو db به دلیل join هایی که تو select می خوره یا
check constaint ها موقع insert , update
peformance رو پایین می آره
در حالیکه به راحتی تو کد با یه enumeration نیازها برطرف میشه