# Native Code > برنامه نویسی در Delphi > بانک های اطلاعاتی در Delphi >  آشنایی با Borland Interbase و مقایسه اجمالی آن با MySQL و Micro$oft SQL Server

## Mojgan110

میخواستم کمی راجع به اینتربیس بدونم ، چند تا مقاله پیدا کردم ( از بورلند و ویکی پدیا و اینا !) و خوندم ، این خلاصه چیزهایی هست که یاد گرفتم ! برای صفرکیلومترهایی مثل خودم ، شاید جالب باشه *

اینتربیس چیست ؟* 

اینتربیس یک RDBMS محصول شرکت بورلند است که بخاطر footprint کوچک ، هزینه پایین و نیازمندی به ادمینیستریشن !!  در حد صفر ، از سایر DMMS ها مجزا میشود.و در دو نسخه سرور و دسکتاپ ، توسط بورلند عرضه میشود .

* اینتربیس را کجاها میتوان اجرا کرد ؟*

اینتربیس را میتوان بر روی سیستم عاملهای ویندوز( 2000، 2003 ، NT ، XP ) ، لینکس ( Redhat, SUSE‌(  ،  سولاریس ( 7و8و9) و پلتفرمهای جاوا و دات نت ، اجرا نمود.

* چه IDE هایی از اینتربیس حمایت میکنند ؟*

Delphi , Kylix, CPP Builder, C sharp Builder, J Builder بطور درون ساخت و مجتمع ، از اینتربیس حمایت میکنند . برای مثال ، تصویرهایی از کامپوننتهای کار با اینتربیس را در محیط دلفی میتوان مشاهده نمود :

علاوه بر آن ، حمایت اینتربیس از JDBC , ODBC باعث میشود که IDE های دیگری نیز از آن طریق بتوانند از آن استفاده کنند.



*ویژگیها . مزایا :* 

اینتربیس دارای یک معماری MultiVersion است که توسعه دهندگان را از نگرانی درباره مسائل همزمانی ، بازیابی از برخورد و مدیریت حافظه ، رهایی میبخشد. 

اینتربیس برای جایی طراحی شده که هیچ دیتابیس ادمینی حضور نداره ! crash recovery های اتوماتیک ، بک آپ های آنلاین ، مدیریت اتوماتیک کاربران از جمله این موارد است . بهینه سازی مبتنی بر هزینه ی کوئری ها ، garbage collection خودکار و rebalance کردن ایندکسها بصورت اتوماتیک ، از جمله مواردی ست که نیاز به حضور ادمین را تقلیل میدهد.
_
Cross Platform بودن ،_ از دیگر ویژگیهای اینتربیس هست که باعث میشود بتوان آنرا در ویندوز ، جاوا ، دات نت ، لینکس و سولاریس ، اجرا نمود. 

Foot print پایین ، این امکان را فراهم میسازد که بتوان اینتربیس را حتی بر روی سیستمی با 32 مگابایت فضای RAM و 15 مگابایت فضای دیسک سخت هم نصب و استفاده نمود. 

*چه کسانی از اینتربیس استفاده میکنند ؟*  :قلب: 

شرکتهایی مانند متورولا ، نوکیا ، بوئینگ و بخشهایی از ارتش ایالات متحده و سازمان فضایی ناسا ، از جمله مشتریان اینتربیس هستند. 

*اینتربیس و رقبا :*

* اینتربیس و MySQL :* 

مزایای اینتربیس درمقابل MySQL را میتوان بصورت فهرست وار زیر ، لیست کرد که در ادامه ، توضیح مختصری نیز درباره برخی از آنها ارائه خواهد شد : 
تریگرهاStored Procedure هارخداد های سمت کلاینتپشتیبان گیری آنلاینCrash Recovery سریعترارائه انواع داده ای جهت محاسبات دقیقتر اعشاریکنترل دسترسی آسانتر توسط Role هاView هاارائه انواع رشته ای ساده تر و سازگارتر با استانداردهای ANSIDefault Value های قدرتمندتر .ابزارهای Performane Monitoring  کاراترConfiguration Option های بسیار کمتر و ساده ترN-way Replication_پشتیبان گیری آنلاین :_

InnoDB یک موتور دیتابیس MySQL است که امکان پشتیبان گیری آنلاین را فراهم میکند ( و فکر میکنم تنها گزینه ی موجود باشد )  ، برای استفاده از آن ، بایستی InnoDB Hot Backup را به قیمت سالانه ی 450 دلار و یا دائمی 1150 دلار خریداری نمایید . این درحالیست که چنین امکانی بصورت درون ساخت در اینتربیس موجود هست . IBConsole برای چنین روزهایی در اینتربیس بوجود آمده ! 

_سرعت ریکاوری :_

مدت زمان لازم برای ریکاور کردن یا ریستارت کردن یک MySQL ، به سایز لاگهای تراکنشهایی بستگی دارد که بایستی رولبک !  و .. شوند بستگی دارد که حتی آن هم به نحوه کانفیگ کردن دیتابیس توسط ادمین بستگی پیدا میکند.

در حالیکه ریکاوری یا ریستارت بر روی اینتربیس ، بصورت * آنی * صورت میگیرد ، به این دلیل که هیچ تغییری من جمله برگرداندن تراکنشها و ... لازم نیست که بر روی دیتابیس صورت بگیرد . بلکه بجای آن ، اینتربیس بسادگی یک بیت وضعیت را برای هر تراکنش ، ست میکند ! و versioning engine بطور اتوماتیک رکوردهای مزبور را درنظر نمیگیرد . این رکوردها هم در هنگام استفاده عادی از دیتابیس و بدون اینکه فشار جدیدی به سیستم تحمیل کنند ، بطور خودکار توسط Garbage Collector موجود در اینتربیس ، حذف میشوند .

_ Domain ها :_ 

موقعیتی را در نظر بگیرید که میخواهید یکی از انواع داده ای فیلدهای جداول را تغییر بدهیم . مثلا فیلدی برای شماره قطعات داشته ایم که اکنون نیاز به ذخیره اعداد بزرگتری داریم ....  در هنگام استفاده از MySQL ، راه حل این هست که فیلد مزبور را در همه جدولهایی که در آنها وجود دارد ، تغییر دهیم !

ولی اینتربیس ، نوع داده ای بنام Domain تعریف کرده که آنرا میتوانیم بر حسب یکی از انواع داده ای موجود در اینتربیس ،‌تعریف کنیم . مثلا در موقعیت بالا ، فرض کنیم که فیلد اولیه ، 10 رقمی بوده باشد ، پس در اینتربیس ، چنین تعریف شده : 

CREATE DOMAIN PART_NO_TYPE VARCHAR(1O) NOT NULL
 
 و اکنون که میخواهیم برای مثال ، سایز آنرا به 14 کاراکتر تغییر دهیم ،‌کافیست که چنین عمل کنیم :
ALTER DOMAIN PART_NO_TYPE VARCHAR(14) 
 همین ! دیگه لازم نیست به سراغ تک تک جداول بروید و تغییرات را اعمال کنید !

_ سایر موارد :_

اینتربیس علاوه بر پروتکولهای TCP/IP و NetBEUI که توسط MySQL  نیز پشتیبانی میشود ، از IPX/SPX نیز پشتیبانی میکند. 

ماکزیمم سایز دیتابیس در MySQL 4.1 alpha ، به میزان 64000 گیگابایت میباشد و این سایز در اینتربیس ، * نامحدود * است 

اینتربیس بر خلاف MySQL 4,1 alpha دارای انواع داده ای بولین ، نامریک ، دسیمال و کاراکتارهای استاندارد Ansi نیز میباشد . 

اینتربیس بر خلاف MySQL 4.1 alpha ، از انواع Replication های N-way و سنکرون نیز حمایت میکند.

*اینتربیس و Micro$oft SQL Server ‌:* 

 مزایای اینتربیس نسبت به MsSQLServer عبارتند از :
Crash recovery سریعترمدیریت ایونت ساده ترسایز کوچکترهزینه های مالکیت و آموزش کمترنیازمندیهای سیستمی کمترپشتبانی Cross Platformگزینه های Deployment متنوع ترهمزمانی بیشتر در محیطهای read/writeهنگامی که سرویسهای data analysis به یک view یه با ثبات از دیتا در یک زمان خاص احتیاج دارند ، مکانیزم SQL Server این هست که با فراهم کردن قفلها ، سایر کاربران را از دسترسی به اطلاعاته مورد تحلیل باز میدارد تا کار تحلیل تمام شود . !!

در حالیکه در اینتربیس چنین امکانی را بدون نیاز به قفل کردن داده ها و مانع شدن از دسترسی کاربران به داده ها ، در اختیار داریم ، بدین صورت که اینتربیس از دیتاهای مورد نظر snap shot تهیه میکند ...( و اگر اشتباه نکنم ، این همان ایده ای است که ماکروسافت بالاخره در SQL Server 2005 از آن تقلید کرده ! ) .

_ نحوه رفتار با Lock ها :_

موقعیتی را در نظر بگیرید که کاربر الف ، رکوردی را  آپدیت میکند و سپس بدون کامیت کردن تراکنش مربوطه ، برای نماز و ناهار!! اتاقش را ترک میکند . در همین حال ، کاربر ب ، دستور select ی اجرا میکند که حاوی رکورد قفل شده ی کاربر الف باشد ! 

مواجه ی SQL Server  : تراکنش کاربر ب ، تا هنگامی که تراکنش کاربر الف ، آزاد نشده ، بایستی که منتظر بماند !! راه حل ماکروسافت به این مشکل ، این بوده که time out در نظر بگیرد که توسط دستور SET LOCK_TIMEOUT اعمال میشود . ولی نقطه ضعف این راهکار در این هست که این دستور ،‌همه تراکنشهای کانکشن جاری را تحت تاثیر قرار میدهد .

 مواجه ی اینتربیس : اینتربیس سطوح ایزولاسیون تراکنش snap shot  را فراهم نموده که همیشه آخرین version از از سطری که در زمان آغاز تراکنش ،    commit شده بوده را میخواند. که نتیجتا" اخیارات زیر را ممکن میسازد :

 یک : میتوان علیرغم وجود یک نسخه commit نشده ، آخرین نسخه ی commit شده از سطر مزبور را خواند.

دو : میتوان صبر کرد تا تکلیف نسخه ی commit نشده ،‌معلوم شود !

سه : میتوان فورا یک وارنینگ! دریافت کرد که میگوید نسخه ای commit نشده از سطر مزبور ، موجود است .

 تنظیمات بالا ، در *سطح تراکنش* قابل تنظیم هستند .  بنابراین انتخابی که برای یک تزاکنش میکنیم ، سایر تزاکنشها و بدتر از آن ، کل کانکشن را تحت تاثیر قرار نمیدهد.

 اینتربیس ، از تریگرهای Before هم پشتیبانی میکند ، در حالیکه Sql Server چنین امکانی ندارد . در عوض ماکروسافت تریگرهای Instead of را ارائه کرده که باز هم دچار مشکلاتی میشوند که در صورتی که علاقمند بودید ، در فرصته بعدی ، یک مطالعه موردی در این زمینه ، ارائه میشود ! 

_سرعت ریکاوری بالاتر :_

 ریکاوری دیتابیسهای SQL Server ، بستگی به check point هایی داره که ادمین تعریف کرده و یا بطور اتوماتیک توسط خوده دیتابیس ، لحاظ میشه . در هرحال ، برای ریکاوری ، لاگهای تراکنشها توسط Sql Server پردازش میشه و هی اونقدر به عقب برمیگرده تا به آخرین check point برسد که امری ست زمان بر ! 

در حالیکه اینتربیس برای ریکاوری ، از مکانیزم خشنگی استفاده میکرد که در بحث مقایسه اش با Sql Server به آن اشاره شد .
_
هزینه ها :_ 

با فراموش کردن این مطلب که در ایران میتوان نرم افزارها را به قیمت 350 تومان از حراجیهای حوالی میدان انقلاب و شاید داخل گاری ! تهیه کرد و با یادآوری این مطلب که * نرم افزار* در اون ور دنیا ، چیزی لوکس و تجملی نیست و حساب ، حسابه دودوتا چهار تا هست ! ، یک کم هم آمار و ارقام و هزینه های مالکیت را بررسی کنیم: 

برای مثال ، هزینه مالکیت اینتربیس برای 20 کاربر و دوپردازنده ، 3300 دلار و برای Sql Server ، 4500 دلار هست و یا برای مثال ، هزینه اینتربیس 200 کاربره و چهارپردازنده ، معادل 7200 دلار و برای Sql Server معادل 20000 دلار میباشه .

_Deploy کردن ::_

مثلا در مورد MSDE :: معایب : در درون MSDE‌ ، توسط کارمندان بشر دوست ماکروسافت ، چیزی گذاشته شده بنام concurrency workload governor که لطف میکنه و باعث میشه که اگر تعداد concurrent batch workload های شما از پنج عدد بیشتر شد ، عمدا باعث کند تر عمل کردن سیستم بشه !! و هرچی از پنج تا بیشتر بشه ، سرعت سیستمتون را پایین تر میاره و کندتر میکنه تا اونقدر شاکی بشید و اشکتون دربیاد که * پول * بدهید و نسخه گرانقیمتی از ماکروسافت خریداری کنید ! 

حداکثر سایز دیتابیس در MSDE ، 2 گیگ است ! همین ! تاکید میکنیم که سایز کل دیتابیس ! نه فقط مثلا سایز جداول !
_
سایر موارد :_

عدم وجود مشکل lock escalation در اینتربیس
عدم وجود مشکل conversion deadlock در اینتربیس 
بهره مندی اینتربیس از تریگرهای before
توانایی اینتربیس در تعیین و کنترل نوبت اجرا شدن تریگرها
Crash recovery آنی در اینتربیس
15 مگابایت فضای دیسک سخت جهت نصب اینتربیس ،‌در مقابل حدودا 250 مگابایت فضای مورد نیاز Sql Server


 :چشمک:

----------


## Mahyaa

مژگان عزیز دلم نیومد به گزینه تشکر اکتفا کنم . 
اگر همه ما سعی کنیم چیزی رو که بلدیم (به شرط اینکه واقعا بلد باشیم) بگیم تا بقیه هم یاد بگیرند (حتی اگر فکر کنیم برای صفر کیلومترها مناسبه :) ) ، این محیط بیشتر از همه برای خودمون لذت بخش تر میشه . 

فکر کنم من کیلومترم کمی از صفر رد شده باشه ولی برای من هم مفید بود :)
ممنون

----------


## mzjahromi

با تشکر از دوست عزیز
از اساتید خواهشمندیم در تکمیل این بحث سایر موارد احتمالی را مطرح نمایند
-----------------------------------------------------------------------------------------------
از دوستان خواهشمندم از ایجاد پستهای تشکر و سوالهای متفرقه خودداری کنند

----------


## Mojgan110

*Borland’s Developer Tools Group Introduces InterBase&#174; 2007*

http://bdn.borland.com/article/33698

----------


## dkhatibi

پس با این وجود نیازی به یاد گرفتن Sql نیست؟

----------


## mzjahromi

> پس با این وجود نیازی به یاد گرفتن Sql نیست؟


چرا این با اون ارتباطی نداره
شما برای کار با هر DBMS باید SQL رو بدونی

----------


## dkhatibi

ببخشید منظور این بود که دیگه لازم نیست کار با MySql یا SqlServer یا ... را یاد گرفت و این به خوبی نیازها را براورده می کنه؟
یا اینکه مشکلی داره و یا کار باهاش سخت تره!

----------


## Mohammadi_F

این هم یک آدرس برای توضیحات کاملی در مورد اینتر بیس ، البته به زبان مادریه ولی خوب فهمش راحته.
http://www.jcolibri.com/articles/tut...dbexpress.html

----------


## Artawahista

در ضمن InterBase جز Database های محبوب روسیه ها هست
و حتی ویرایش خاصی تحت نام Yaffl(اگر اشتباه نکنم)

----------


## dkhatibi

استفاده از اون با مشکل خاصی همراه است که کمتر استفاده شده است؟

----------


## Bahmany

> استفاده از اون با مشکل خاصی همراه است که کمتر استفاده شده است؟


بنده تا بحال در 3 پروژه از IB استفاده کرده ام تا بحال به مشکل نخورده ام.
یکیش برنامه حضور و غیاب بود که IB جحم کم و سرعت نسبتا خوب و نگرفتن زیاد حجم حافظه رو برام دنبال داشت

به نظر من یه مسئله ای داره 
اون هم اینکه تمام log ها و تمامی اطلاعات روی یک فایل ذخیره میشه و در اثر مرور زمان سرعت رو خیلی پایین می آره.

----------


## sorrowdancer

با چه برنامه ای میشه پایگاه داده ی اینتربیسی نوشت و روی فرم دلفی قرار داد ؟ (میبخشید زیادی آماتورانس)

----------


## saeed_82

کسی میدونه چرا این اینتربیس 7.5 بعد از نصب کار نمیکنه؟
برام عجیبه ؟ با هیچکدوم از نسخه های قبلی چنین مشکلی رو تجربه نکرده بودم؟

