امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
مشکل مقایسه عکس در دیتابیس
نویسنده پیام
Payman62 آفلاین
مدیر بخش ویژوال بیسیک
*****

ارسال‌ها: 2,273
موضوع‌ها: 149
تاریخ عضویت: اسفند ۱۳۸۴

تشکرها : 1308
( 3661 تشکر در 942 ارسال )
ارسال: #1
مشکل مقایسه عکس در دیتابیس
سلام.
من یه دیتابیس دارم که داخل یکی از تیبل هاش یه فیلد از نوع image دارم.
مشکلی در ذخیره و بازیابی عکس در دیتابیس رو ندارم.
ولی هنگام سرچ یه عکس خاص به مشکل بر میخورم. من میخوام هنگام insert کردن عکس جدید سرچ کنم که اگه اون عکس موجود بود از همون عکس قبلی که در دیتابیس هست استفاده کنم و عکس تکراری ثبت نکنم.
یه تابع در sql نوشتم به این صورت:
کد:
create FUNCTION Test(@a image)
RETURNS TABLE
AS
RETURN
(
SELECT * FRom Pictures
WHERE Pic = @a
);
اما به WHERE Pic = @a گیر میده و تابع ساخته نمیشه. ظاهرا امکان استفاده از تایپ image در مقایسه وجود نداره.
حالا چه راهی پیشنهاد میکنید؟
۲۵-بهمن-۱۳۸۸, ۰۰:۱۸:۴۷
ارسال‌ها
پاسخ
far_222000 آفلاین
مدير بخش ديتابيس
*****

ارسال‌ها: 955
موضوع‌ها: 68
تاریخ عضویت: شهریور ۱۳۸۴

تشکرها : 468
( 1249 تشکر در 422 ارسال )
ارسال: #2
RE: مشکل مقایسه عکس در دیتابیس
یه تابع بنویس که به هر عکس یه String یکتا نسبت بده!! مثلاً عکس ها رو به صورت Binary باز کن بعد Hash کن. می شه یه String با طول ثابت و البته یکتا!!! حالا توی اون Table که عکس هاتو توش ذخیره کردی، یه فیلد دیگه درست کن و Hash شده های عکس ها رو جلوشون بنویس. حالا وقتی می خوای عکس جدید Import کنی، Hashش کن بعد String حاصله رو با اون هایی که توی DB هست مقایسه کن!!!

پارک24
مرجع خرید و فروش خودرو
۲۵-بهمن-۱۳۸۸, ۱۲:۱۳:۳۱
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : ajlajlajl, Payman62
Payman62 آفلاین
مدیر بخش ویژوال بیسیک
*****

ارسال‌ها: 2,273
موضوع‌ها: 149
تاریخ عضویت: اسفند ۱۳۸۴

تشکرها : 1308
( 3661 تشکر در 942 ارسال )
ارسال: #3
RE: مشکل مقایسه عکس در دیتابیس
سلام.
خوبی فرید جان ؟ گوشیتم که دیگه جواب نمیدی.

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

فکر میکنم روش hash کردن عکس ها روش مناسبی باشه. بسیار سریع تر و راحت تر جواب میده.
طول hash با روش md5 حداکثر 32 کاراکتر هست دیگه؟ میخوام طول فیلد رو char(32) بذارم.
(آخرین ویرایش در این ارسال: ۲۶-بهمن-۱۳۸۸, ۰۱:۱۲:۳۵، توسط Payman62.)
۲۶-بهمن-۱۳۸۸, ۰۰:۴۹:۲۱
ارسال‌ها
پاسخ
far_222000 آفلاین
مدير بخش ديتابيس
*****

ارسال‌ها: 955
موضوع‌ها: 68
تاریخ عضویت: شهریور ۱۳۸۴

تشکرها : 468
( 1249 تشکر در 422 ارسال )
ارسال: #4
RE: مشکل مقایسه عکس در دیتابیس
(۲۶-بهمن-۱۳۸۸, ۰۰:۴۹:۲۱)Payman62 نوشته است: سلام.
خوبی فرید جان ؟ گوشیتم که دیگه جواب نمیدی.
سلام پیمان جان، ما مخلص شماییم. فکر کنم فقط یه بار زنگ زدی که من جواب ندادما!!! الان هم هر موقع زنگ بزنی من دربست در خدمتم!
(۲۶-بهمن-۱۳۸۸, ۰۰:۴۹:۲۱)Payman62 نوشته است: پس راه حل استاندارد برای این مشکل وجود نداره و برای مقایسه عکس باید از روش های دیگه استفاده کرد.
میدونید که اطلاعات عکس ها به صورت آرایه ای از بایت سلکت میشن. ابتدای برنامم کل عکس ها سلکت میشن تو یه دیتاست. توسط یه تابع دونه دونه عکس ها رو از حالت بایت به عکس تبدیل کردم و با عکس جدید مقایسه کردم. اما در مواردی که دو عکس یکی بودن هم حاصل مقایسه فالس بود.
البته این روش کمی هم کند هست چون باید اطلاعات هر عکس که آرایه هست تبدیل شه به عکس و در تعداد بالا وقت میگیره.

