برای آنکه بتوان داده های یک فرم را در جداول دیتابیس ذخیره نمود، می بایست نوع داده های هر کنترل به درستی مشخص گردد. چنانچه فرم مورد نظر بر اساس یک جدول موجود در دیتابیس ساخته شده باشد، نوع داده های هر کنترل یا فیلد هنگام ساخت جدول تعیین خواهد شد. اما اگر فرم به صورت Create Form by Design ساخته شده باشد دیگر جدول در دیتابیس ساخته نشده است که نوع داده فیلدهای آن مشخص باشد. در چنین فرمهایی برای تعیین نوع داده هر یک از کنترلها باید بر روی هر کنترل کلیک راست کرده و گزینه Data Type را انتخاب نمود تا فهرستی از انواع داده در زی فریم را مشاهده و از بین آنها نوع داده مورد نظر برای آن فیلد یا کنترل را انتخاب کرد. این نوع داده ها برگرفته از انواع داده موجود در SQL Server هستند، که هنگام ایجاد یک کنترل بصورت پیش فرض نوع داده برای تمامی کنترل ها برابر با String در نظر گرفته شده است. در شکل زیر می توان انواع مختلف داده را مشاهده نمود.
T_String
داده T_String معادل با نوع داده VARCHAR در SQL Server است. در این نوع از داده که به آن داده "رشته ای" گفته می شود، می توان متون مختلف را قرار داد. یک رشته در این حالت می تواند با طولی متغیر از یک تا 8000 کاراکتر یا حرف تعریف شود. حتی اعدادی که در این فیلد قرار داده می شوند نیز از نوع عددی نبوده و به صورت رشته در نظر گرفته می شوند. در نتیجه از قواعد ریاضی پیروی نمی کنند و نمی توان اعمال ریاضی همچون چهار عمل اصلی را بر روی آنها اعمال کرد. به همین دلیل اگر درون یک فیلد با نوع داده String عددی مانند 05 قرار گیرد، عدد صفر حذف نخواهد شد و با هر دوی آنها همچون یک حرف از حروف الفبا رفتار می شود نه یک عدد. اما اگر نوع داده int بود، عدد صفر حذف شده و تنها عدد 5 ثبت می شد.
نام این نوع داده برگرفته از جورج بول ریاضیدان انگلیسی است. از این نوع داده می توان برای تعیین ارزش عبارات منطقی و جبر بولی استفاده کرد و به عبارتی می توان از این نوع داده در مواردی استفاده نمود که برای آن فیلد صرفاً دو مقدار مد نظر باشد (صفر یا یک، درست یا غلط، زن یا مرد و ...) به طور کلی در زبان های برنامه نویسی از این نوع داده در دستورات شرطی استفاده می شود، اما در SQL Server برای داده هایی با دو مقدار هم می توان از آن استفاده نمود.
این نوع داده ای برای اعداد اعشاری با طول زیاد کاربرد دارد و نمی تواند بدون علامت باشد (هر اعشار معادل یک بایت است.) این نوع داده در SQL Qerver محدود به 16 رقم در دو طرف اعشار است.
این نوع داده یکی از انواع داده ی مناسب برای اعداد است که برای نگهداری اعداد مثبت و کوچک به کار می رود. این نوع از داده ها توانایی نگهداری اعداد مثبت و کوچک از 0 تا 255 را در خود دارند. همچنین فضایی که یک متغیر از نوع Byte در حافظه اشغال می کند برابر با 1 بایت است که می توان برای داده های عددی کوچک مانند سن افراد از آن استفاده نمود.
یکی دیگر از انواع داده برای اعداد نوع دادهshort است. فضای مورد نیاز برای این نوع داده برابر با 2 بایت است، که در این نوع داده می توان اعدادی بین منفی 32,768 تا مثبت 32,767 را ذخیره نمود.
یکی از مهمترین و پر کاربردترین نوع داده برای اعداد صحیح، داده int است که هر داده از این نوع فضایی به میزان 4 بایت را اشغال می کند. از ویژگی های این نوع از داده آن است کهint قادر به نگهداری بازه ی وسیعی از اعداد از منفی 2,147,483,648 تا مثبت 2,147,483,647 در درون خود است. در نتیجه به دلیل آنکه این نوع داده گسترده ی وسیعی از اعداد را در خود جای می دهد، به عنوان یکی از انواع بسیار پر کاربرد داده در نظر گرفته شده است.
اما باید توجه داشت که به منظور استفاده بهینه از حافظه، بهتر است در فیلدهای مختلف از نوع داده¬ی عددی مناسب همان فیلد استفاده شود.
از این نوع داده برای نگهداری اعداد بسیار بزرگ استفاده می شود. متغیرهایی که از نوع long در نظر گرفته می شوند، توانایی نگهداری اعدادی بین منفی 9,223,372,036,854,775,808 تا مثبت 9,223,372,036,854,775,807 را در خود دارند. همچنین فضای مورد نیاز برای نگهداری یک متغیر long در حافظه برابر با 8 بایت می باشد.
به دلیل تنوع در داده های عددی می توان برحسب میزان حافظه، نوع داده اعداد را از حافظه بیشتر به حافظه کمتر مرتب نمود. به این ترتیب بیشترین حافظه در نظر گرفته شده متعلق به داده T_Long بوده و سپس انواع داده ی T_Int و T_short و T_Byte به ترتیب قرار می گیرند.
یکی از پرکاربردترین نوع داده برای اعداد اعشاری، نوع داده ی T_Float است. در این نوع داده می توان عددی تا 24 رقم اعشار را ذخیره نمود.
این نوع از داده همانند داده T_Float برای نگهداری از اعداد اعشاری کاربرد دارد؛ با این تفاوت که حافظه اشغال شده برای داده های T_Float چهار بایت و برای داده های double هشت بایت است. همچنین دقت اعشار برای داده های T_Double می تواند تا 54 رقم باشد. به عبارت دیگر، یک داده T_Double می تواند تا 54 رقم اعشار را در خود جای دهد.
این نوع داده که تحت عنوان bytearray هم شناخته می شود، در اصل آرایه ای از یک سری بایت است، که می توان به جای آن از نوع داده آرایه نیز استفاده نمود.
از این نوع داده برای نمایش تاریخ استفاده می شود. قالب این نوع داده به صورت YYYY-MM-DD بوده که در آن، بخش YYYY معرف سال و رقمی بین 0000 تا 9999 است. همچنین، بخش MM معرف ماه های سال بوده و رقمی بین 0 تا 12 در آن قرار می گیرد. در نهایت، بخش DD به عنوان معرف روزهای سال بوده که رقمی بین 1 تا 31 را در خود جای می دهد. برای مثال مقدار 1973-12-30 معرف آخرین روز از آخرین ماه سال 1973 است.
از این نوع داده برای ذخیره کردن زمان به صورت ساعت، دقیقه و ثانیه استفاده می شود، که دارای قالبی به صورت HH:MM:SS است. در این قالب، مقدار HH معرف ساعت، MM معرف دقیقه و SS معرف ثانیه است. به عنوان مثال 12:54:20 به معنای ساعت 12 و 54 دقیقه و 20 ثانیه است.
این نوع داده برای نمایش یک زمان مشخص است که به صورت ترکیبی از تاریخ و زمان و با فرمت YYYY-MM-DD HH:MM:SS نمایش داده می شود. اما نحوه ذخیره این اعداد در حافظه متفاوت است. به این صورت که آنچه در حافظه ذخیره می شود، مجموعه ای از اعداد پشت سر هم بوده که درک آن برای افراد نامفهوم خواهد بود.
این نوع داده مناسب برای پایگاه های داده ORACLE بوده و متناظر آن در SQL Serverهمان VARCHAR است که در بالا به معرفی آن پرداخته شد.
این نوع داده نیز مناسب برای پایگاه های داده ORACLE بوده و متناظر آن در SQL Serverهمان VARBINARY است. نام این نوع داده برگرفته از مخفف عبارت Binary Large Object است که، با داشتن ظرفیتی بین 1 تا 8000 بایت،برای ذخیره سازی مقادیر بزرگ داده های باینری از قبیل تصویر یا انواع مختلف فایل ها به کار می رود.
توجه شود که برای ذخیره مقادیر بزرگ داده ای از فیلدهای نوع متنی نیز می توان استفاده نمود. با این تفاوت که در نوع داده ی T_Blob، هنگام مرتب سازی و مقایسه داده ها، شاهد تفاوت قائل شدن بین حروف بزرگ و کوچک خواهیم بود، اما این تفاوت در نوع داده ی متنی مشاهده نمی شود.
از این نوع داده برای ذخیره مقادیر آرایه ها استفاده می شود. یک آرایه شامل مجموعهای از عناصر هم نوع بوده که هر کدام از این عناصر با یک یا تعداد بیشتری اندیس ذخیره میشوند. نحوه ذخیره سازی این عناصر نیز در حافظه به صورت ترتیبی است. یعنی به اولین عنصر، آدرس اول از حافظه اختصاص می یابد و آخرین آدرس مربوط به عنصر آخر است. به عنوان مثال فهرست اسامی زیر که به صورت یک آرایه است را در نظر بگیرید. در این مثال، ابتدا Ali سپس mohammad، hasan، kaveh و در نهایت majid ذخیره می شود.List = [ ‘Ali’ , ‘mohammad’ , ‘hassan’ , ‘kaveh’ , ‘majid’ ]
از این نوع داده برای به دست آوردن محل ذخیره شدن یک متغیر استفاده می گردد. زمانی از این نوع داده استفاده می شود که بخواهیم محل ذخیره شدن متغیری که پیشتر تعریف شده است را به دست آوریم تا در ارجاعات بعدی به آن اشاره کنیم. به عنوان مثال عددی مانند 125467 می تواند خروجی show باشد که بیانگر محل ذخیره شدن متغیر X با مقدار 10 درون حافظه است.
این نوع داده می تواند مجموعه ای از مقادیر و متد ها یا همان توابع را در خود نگهداری نماید. در نتیجه ما شاهد مقادیری داده خواهیم بود که علی رغم آنکه مشابه یک آرایه هستند، می توانند از یک نوع مشخص نباشند. می توان گفت مفهوم این نوع داده بسیار نزدیک به تعریف نوع داده "کلاس" در زبان های مختلف برنامه نویسی، اما در سطحی پایین تر است.
نوع داده | ورودی | ویژگی | میزان اشغال حافظه | کاربرد |
---|---|---|---|---|
T_String | رشته | 1 تا 8000 کاراکتر | 100 بایت | درج متون |
T_boolean | بولین | دارای دو مقدار | 4 الی 8 بایت | عبارات شرطی |
T_BigDecimal | عدد اعشاری | محدود به 16 رقم در دو طرف اعشار | 20 بایت به بالا | اعداد اعشاری |
T_Byte | عدد صحیح مثبت | نگهداری اعداد مثبت و کوچک از 0 تا 255 | 1 بایت | اعداد کم مقدار مثل سن افراد |
T_short | عدد صحیح | نگهداری اعدادی بین منفی 32,768 تا مثبت 32,767 | 2 بایت | اعداد با مقادیر متوسط |
T_int | عدد صحیح | نگهداری اعدادی از منفی 2,147,483,648 تا مثبت 2,147,483,647 | 4 بایت | اعداد با مقادیر بالا |
T_Long | عدد صحیح | نگهداری اعدادی از منفی 9,223,372,036,854,775,808 تا مثبت 9,223,372,036,854,775,807 | 8 بایت | اعداد با مقادیر بسیار بالا |
T-Float | عدد اعشاری | تا 24 رقم اعشار | 4 بایت | اعداد اعشاری متوسط |
T-Double | عدد اعشاری | تا 54 رقم اعشار | 8 بایت | اعداد اعشاری بزرگ |
T_ByteA | مقادیر همنوع | آرایه ای از یک سری بایت | از 1 بایت به بالا | آرایه ها |
T_Date | تاریخ | نمایش تاریخ با فرمت معین | 8 بایت | نمایش تاریخ |
T_Time | زمان | نمایش زمان با فرمت معین | 8 بایت | نمایش زمان |
T_TimeStamp | تاریخ و زمان | نمایش تاریخ و زمان با فرمت معین | 8 بایت | نمایش تاریخ و زمان |
T_Clob | رشته | مناسب برای پایگاه داده ORACLE | 136 بایت | درج متون |
T_Blob | فایل و متن | مناسب برای ذخیره تصاویر و فایل ها و متون بزرگ | بین 1 تا 8000 بایت | ذخیره فایل و متن |
T_Array | مقادیر همنوع | آرایه ای از مقادیر همنوع | 4 الی 8 بایت | آرایه ها |
T_Ref | آدرس متغیر | اشاره گر | 0 به بالا | آدرس متغیر |
T_Struct | مقادیر غیرهمنوع | شباهت هایی هم به آرایه ها و هم به کلاس ها دارد | 4 الی 8 بایت | داده های ناهمنوع |
گروه توسعه زیر ساخت نرم افزاری زی با نام تجاری Zframe، با بهره گیری از نیروهای متخصص و مجرب با رویکردی نوآورانه از سال 1387 فعالیت خود را آغاز و اقدام به تولید نرم افزار قدرتمند زی فریم نمود.
زی فریم به عنوان یک محصول نرم افزاری (SPL) در واقع همچون یک خط تولید نرم افزار است که با استفاده از آن می توان به سرعت، بدون نیاز به تسلط به دامنه وسیعی از تکنولوژی ها، یک نرم افزار مبتنی بر وب کارا، امن و یکپارچه تولید نمود.