PDA

View Full Version : نحوه ذخیره و بازیابی تصاویر در دیتابیس



Xcalivorse
سه شنبه 08 مرداد 1387, 22:23 عصر
با سلام. دوستان میدونم این سوال ها تکرار تکرار تکرار است که چگونه می توان یک تصویر را در بانک ذخیره کرد. چگونه میتوان یک عکس را از بانک دریافت کرد. چگونه میتوان تصویر ذخیره شده در بانک را در یک PictureBox نشون داد و روی هارد ذخیره کرد.
برای همین یک برنامه کامل نوشتم که همه موارد ذکر شده توش هست. بانک برنامه Sql هستد و فایلهای دیتابیسشو برای Attach کردن در پوشه DataBase For Attach گذاشتم. امیدوارم به کارتون بیاد و مفید باشه.

پیشنهاد میکنم دوستان هم منابع و مطالب و برنامه های خودشونو رو که پیرامون این موضوع میباشد در این تاپیک قرار دهند تا به امید خدا به عنوان یک منبع برای
دیگر کاربران باشد.

نسخه ای از برنامه رو که با بانک اکسس کار میکنه در همین صفحه کمی پایین تر گذاشتم.

یحیی سرمدی
سه شنبه 08 مرداد 1387, 22:43 عصر
دوست عزیز ممنون. به نظر من راه اندازی تاپیک ها به این شکل خیلی عاله. خسته شدم از بس هر روز با ورود به تالار شاهد تاپیک ها و سوالات تکراری بودم. اگر هر کسی برای آموزش یک موضوع یه تاپیک میزد و اونو ادامه میداد و به سرانجام می رسوند عالی میشد.

Sajjad.Aghapour
سه شنبه 08 مرداد 1387, 23:46 عصر
دوست عزیز ممنون. به نظر من راه اندازی تاپیک ها به این شکل خیلی عاله. خسته شدم از بس هر روز با ورود به تالار شاهد تاپیک ها و سوالات تکراری بودم. اگر هر کسی برای آموزش یک موضوع یه تاپیک میزد و اونو ادامه میداد و به سرانجام می رسوند عالی میشد.

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

top7news
چهارشنبه 09 مرداد 1387, 00:21 صبح
پیشنهاد میکنم از Background Working برای انجام عمل های Backup & Restore استفاده کنی ، خیلی بهتر میشه .
یا اینکه اون دو تا دکمه رو ، قسمت انجام Backup و Restore رو توی دوتا thread بنویسی .

teshnehab
چهارشنبه 09 مرداد 1387, 10:30 صبح
با سلام. دوستان میدونم این سوال ها تکرار تکرار تکرار است که چگونه می توان یک تصویر را در بانک ذخیره کرد. چگونه میتوان یک عکس را از بانک دریافت کرد. چگونه میتوان تصویر ذخیره شده در بانک را در یک PictureBox نشون داد و روی هارد ذخیره کرد.
برای همین یک برنامه کامل نوشتم که همه موارد ذکر شده توش هست. بانک برنامه Sql هستد و فایلهای دیتابیسشو برای Attach کردن در پوشه DataBase For Attach گذاشتم. امیدوارم به کارتون بیاد و مفید باشه.

پیشنهاد میکنم دوستان هم منابع و مطالب و برنامه های خودشونو رو که پیرامون این موضوع میباشد در این تاپیک قرار دهند تا به امید خدا به عنوان یک منبع برای
دیگر کاربران باشد.



سلام
من مي خوام همين کار را با اکسس انجام دهم ولي اطلاعات ندارم لطفا مرا راهنمايي کنيد.
مي خوام عکس ها هم به صورت آدرس در بانک ذخيره شوند.
لطفا کمک کنيد.
با تشکر

Xcalivorse
چهارشنبه 09 مرداد 1387, 12:04 عصر
این هم نسخه ذخیره سازی عکس در DataBase با بانک Access.
توجه کنید که فیلد Picture که در بانک Accese تعریف میکنید رو باید از نوع OLE Object تعریف کنید.
بانکش رو هم در پوشه DataBase For Attach قرار دادم و باید در درایو C کپیش کنید.
امیدوارم مفید باشه.

Kaykha
چهارشنبه 09 مرداد 1387, 12:20 عصر
آقا خيلي ممنون اين اكسس رو خيلي لازم داشتم
فقط اي كاش يه امكان ديگه هم روش مي گذاشتي كه مي شد فايل رو از ديتا بيس حذف كرد
بازم خيلي خيلي ممنون

teshnehab
چهارشنبه 09 مرداد 1387, 14:33 عصر
این هم نسخه ذخیره سازی عکس در DataBase با بانک Access.
توجه کنید که فیلد Picture که در بانک Accese تعریف میکنید رو باید از نوع OLE Object تعریف کنید.
بانکش رو هم در پوشه DataBase For Attach قرار دادم و باید در درایو C کپیش کنید.
امیدوارم مفید باشه.



سلام
واقعا ممنون هستم از اينکه جواب داديد.
ولي من نمايش و درج و حذف عکس تقريبا مثل همين پروژه تحت وب مي خواستم.
اميدوارم بتونيد کمکم کنيد .
خيلي فوري هست.
با تشکر

Kaykha
پنج شنبه 10 مرداد 1387, 09:52 صبح
ببخشيد من مي خاستم فايل اكسسي رو كه خودم براي يك برنامه ي ديگه ساخته بودم رو به همين روش باز كنم ولي گير داد به Ole من بايد چي كار كنم
فايل اكسس من مربوط به اطلاعات اعضاي يك صندوق مالي هست با چندين فيلد لطفا كمكم كنيد

teshnehab
پنج شنبه 10 مرداد 1387, 10:00 صبح
سلام جناب xcalivorse
اگر ممکنه همين پروژه اي که با اکسس نوشتيد ،
کد امکان حذف تصوير از بانک را هم بگذاريد.
خيلي ضروري هست و ممنون از اينکه جواب ميديد.

teshnehab
پنج شنبه 10 مرداد 1387, 10:58 صبح
دوست گرامي
اگر ممکن است خطوط زير از مرحله ذخيره عکس در بانک را توضيح دهيد.



pictureBox1.Image.Save(Memory, System.Drawing.Imaging.ImageFormat.Jpeg);
command.Parameters.Add("@Pic", OleDbType.Binary).Value = Memory.GetBuffer();



منتظر کدهاي حذف عکس از بانک هم هستيم.

با تشکر

Xcalivorse
پنج شنبه 10 مرداد 1387, 11:13 صبح
این هم برنامه با قابلیت حذف تصویر. با بانک اکسس.

teshnehab
پنج شنبه 10 مرداد 1387, 12:12 عصر
دوست گرامي
لطفا در مورد اين کد ذخيره و حذف از بانک کمي توضيح دهيد.
با تشکر

teshnehab
پنج شنبه 10 مرداد 1387, 23:44 عصر
سلام جناب xcalivorse
اميدوارم وقت داشته باشيد تا بتوانيد به سوالات بنده در مورد برنامه تان جواب دهيد.
وقتي فيلد جدول تان از نوع ole تعريف کرديد، چطور عکس به ان فيلد اختصاص مي دهيد؟؟؟
مي خوام در ابتدا که جدولم خالي خالي نباشد.
اگر توضيح دهيد خيلي خيلي ممنون ميشم.

tthenry14plus
جمعه 11 مرداد 1387, 23:27 عصر
برنامه ای جهت ذخیره، بازیابی و ... عکس در بانک
(Oledb)
جهت:
اضافه
حذف
ویرایش عکس
و نیز پیش نمایش آن بصورت کوچک و بزرگ

به نمونه برنامه شماره 99 (99#) در این تاپیک مراجعه نمائید (http://barnamenevis.org/forum/showthread.php?p=564359#post564359)

Kaykha
یک شنبه 13 مرداد 1387, 18:38 عصر
سلام دوباره
من در حذف اطلاعات از ديتا بيس ي مشكلي دارم اونم فكر مي كنم به اين خاطر هست كه من عنوان فيلدهام رو فارسي دادم و حالا به كامند حذف ايراد مي گيره كه اطلاعات لازم رو ارسال نكردم
بايد چيكارش كنم؟؟
فارسي بودنش ضروريه

tthenry14plus
دوشنبه 14 مرداد 1387, 00:49 صبح
اون قطعه از برنامتون رو بذارید تا ببینیم مشکل چیه ...

tthenry14plus
دوشنبه 14 مرداد 1387, 00:51 صبح
در ضمن نیازی نیست عنوان هاتون رو فارسی بذارید
اونهارو توی جدول انگلیسی بزنید اما هنگام بایند کردن به دیتاگرید عناوینشونو فارسی بذارید:

مثال:


select id as [ردیف], name as [نام], family as [نام خانوادگی] From Table

razie65h
یک شنبه 21 مهر 1387, 08:17 صبح
سلام دوستان.به نظر شما مطالب زیر درسته؟ اگه درسته از چه نوعی باید تعریف کنیم.
""مايکروسافت قويا هشدار داده است که ديگر از نوع داده IMAGE استفاده نکنيد و به جاي آن از نوع دادة (VARBINERY(MAX استفاده کنيد؛ بايد بدانيد که نوع دادة IMAGE فقط براي سازگاري با SQL Server 2000 هنوز در SQL Server 2005 وجود دارد و در نگارش بعدي SQL Server ، ديگر اين نوع داده پشتيباني نخواهد شد.""
varbinary ظرفیتش اندازه ی یک عکس نیست.
من از کد جناب xcalivor در یکی از برنامه هام استفاده می کنم . اما موقع بازیابی و پر کردن datatable، error زیر رو می ده.
Inconvertible type mismatch between SourceColumn 'pic_request' of Byte[] and the DataColumn 'pic_request' of byte.
datatype ستونی از datatable که عکس در آن قرار می گیره باید چی تعریف بشه؟

saeed123
دوشنبه 03 خرداد 1389, 13:42 عصر
با سلام
دوستان من احساس می کنم که با این روش به زودی بانک اطلاعاتی به حجم خیلی زیادی می رسه
به عنوان مثال من 1000 تا عکس 3*4 رو با این روش به بانک اطلاعاتی اضافه کردم و حجم بانکم 300 mg بیشتر شد.
آیا به نظر شما راهی وجود داره که حجم DB کمتر بشه.

nimam2008
شنبه 01 مرداد 1390, 16:01 عصر
با سلام

من می تونم فایلهای تصویری که در Sql ذخیره کردم رو در یک PictureBox نمایش بدم و با کلیک روی PictureBox اون فایل رو با برنامه مورد نظر باز کنم ولی برای نمایش فایلهای PDF و Doc نمی دونم به چه صورت و از چه کنترلی برای نمایش استفاده کنم

لطفا من را راهنمایی کنیم
با تشکر