----------


## Artawahista

بایستی برید توی کنترل پنل و با استفاده از اپلت InterBase Manager سرور رو Start کنید ...

----------


## Rocker

آگه InterBase اینهمه پسر خوبیه پس چرا اینقدر ناشناخته مونده و هنوز که هنوزه داره از برنامه های دیگه مثل Sql server و Oracle و ... استفاده میشه.
آیا مشکلی داره چرا ایتقدر بازارش بی رونقه الان اکثر شرکتهای برنامه نویسی از تکنو لوژیSQL Server استفاده می کنند؟
چرا کسی InterBase بیچاره را تحویل نمی گیره؟
واقعا چرا؟؟؟؟

----------


## Bahmany

> آگه InterBase اینهمه پسر خوبیه پس چرا اینقدر ناشناخته مونده و هنوز که هنوزه داره از برنامه های دیگه مثل Sql server و Oracle و ... استفاده میشه.
> آیا مشکلی داره چرا ایتقدر بازارش بی رونقه الان اکثر شرکتهای برنامه نویسی از تکنو لوژیSQL Server استفاده می کنند؟
> چرا کسی InterBase بیچاره را تحویل نمی گیره؟
> واقعا چرا؟؟؟؟


فکر کنم چون تولید کننده هاش ماکروسافت یا اوراکل نبوده اند
توی کتاب Mastring Delphi 7 گفته که شرکت سونی و چند بانک خانگی از این دیتابیس استفاده می کنن.
و نمی دونم کجا خوندم که قسمت های عمده ای از دستگاههای اطلاعاتی امریکا نیز از این بانک استفاده می کنه

----------


## Rocker

> فکر کنم چون تولید کننده هاش ماکروسافت یا اوراکل نبوده اند
> توی کتاب Mastring Delphi 7 گفته که شرکت سونی و چند بانک خانگی از این دیتابیس استفاده می کنن.
> و نمی دونم کجا خوندم که قسمت های عمده ای از دستگاههای اطلاعاتی امریکا نیز از این بانک استفاده می کنه


به نظر من هم همینطوره نمیدونم تا کی ایم این مایکروسافت جهان خوار حال ما بورلند کار رو بگیره اما خوب چه میشه کرد ما نه تو ژاپن زندگی میکنیم نه از کارمندان سونی هستیم ما تو ایرانیم و باید دنبال چیزی بریم که $ توش باشه و این طبیعته زندگی. :گریه:

----------


## jamjid

ببخشید من کل این تاپیک خوندم . خیلی حرفه ای . برای ما آماتور ها بیشتر راجب اینتر بیس توضیح بدید.
اینتر بیس چه جور نرم افزاری .نرم ازار پایگاه داده است مثل اکسس می مونه یا ...

----------


## Artawahista

InterBase قابل قیاس با MS-SQL Server و PostgreSQL و در کل InterBase در دسته‌ی
Databaseهای RDBMSها است نه چیزی شبیه MS-Access و یا Paradox و این چیزا نیست
برای مقایس ای فنی و عادلانه میتونید به مقاله‌ای که Borland در مقایسه‌ی Interbase 7.1 و MS-SQL Server 2000
انجام داده مراجعه کنید
در این مقاله به مسایلی چون قیمت‌های این دو موتور نیز رسیدگی شده ...

من این مقاله رو اینجا ضمیمه میکنم.

موفق باشید

----------


## Artawahista

در مورد سوال اون دوستم باید بگم Delphi مثال‌هایی برای InterBase داره
و شما نیز میتونید از کامپوننت های IBX در خود دلفی استفاده کنید
از این نظر که دلفی و محصولات بعدیش
به بهترین شکل از InterBase پشتیبانی کنه خیالتون جمع باشه

البته در متن بالا Borland ها رو به CodeGear تغییر دهید.

یا حق ...

----------


## daffy_duck376

بیشتر بانک های اطلاعاتی مثل SQL  قدرت خودشنو تو ثبت رکورد های زیاد نشون میدن
باید دید حداکثر تا چند رکورد میتونه ثبت کنه

----------


## JAFO_IRAN

با سلام،
در مقایسه با SQL Server یک مزیت مهم دیگر هم داره: ایده‌های اولیه از Borland زمان قدیم آمده است. در ضمن وجود source آن هم قابل توجه است.

اما

MS SQL Server خیلی خوب با سرورهای Windows کار می‌کند: با ابزارهای امنیتی یکپارچه است؛ با تراکنش‌های +com یکپارچه است.
امکانات نسخه 2005 و داستان‌های بسیار جذاب dot net در آنرا نیز نباید از نظر دور داشت.

به هر حال مطلب جالبی بود و ممنون...

----------


## Bahmany

> بیشتر بانک های اطلاعاتی مثل SQL  قدرت خودشنو تو ثبت رکورد های زیاد نشون میدن
> باید دید حداکثر تا چند رکورد میتونه ثبت کنه


بنده در یکی از پروژه هام که با IB بود مجبور شدم برای سرگرمی هم که شده تستش بزنم
12 کامپیوتر توی شبکه بود و یک سرور البته منظورم از سرور یه کامپیوتر معمولی هست.
بعد توی 10 تا از اونها حلقه ایجاد کردم و همه با هم شروع کردن به نوشتن و ایجاد ترافیک خیلی خیلی زیاد ولی خوشبختانه حتی یکی هم LOOSE نشد و همه اش به مقصد رسید

----------


## hkiani

سلام
به نظر من هم یکی از مزایای اینتربیس و کلا محصولات بورلند، در راهنماهای دقیق و قابل فهم آنست که در ابتدای کار باعث سردگمی آدم نمی شود.
آیا در انتربیس از Encoding utf-8 استفاده کرده اید. و اگر کرده اید از چه نسخه ای از اینتربیس استفاده می کنید؟
با تشکر

----------


## Bahmany

> آیا در انتربیس از Encoding utf-8 استفاده کرده اید. و اگر کرده اید از چه نسخه ای از اینتربیس استفاده می کنید؟


بله
بنده چون آن موقع تازه IB6.5 اومده بود و همراه با دلفی بود از اون استفاده کرده و می کنم.
نگاه کنید در حالت IB بیشتر از 3 کاربر رو ساپورت نمی کنه شما باید License اون رو نیز به قسمت License اضافه کنید تا Unlimited بشه تا بتونید نا محدود ازش استفاده کنید.