فکر میکنم روش hash کردن عکس ها روش مناسبی باشه. بسیار سریع تر و راحت تر جواب میده.
طول hash با روش md5 حداکثر 32 کاراکتر هست دیگه؟ میخوام طول فیلد رو char(32) بذارم.
راه حل استاندارد رو من ندیدم، ولی با اطمینان نمی تونم بگم که وجود نداره. واقعیتش من چیزی در موردش ندیدم. این راهی هم که گفتم، از خودم بود.
طول md5 هم 32 هستش!

پارک24
مرجع خرید و فروش خودرو
۲۷-بهمن-۱۳۸۸, ۱۱:۰۰:۴۳
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : Payman62
am3410 آفلاین
تازه وارد

ارسال‌ها: 13
موضوع‌ها: 6
تاریخ عضویت: مرداد ۱۳۸۹

تشکرها : 4
( 0 تشکر در 0 ارسال )
ارسال: #5
RE: مشکل مقایسه عکس در دیتابیس
سلام
من درخصوص ذخیره وبازیابی عکس توی اسکیو ال با وی بی 6 مشکل دارم.
بالا نوشته بودین که شما در این زمینه مشکلی ندارین.
امکانش هست نمونه سورسی برام بفرستین
ممنون میشم.
۱۳-مرداد-۱۳۸۹, ۱۵:۳۴:۲۱
ارسال‌ها
پاسخ
far_222000 آفلاین
مدير بخش ديتابيس
*****

ارسال‌ها: 955
موضوع‌ها: 68
تاریخ عضویت: شهریور ۱۳۸۴

تشکرها : 468
( 1249 تشکر در 422 ارسال )
ارسال: #6
RE: مشکل مقایسه عکس در دیتابیس
بهتر بود قبل از پست دادن توی این تاپیک یه جستجو می کردین:
http://www.iranled.com/forum/showthread.php?tid=5210
اینجا به زبان وی بی دات نت توضیح داده، اگه خواستین، توی تاپیکی که آدرسشو دادم درخواست کنین تا کد وی بی 6.0 رو بذارم

پارک24
مرجع خرید و فروش خودرو
(آخرین ویرایش در این ارسال: ۱۳-مرداد-۱۳۸۹, ۲۰:۴۰:۴۷، توسط far_222000.)
۱۳-مرداد-۱۳۸۹, ۲۰:۴۰:۰۱
وب سایت ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  [سوال] چگونگی اتصال تبلت به دیتابیس mehdisafari 4 4,332 ۰۹-مرداد-۱۳۹۵, ۰۸:۲۴:۳۸
آخرین ارسال: mehdisafari
Wink [آموزشی] انواع روشهای پشتیبان گیری از دیتابیس bghad1 5 6,446 ۲۶-فروردین-۱۳۹۴, ۱۱:۵۸:۲۱
آخرین ارسال: bghad1
  دیتابیس آسیب دیده taksa2012 1 2,248 ۲۶-تير-۱۳۹۳, ۱۵:۳۹:۰۶
آخرین ارسال: babyy
  انتقال دیتابیس به سیستم کاربر به وسیله اسکریپت taksa2012 1 2,619 ۰۷-تير-۱۳۹۳, ۰۷:۵۸:۰۵
آخرین ارسال: Di Di
  مقایسه رکوردهای دو جدول taksa2012 11 11,136 ۰۶-آذر-۱۳۹۲, ۲۳:۵۸:۳۶
آخرین ارسال: taksa2012
  مقایسه جدول های دارای چند کلید taksa2012 4 3,649 ۰۴-آذر-۱۳۹۲, ۱۱:۱۳:۴۴
آخرین ارسال: lord_viper
  خواندن از دو دیتابیس روی سرور های مجزا! hamed_Arfaee 7 8,790 ۲۱-آذر-۱۳۹۱, ۱۲:۰۶:۳۰
آخرین ارسال: hamed_Arfaee
Question کپی برداری از دیتابیس سایت access19 2 4,273 ۲۶-آبان-۱۳۹۱, ۰۲:۰۹:۳۱
آخرین ارسال: hosseinmm2
  مشکل با SQL هنگام Attach کردن دیتابیس حجیم mojtabamalaekeh 4 7,883 ۰۳-خرداد-۱۳۹۱, ۱۵:۲۶:۵۸
آخرین ارسال: mojtabamalaekeh
  سوال در مورد دیتابیس یک انجمن hamed2006 1 2,777 ۰۱-مرداد-۱۳۸۹, ۱۰:۳۲:۱۱
آخرین ارسال: ha_60

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS