| دات نت- آموزش سی شارپ و ویژوال بیسیک- |
دات نت- آموزش سی شارپ و ویژوال بیسیک-
|
درباره وبلاگ
![]()
دات نت- آموزش سی شارپ و ویژوال بیسیک-
پیوندهای روزانه
پیوندها
طراح قالب
|
يكي از دوستان وبلاگي من پرسيده بود چطوري پيغام Error مربوط به ورود ركورد تكراري را در اكسس فارسي كنيم . ترجيح دادم جواب كاملي براي سئوال ايشون بدم تا همه استفاده كنن. بنابراين ابتدا جواب ايشون رو ميدم و بعد از اون بطور كاملتر براي همه وبلاگي هاي عزيز روش كنترل خطا را تشريح مي كنم . If DataErr = 3022 Then
Dim Str as String 2- اگر خطا مربوط به كدهايي باشد كه خودمان در يك Sub نوشته ايم : در بخش اول اين مقاله به بررسي مفاهيم وچالش هاي موجود در زمينه طراحي و پياده سازي برنامه هاي کامپيوتري بمنظور استفاده در محيط اينترنت اشاره و محيط دات نت ماکروسافت از اين زاويه، مورد بررسي اوليه قرار گرفت . در بخش دوم ، به بررسي استانداردهاي کنسرسيوم وب در دات نت ، کلاس هاي XML در دات نت و امکانات امنيتي در ارتباط با XML ، خواهيم پرداخت . :Xml Information setکنسرسيوم وب مشخصاتي را بعنوان مجموعه اطلاعات مرتبط با XML ، استاندارد و ارائه نموده است .استاندارد فوق، شامل مجموعه اي از تعاريف بمنظور استفاده توسط ساير مشخصاتي است که بنوعي به اطلاعات موجود در يک سند XML مراجعه مي نمايند. يک سند XML ، حاوي تعدادي از مجموعه اطلاعات ارائه شده در استاندارد فوق است . مشخصات فوق ، اطلاعات لازم بمنظورتشريح ساختار يک سند XML را ارائه مي نمايد .يک سند XML شامل يک مجموعه اطلاعات است، اگر " خوش - شکل " بوده و محدوديت هاي تعريف شده در رابطه با Namespace را در مجموعه اطلاعات ومشخصات XML ، تامين نمايد . اغلب استانداردهاي XML کنسرسيوم وب، از تعاريف ارائه شده در مشخصه فوق ، اقتباس ( مشتق ) شده اند.براي اطلاعات تکميلي مي توان به آدرس http://www.w3.org/TR/xml-infoset مراجعه کرد .
تصاوير در بانک اطلاعات: از نوع داده IMAGE استفاده نکنيد از آنجا که مکررا ديده مي شود هنوز دوستان از نوع داده IMAGE استفاده مي کنند، لازم دانستم –با عرض پوزش- اين تذکر را بدهم: مايکروسافت قويا هشدار داده است که ديگر از نوع داده IMAGE استفاده نکنيد و به جاي آن از نوع دادة (VARBINERY(MAX استفاده کنيد؛ بايد بدانيد که نوع دادة IMAGE فقط براي سازگاري با SQL Server 2000 هنوز در SQL Server 2005 وجود دارد و در نگارش بعدي SQL Server ، ديگر اين نوع داده پشتيباني نخواهد شد. قبل از همه، اين توضيح کوتاه را بدهم که تصوير به صورت آرايه اي از بايتها در بانک اطلاعات ذخيره ميشود. بنا بر اين هنگام نوشتن در بانک يا خواندن از آن، بايد تبديلات لازم صورت گيرد. اکنون اين پروژه را بامن گام به گام تکميل نماييد: ۱. يک بانک اطلاعات SQL Server به نام PhotoBank ايجاد کنيد که حاوي جدول Persons بافيلدهاي ذيل است.
۲. در ويژوال استوديو يک پروژة Windows Application ايجاد کنيد. ۳. دو GroupBox به فرم بيافزاييد. ۴. در GroupBox اول (سمت چپ) دو Button، يک Lable، يک TextBox و يک PictureBox اضافه کنيد. ۵. در GroupBox دوم يک ListBox و يک PictureBox اضافه کنيد. ۶. اکنون بر روي فرم کليک مضاعف کرده تا ضمن ايجاد متد Load، به ويرايشگر کد منتقل شويد. اگر فضاي نامهاي ذيل وجود ندارد آنها را وارد کنيد: VB:
C#:
۷. متغيرهاي ذيل را داخل کلاس اعلان کنيد: VB:
C#:
۸. اکنون اتصال را در متد Load فرم تنظيم کنيد: VB:
C#:
۹. متد دکمة اول را (که براي انتخاب تصوير است) اين گونه بنويسيد: VB:
C#:
۱۰. و متد دکمة دوم براي درج و ذخيرة تصوير و نام نام خانوادگيِ شخص را اين گونه بنويسيد: VB:
C#:
فکر مي کنم فقط اين متد است که کمي نياز به توضيح دارد: همان گونه که گفته شد، تصاوير به صورت آرايه و جرياني از بايت ها در بانک اطلات ذخيره مي شود. بنا بر اين ابتدا يک MemomryStream ايجاد مي کنيم؛ سپس با استفاده از متد Save، تصوير PictureBox1 را در آن ذخيره مي کنيم؛ آنگاه يک آرايه از نوع بايت اعلان کرده و آن را با استفاده از همان MemomryStream مقداردهي مي کنيم. بقيه کد کاملا واضح است (فرض مي کنم که شما با برنامه نويسي بانک اطلاعات آشنايي داريد). اکنون ميتوانيد پروژه را امتحان کرده و در جعبه متن نام و نام خانوادگي شخص را نوشته، تصوير دلخواه را انتخاب کرده و دکمة ذخيره را کليک کنيد تا دادهها در بانک اطلاعات ذخيره شود. ۱۱. يک متد هم براي پر کردن ليست (در GroupBox دوم) لازم داريم: VB:
C#:
نام اين متد را در متدِ Load فرم کپي کنيد تا هنگام بارگزاري صفحه، اين ليست پر شود. ۱۲. هر گاه کاربر يکي از آيتمهاي اين ليست را کليک ميکند، بايد تصوير مربوط به آن شخص در PictureBox دوم نشان داده شود (خواندن از بانک اطلاعات)؛ بنا بر اين متد ذيل را بنويسيد: VB:
C#:
اکنون ميتوانيد برنامه را به طور کامل امتحان کنيد: در پايان اين مقاله بد نيست به نحوة انقياد کنترل ها به يک فيلد تصويري اشاره اي داشته باشم: اگر شما از کنترلهاي مقيد به داده (کنترل هايي که به صورت دوطرفه مقيد هستند)، استفاده ميکنيد، خود ويژوال استوديو تبديلات لازم را انجام ميدهد. در غير اين صورت، شما بايد اين کار را انجام دهيد. نحوة انقيادِ يک PictureBox با استفاده از يک فيلد جدول همانند ذيل است: VB:
C#:
و نحوة انقياد با استفاده از يک کنترل BindingSource همانند ذيل ميتواند باشد: VB:
C#:
پايگاه داده چند رسانه اي
رئوس مطالب
مقدمه
مديريت اطلاعات مالتيمديا در پايگاه داده:
نکات مورد توجه براي ذخيره سازي داده ها
معماري سيستم
Continuous-Media Data
ماهيت دادههاي مالتيمديا
فرمت دادههاي مالتيمديا
پردازش Queryها
مقدمه
استفاده از متن براي نگهداري داده ها
دادههاي مالتيمديا
به مجوعه متن، گرافيک و صدا براي نمايش اطلاعات
هدف :ايجاد يک چهارچوب کلي براي درخواست، جمع آوري و ذخيره دادههايي مانند صوت و تصوير و عکس
مديريت اطلاعات مالتيمديا در پايگاه داده:
عکس و ويژگيهاي آن : به صورت مجموعهاي از تاپلها
ذخيره در پايگاه داده رابطهاي
مشکلات:
فهرستسازي
بهينه سازي Query
مديريت بافرها
کنترل همزماني
مسائل امنيتي
ترميم دادهها
مديريت اطلاعات مالتيمديا در پايگاه داده:
تبدیل دادههاي مالتيمديا به صورت رابطه
نوع خاصي از Queryها و اعمال را به صورت کارآمد
Queryهايي مانند "تمام تصاويري را بيابيد که در آنها شخصي در حال مطالعه است"
مديريت اطلاعات مالتيمديا در پايگاه داده:
ذخیره داده ها به صورت فايل
ذخیره اطلاعات مربوط به آنها در پایگاه داده
حجم داده
مشخصات ايجادکننده آن
نوع داده
مکان دادهها در روي ديسک
مزيت
حجم کمتر در پايگاه
مشکلات
از دست دادن امکانات پایگاه داده
مشکلات عدم فهرست سازی
ممکن است در حالي که مشخصات يک داده در داخل پايگاه وجود داشته باشد خود آن داده چون در بيرون از پايگاه ذخيره شده پاک شود و DBMS نمي تواند کنترلي روي اين موارد داشته باشد.
نکات مورد توجه براي ذخيره سازي داده ها
پايگاه دادهاي بايد انتخاب شود که بتواند Large object ها را پشتيباني کند زيرا دادههاي مالتيمديا حجم زيادي را اشغال ميکنند.
روشها:
قسمتبندي داده ها وذخیره جداگانه هر قسمت
ذخیره داده ها در خارج از پایگاه داده
اشاره گر به فایل حاوی اطلاعات در داخل پایگاه داده
استاندارد SQL/MED با دادههاي خارجي به گونهاي رفتار ميکند که گويي جزئي از پايگاه داده هستند
نکات مورد توجه براي ذخيره سازي داده ها
بازيابي دادهها از نوع audio و video با سرعت يکنواخت
Continuous-media-data
بازيابي دادههاي مشابه: منظور از اين اصطلاح اين است که در اين گونه پايگاه دادهها ما احتياج داريم که دادههايي که مشابه يک نوع خاص هستند را استخراج کنيم ممکن است دادههايي که استخراج ميشود کاملاً مشابه مورد درخواست شده نباشد اما به هر حال پايگاه داده بايد بتواند آنها را تشخيص داده و استخراج کند
بازيابي داده ها
بازيابي ديتاها در سيکلهاي زماني مشخص
بازيابي و نگهداري ميزان مشخصي از داده براي هر کاربر در هر سيکل در بافر حافظه
ارسال ديتاهاي ذخيره شده در بافرها براي کاربران در سيکل بعد
دوره کوتاه: حرکت بيشتر هد ديسک، اتلاف منابع
دروه زماني بزرگتر: حافظه بيشتر، زمان پاسخ اوليه طولاني، کاهش تعداد حرکات هد ديسک
معماري سيستم
ديتاهاي مالتيمديا روي چندين ديسک ذخيره ميشوند معمولا در سيستمهايي که حجم دادههاي آنها بسيار بالا است ممکن است از حافظه سومي براي ذخيره دادههايي که دفعات کمتري درخواست ميشوند استفاده کند.
افراد دادههاي مالتيمديا را با استفاده از وسائل مختلفي مشاهد مي کنند که به مجموعه آنها ترمينال گفته ميشود.
انتقال ديتاهاي مالتيمديا از يک سرور به چندين ترمينال احتياج به يک شبکه با ظرفيت بالا دارد.
انواع داده ها ذخيره شده در پايگاه داده
ديتاهاي مصور:
يک کاربر ممکن است تفاوت دو عکس شبيه به هم را نتواند به راحتي تشخيص دهد. به عنوان مثال در يک پايگاه داده که علائم تجاري ذخيره ميشود زماني که ما بخواهيم يک علامت تجاري جديد را در پايگاه ثبت کنيم. بايد سيستم بتواند تمام علائم تجاري مشابه با آن را که قبلاً ثبت شده است استخراج کند تا کاربر بتواند آنها را با هم مقايسه کند.
انواع داده ها ذخيره شده در پايگاه داده
ديتاهاي صوتي:
امروزه فرمان دادن به کامپيوتر به طور گستردهاي مورد توجه قرار گرفته است. در اين روش کاربر با صحبت کردن با سيستم فرامين لازم را به سيستم ميگويد و سيستم بايد دادههاي صوتي ورودي را دريافت و با دستورات مشابهي که در پايگاه داده ذخيره شده مقايسه کند و نوع دستور را تشخيص و دستورات صادره را اجرا کند.
دادههاي دستنويس شده:
ورودي سيستم ممکن است به صورت دستنويس باشد که اين ورودي ممکن است براي مقايسه با ساير دادههاي ذخيره شده به سيستم داده شود و يا به عنوان يک دستور به سيستم. به هر حال سيستم بايد بتواند اين نوع دادهها را تشخيص دهد که در اينجا باز هم مساله تست تشابه پيش ميآيد
Continuous-Media Data
دادههاي صوتي و تصويري:
سرعت بازيابي اين نوع دادهها بايد به اندازه کافي سريع باشد به گونهاي که بين قسمتهاي متوالي فاصلهاي ايجاد نشود.
سرعت بازيابي بايد آنقدر سريع نباشد که بافري که براي آن در نظر گرفته شده سرريز کند و در نتيجه دادهها از دست برود
سرعت بازيابي صوت و تصوير بايد هماهنگ باشد. زيرا اگر به عنوان مثال و صدا وتصوير يک فيلم را در پايگاه جداگانه ذخيره کنيم اگر اين هماهنگي در زمان بازيابي رعايت نشود صدا و تصوير پخش شده هماهنگ نخواهد بود
ماهيت دادههاي مالتيمديا:
متفاوت از دادههاي متني استاندارد
نحوه نمايش، مفاهيم
حجم زياد
وابسته به زمان
احتياج به پردازش زياد
مدل کردن دادههاي مالتيمديا:
اطلاعاتي مورد نيازدر مدلسازي دادههاي مالتيمديا :
جزئيات ساختار اشياء مختلف.
عملگرهايي که با توجه به ساختار هر شيئ براي آن شيئ تعريف ميشود.
ويژگيهاي هر کدام از اشياء.
ارتباط بين اشياء مالتيمديا و اشياء موجود در جهان واقعي.
بخشهاي مختلف اشياء مالتيمديا با نمايش ارتباط آنها با اشياء موجود در جهان واقعي و روشهايي که براي انجام اين کار وجود دارد.
ويژگيها، روابط و عملگرهاي موجود در مورد اشياء واقعي.
مدل کردن دادههاي مالتيمديا:
مدل کردن داده های مالتی مدیا:
استاندارد MPEG-7
تفسير محتواي دادههاي مالتيمديا
استاندارد MPEG-4
تجزيه و تحليل ساختيافته اشياء مالتيمديا
فرمت دادههاي مالتيمديا:
عکسها فرمت JPEG
فيلمها: ذخيره سازي هر فريم با فرمت JPEG
تشابه زياد فريم هاي متوالي
فيلم و صدا : فرمت MPEG : فشرده سازی به دلیل تشابه زیاد
کاهش سايز فيلمها با استفاده از فرمت
MPEG-1 مانند کيفيت VHS
پردازش Queryها:
Query ممکن است حاوي يک داده مالتيمديا باشد که توسط کاربر به عنوان ورودي به آن داده شده است.
خروجي نيز ممکن است کاملاً شبيه چيزي نباشد که کاربر به عنوان ورودي درخواست کرده است بلکه يک حدي از تشابه را که دارا باشد کافي است.
پردازش Queryها:
اگر کاربر با کليک کردن روي يک semcon مثلا s تقاضاي جستجوي پايگاه را براي يافتن آن شيئ داشته باشد آنگاه سيستم ابتدا صفات اين شيئ را بررسي کرده، سعي در يافتن اشيائي ميکند که اين صفات را داشته باشند. همچنين اشياء ديگري را که شامل semconي شبيه s هستند و نيز اشيائي را که با آنها در ارتباط هستند جستجو ميکند
پردازش Queryها:
خروجي Queryهايي که در پايگاه دادههاي متعارف به کار ميرود مجموعه اطلاعاتي است که صددرصد منطبق با ورودي هستند. اما در پايگاه دادههاي مالتيمديا وضع فرق ميکند
مثال:
تمام عکسهايي را بيابيد که علي در آن حضور دارد( عکس علي به عنوان ورودي داده ميشود )
عکس تمام محکوميني که شبيه اين( ورودي) هستند را بيابيد
پردازش Queryها:
براي نشان داده ميزان تشابه دو شيئ به هم از اعداد حقيقي بين صفر تا يک استفاده ميکنيم:
صفر نشان دهند تفاوت کامل دو شيئ
يک نشان دهنده تشابه کامل اين دو شيئ است
از نظر تئوري براي پاسخ به دو Query گفته شده در اسلاید قبل بايد تمام اشياء موجود در پايگاه را از نظر تشابه با عکس درخواستي طبقهبندي کرد و آنها را نمايش داد
پردازش Queryها:
انتخاب حد آستانه براي تشابه:
اگر براي يک شيئ عدد بدست آمده ا زحد آستانه کمتر بود آن شيئ بازيابي نميشود.
با فيلتر کردن اشياء که ميزان تشابه آنها کمتر از حد آستانه است آنها را حذف ميکنيم. سپس اشياء باقيمانده را به ترتيب ميزان تشابه آنها به عنوان خروجي باز ميگردانيم.
پردازش Queryها:
استفاده از فهرستسازي براي تسريع عمل تعيين ميزان تشابه
در نظر گرفتن تعداد دلخواه مثلاً n از ويژگيهاي اشياء و نمايش به عنوان يک نقطه در فضاي n بعدي
يک روش که بتواند نزديکترين نقطهاي را که داراي ويژگيهاي خاصي است پيدا کند را ميتوان به عنوان راهحلي براي ساختن فهرست در نظر گرفت که ميتواند تست تشابه را نيز به خوبي انجام دهد.
اين n ويژگي ممکن است مستقل از هم باشند و يا از يک ويژگي سراسري مرکب مشتق شده باشند.
پايگاه دادههاي تجاري که دادههاي مالتي مديا را پشتيباني ميکنند:
CA-Jasmine
DB2 Universal Database
ODB II
Oracle
Sybase
UniSQL
منابع و مراجع:
[1] Horea Todoran, “Smelling Objects for Multimedia Database Application” departemant of management of european instituation,babes-bolyai university,studies in informatics and control Vol. 14, No.4, December 2005
[2] Daniel Pletinckx, Neil Silberman, Drik Callebaut, “Heritage presentation through interactive storytelling: a new multimedia database approach” The Journal of Visualization and Computer Animation Volume 14, Issue 4, Date: September 2003, Pages: 225-231
[3] Harald Kosch, “Distributed Multimedia Database Technologies supported by MPEG-7 und MPEG-21” , CRC Press. 248 pages. November 2003. ISBN: 0-849-31854-8.
|
فهرست اصلی
آرشیو موضوعی
آموزش سی شارپ#C
آموزش ویژوال بیسیک VB.Net آموزش پاسکال آموزش جاوا JAVA آموزش Sql Server آموزش ASP.Net دات نت Net. آموزشADO.Net آموزش XML امنیت Security پایگاه داده آرشیو مطالب
امکانات
|
Copyright © 2006 All Rights Reserved by mydotnet.Blogfa.com