> به نظر من هم یکی از مزایای اینتربیس و کلا محصولات بورلند، در راهنماهای دقیق و قابل فهم آنست که در ابتدای کار باعث سردگمی آدم نمی شود.


بنده در این مورد با شما موافق نیستم.
فایل های IB بعد از یک مدت حجم زیادی پیدا می کنند ( بخاطر افزایش بی رویه بلوک های داده ای ) و این حجم زیاد مستقیما در Performance سیستم تاثیر گذار هست بنده پوستم کنده شد تا بعد از مدت ها جستجو در اینترنت تا تونستم خودم برای حل مشکلم یه راهی کشف کنم و بقیه موارد که به نظرم کمی بد راهنمایی شده و یا منبع کامل نداره.

----------


## saeed_82

آقایون کسی هست که اینتربیس 7.5 یا بالاتر رو تونسته باشه نصب کنه
والا من که هیچکدوم رو نتونستم نصب کنم
البته این نکته رو عرض کنم که من سالهاست تو پروژه هام از اینتربیس 7 استفاده میکنم و راضی هستم میخواست از نسخه جدیدش استفاده کنم که نتونستم نصبش کنم 
بعد از نصب استارت نمیشه!!!!!!!!!!!!!!!!

----------


## taknegaar

> بنده تا بحال در 3 پروژه از IB استفاده کرده ام تا بحال به مشکل نخورده ام.
> یکیش برنامه حضور و غیاب بود که IB جحم کم و سرعت نسبتا خوب و نگرفتن زیاد حجم حافظه رو برام دنبال داشت
> 
> به نظر من یه مسئله ای داره 
> اون هم اینکه تمام log ها و تمامی اطلاعات روی یک فایل ذخیره میشه و در اثر مرور زمان سرعت رو خیلی پایین می آره.


در نسخه های جدید شما میتونید log ها، ایندکس ها و حتی خود جدول ها رو در فایل جداگانه ای ذخیره کنید !

----------


## taknegaar

> میخواستم کمی راجع به اینتربیس بدونم ، چند تا مقاله پیدا کردم ( از بورلند و ویکی پدیا و اینا !) و خوندم ، این خلاصه چیزهایی هست که یاد گرفتم ! برای صفرکیلومترهایی مثل خودم ، شاید جالب باشه *
> 
> اینتربیس چیست ؟* 
> 
> اینتربیس یک RDBMS محصول شرکت بورلند است که بخاطر footprint کوچک ، هزینه پایین و نیازمندی به ادمینیستریشن !!  در حد صفر ، از سایر DMMS ها مجزا میشود.و در دو نسخه سرور و دسکتاپ ، توسط بورلند عرضه میشود .
> 
> * اینتربیس را کجاها میتوان اجرا کرد ؟*
> 
> اینتربیس را میتوان بر روی سیستم عاملهای ویندوز( 2000، 2003 ، NT ، XP ) ، لینکس ( Redhat, SUSE‌(  ،  سولاریس ( 7و8و9) و پلتفرمهای جاوا و دات نت ، اجرا نمود.
> ...


من ابتدائا تشکرم رو اعلام میکنم

ولی باید بگم که Mysql در حال حاضر 
Stored Procedure ها، View ها رو داره
در مورد ترین ها هم بایدبگم این مسائل نسبی هست
و به موارد گوناگونی میتونه بستگی داشته باشه

----------


## Bahmany

در ضمن یکی از زیبا ترین کارها در IB شده است می توان به Generator ها اشاره کرد بنده که تا بحال نه SqlServer و Oracle و MySQL ندیدم و نمی دونم که دارن یا نه

کار این قسمت این است که شما بعد از تعریف یک Generator می توانید از سرور یک عدد درخواست کرده و آن را استفاده کنید در ضمن این عدد بعد از هر درخواست شیفت می شه

اگه تو دیتا بیس دیگری این قابلیت وجود داره ممنون میشم بگید

----------


## Modernidea

با تمام اين تفاسير، ما كه داريم تازه شروع مي كنيم تا پروژه گنده بردايم دنبال كدومش بريم؟ 

IB يا رقبا؟

----------


## Bahmany

> با تمام اين تفاسير، ما كه داريم تازه شروع مي كنيم تا پروژه گنده بردايم دنبال كدومش بريم؟ 
> 
> IB يا رقبا؟


میشه درباره پروژتون توضیح بدید تا به بررسی IB در پروژتون بپردازیم

----------


## shahrokhkian

سلام
من برای نصب نسخه 2007 نیاز به نام کاربری و کلمه عبور دارم.
کسی میتونه کمکم کنه.
ممنون از همتون.

----------


## alimooghashang

میشه بگین لطفا چطوری میشه با interbase کار کرد
البته تو شبکه
مرسی :بوس:

----------


## shahrokhkian

interbase server را روی سرور نصب کن و Client را روی کلاینتها.
بعد برای کانکت شدن آدرس بانک را روی سرور به برنامت بده.
IBDatabase1.Connected:=False;
IBDatabase1.DatabaseName:='\\192.168.0.1\Interbase Bank\BANK.gdb';
IBDatabase1.Connected:=true;

----------


## saeed_82

آقا کسی لایسنس اینتربیس 2009 رو نداره ما که از همین سایت برنامه نویس هم دلفی 2009 خریدیم باز متاسفانه لایسنس نداشت
لطفا اگه کسی راه حلی داره بده

----------


## alireza1010

سلام به همگی دوستان من بیشتر سعی می کنم کل تاپیک ها رو بگردم بعد سوال کنم اما متاسفانه در باره اینتربیس و دی بی اکسپرس جز این مقاله البته عالی چیزی پیدا نکردم لطف کنید تو مباحث ریزتره اینتر بیس در دلفی وارید شید . من می خوام بدون کمک sql server تو شبکه بانکمو بین دو تا کلاینت اشتراک کنم شنیدم با دی بی اکسپرس می شه کتابی هم خریدم اما ترجمه است و اصلا چیزی نفهمیدم برنامه نویسی دلفی را هم بلدم اگه نمی شه لطف کنید یه تا÷یک یا ÷ی دی اف خوب درمورد sql server و نحوه کار با اون تو دلفی بهم معرفی کنید بخدا دیگه خسته شدم بس که گشتم . ممنون قربون همتون منتظرم

----------


## khorsandreza

> آقا کسی لایسنس اینتربیس 2009 رو نداره ما که از همین سایت برنامه نویس هم دلفی 2009 خریدیم باز متاسفانه لایسنس نداشت
> لطفا اگه کسی راه حلی داره بده


 
اگه بخواهید از لایسنس معتبر استفاده کنید باید از نماینده بورلند در دوبی خریداری کنید InterBase تا 5 کاربر رایگان است من در سال 1386 نسخه 6.5 را به مبلغ 12,000,000 ریال برای یک شرکت خریداری کردم که به همراه نرم افزار ابزارهای دیگری از جمله احیا هدر دیتا بیس و پشتیبان گیر لحظه ای (BackUp Watherr ) بود ...
نرم افزار جالب است

----------


## rezazd

با سلام خدمت دوستان 
ضمن تشکر از مطلب ارسالی مژگان خانم به عرض میرسانم که ایشان فقط به تکست های تبیلغاتی بسنده کرده اند و البته همین کار ایشان نیز دز خور تحسین است 
اما در مورد مدیریت تراکنش ها مطلب را اشتباه عنوان فرموده اند قدرت اس کیو ال سرور میکرو سافت و  اوراکل در این زمینه رقیب ندارد 
لذا بحث بکلی مردود است 
در مورد مطلبی که در مورد تزانزاکشن ها و نهار خوردن کار بر الف فرموده اند مطلب به کلی نا درست است  در این مورد بخصوص عزیزان را به مطلبی به عنوان transaction isloation level 
 ارجاع میدهم حالتی هست که علی رغم در حال تغییر بودن رکورد توسط کار بر الف ، کاربر ب میتواند این رکورد را  پیمایش کند و این  سیاست گذاری برنامه نویس در منطق برنامه است و بسته به شرایط سطح ترانز اکشن را تعیین میکند و ربطی به موتور بانک ندارد چه اینکه اس کیو ال تمام سطوح ترانزاکشن را حمایت میکند 
اس کیو ال سرور در حجم بالا و تعداد کاربر بالا با مشکل کارایی مواجه نمیشود البته بشرط رعایت استاندارد های طراحی بانک و با استفاده از امکان اسکجوال تسک امکان بک اپ گیری اتو ماتیک بروز رسانی یا همزمانی بین چند سرور راه دور را داراست علی اصول برای پروژه های بزرگ از اس کیوا ال سرور استفاده میشود خصوصا اینکه طیف وسیعی از ابزار های برنامه سازی با ان هماهنگ هستند 
انتخاب بهتر از اس کیو ال سرور اوراکل میباشد که قوی ترین موتور بانک اطلاعاتی تا کنون میباشد و بهیچ وجه قابل قیاس با اینتر بیس نیست 
هردو ی انها بر خلاف اینتر بیس امکانات پر قدرتی در جهت تریگر استور پروسیجر و توابع داخلی دارند در مورد اس کیوال  سرو شما میتوانید یک فایل dll  با دلفی یا هرچیز درست کرده به عنوان توابع  داخلی اس کیو ال  معرفی کنید که چنین امکانی قطعا در اینتر بیس نیست رجوع کنید به external store procedure   خوبه که به هلپ اس کیو ال هم نگاهی بیندازید 
این امکان بخصوص در مورد ورژن های مختلف  یک برنامه رویه های متفاوتی را برای محاسبه بکار میبرند فوق العاده است و شما با کپی کردن یک دی ال ال رفتار اس کیول در محاسبه مثلا بیمه درمانی در یک بیمارستان را عوض میکنید بدون اینکه به سورس برنامه دست بزنید

----------


## khorsandreza

> با سلام خدمت دوستان 
> هردو ی انها بر خلاف اینتر بیس امکانات پر قدرتی در جهت تریگر استور پروسیجر و توابع داخلی دارند در مورد اس کیوال سرو شما میتوانید یک فایل dll با دلفی یا هرچیز درست کرده به عنوان توابع داخلی اس کیو ال معرفی کنید که چنین امکانی قطعا در اینتر بیس نیست رجوع کنید به external store procedure خوبه که به هلپ اس کیو ال هم نگاهی بیندازید 
> این امکان بخصوص در مورد ورژن های مختلف یک برنامه رویه های متفاوتی را برای محاسبه بکار میبرند فوق العاده است و شما با کپی کردن یک دی ال ال رفتار اس کیول در محاسبه مثلا بیمه درمانی در یک بیمارستان را عوض میکنید بدون اینکه به سورس برنامه دست بزنید


من با اس کیو ال و ابنتربیس بصورت گسترده کار کردم بر خلاف نظر شما اینتربیس از dll ها براحتی بهره می بره وشما میتوانید به سورس مثالهای ان نیز مراجعه کنید من بیش از 30 فانکش بصورت dll به توابع اینتربیس اضافه کردم بطور مثال شما اطلاعات تحت داس را بدون تبدیل به یک جدول وارد می کنید و بلافاصله موقع ویو فارسی تحت ویندور مشاهده میکنید و یا از توابع تاریخ و ... بهره میبرید
از این بانک در وزارت مسکن وزارت نفت و استفاده میشود اطلاعات خیلی زیادی با اینتربیس مدیریت میکنند (محض اطلاعات شما ) تحت وب نیز کار میکنند سرعتش نسبت به اس کیو ال بنظر من زیاد ه

----------


## Roia_del

آقا چرا درباره FireBird چیزی نمی گید . اونم بد نیست ها درست مثل اینتربیس هست ، حتی می تونند از کامپوننت های هم استفاده کنند . در ضمن 0 $ هست. :لبخند:

----------


## firststep

سلام و خسته نباشید خدمت همه شما
درمورد ساخت دیتابیسش هم بحث شه بد نیست؟

----------


## firststep

آیا نرم افزاری هست که دیتابیشو به سادگی بسازه مثل databse desktop در دیگر دیتابیس ها؟

----------


## BORHAN TEC

شما چه منبعي رو براي يادگيري Interbase معرفي مي كنيد؟

----------


## saeed_82

من سالهاست که اینتربیس کار میکنم و از اون هم رضایت دارم ولی در ویندوز 7 با مشکل برخورد کردم
من اینتربیس 7 رو در ویندوز 7 نصب کردم ولی سرویس منیجر درهنگام بالا آمدن ویندوز اتوماتیک اجرا نمیشه ، اینتربیس 2009 هم همین مشکل را داشت
من حتی اینها روی یوزر ادمین هم نصب کردم ولی کماکان این مشکل ادامه داشت 
کسی این مشکل رو تجربه کرده؟ 
واقعا برام حیاتیه
__________________

----------


## hamidkarimy

پست مفیدی است
به نطر من sql server گزینه بهتری می باشد به دلایل زیر:
در نسخه های تحت وب sql server خیلی بهتر توسط هاست ها ساپورت می شود
replication در sql server را نیز نمی توان فراموش کرد
در sql server سمت کلاینت نیاز به نصب نسخه کلاینت نیستید
cursor های interbase نیز forward olny هستند
row_number() over order by نیز که در sql2005 برای پیجینگ استفاده می شود نیز بسیار مفید است.
 sql server data transformation system قابلیت های فراوانی در انتقال اطلاعات از سیستم های دیگر و به سیستم های دیگر دارد
من مدیر تولید یک نرم افزار مالی اداری هستم و تجربه کاربران همزمان بالای 50 نفر و رکوردهای بالای 5 میلیون را در sql server دارم در نسخه 2000 با مشکل کندی مواجه بودم به دلیل تراکنش های همزمان بسیار بالا ولی در sql 2005 به بالا واقعا sql حرفی برای گفتن باقی نزاشته

----------


## BORHAN TEC

> در sql server سمت کلاینت نیاز به نصب نسخه کلاینت نیستید


*در اینتربیس هم این گونه است. البته در ADO را نمیدانم ولی من با dbExpress کار می کنم و نیازی به نصب نسخه کلاینت ندارم.*

----------

