-
راهنمایی در خصوص ذخیره فایل در بانک SQL
با سلام و خسته نباشید ...
دوستانی که تجربه در خصوص پروزه هایی که تحت شبکه و وب هستن لطفا راهنمایی کنید.
من دارم یه برنامه می نویسم که هم باید تصویر کاربر رو ذخیره کنه هم باید فایل هایی با پسوند *.PDF رو ذخیره کنه. حالا من موندم که خود فایل (عکس و فایل PDF) رو در بانک ذخیره کنه یا آدرس فایل در هارد وجود داره ذخیره کنه ؟؟
در ضمن برنامه تحت شبکه و تحت وب هم هست...
لطفا دوستان راهنمایی کنید با تشکر.*
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
دوست عزیز شما هر 2 راه رو میتونی انجام بدی و به این نکته توجه کن که اگر میخوای تحت وب کار کنی باید آدرس عکس رو وارد کنی و از طریق اون آدرس عکس رو لود کنی حالا اگه شما میخوای فقط برنامه رو از طریق نرم افزار بارگذاری کنی تمام فایل ها رو تو بانک ذخیره کن ولی اینم هست که حجم بانک به شدت افزایش پیدا میکنه
فایل pdf هم همینطور از هر 2 طریق میتونی ذخیره کنی و بارگذاری برنامه چوت تحت وب هست پیشنهاد من اینه که با آدرس کار کنی نه با خود فایل
اگر برنامه از طریق socket نویسی هستش که اونم میتونی از هر 2 طریق استفاده کنی چون برای ارسال حتما باید تبدیل به بایت بشه و این نکته هم بگم که سایز بافر رو متغییر تعریف کن که بتونی با همون بافر فایل 1کیلوبایتی هم بفرستی و فایل 100گیگابایتی هم ارسال کنی و علاوه بر همه اینا متن هم ارسال کنی اگه که از خود sql به صورت مستقیم استفاده کن
اگه برنامه تنها بانکش تحت شبکه و اینترنت هست و از طریق نرم افزار به اون وصل میشی همون بهتره که همه رو در بانک ذخیره کنی که کارت فوق العاده ساده میشه
سئوالی بود در خدمت هستم
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
ممنون از پاسخ خیلی خوبتون.
نقل قول:
اگه برنامه تنها بانکش تحت شبکه و اینترنت هست و از طریق نرم افزار به اون وصل میشی همون بهتره که همه رو در بانک ذخیره کنی که کارت فوق العاده ساده میشه
اینو خوب متوجه نشدم ؟
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
خوب منظور من اینه که اگه شما فقط و تنها میخوای کاربران از طریق نرم افزار تحت ویندوز به برنامه شما اتصال برقرار کنن میتونی همه فایل ها رو در بانک ذخیره کنی که برای این امر هم میتونی از بانک mysql و یا ms sql استفاده کنی هر 2 جواب گویی بسیار خوبی دارن
البته اگه نخوای همه رو با هم نمایش بدی منظور من این هست ::: select * from tb_1111
همیشه برای اینکه سرعت خوبی برای انتقال اطلاعات داشته باشی باید از where استفاده کنی تا اطلاعات دقیقی برات نمایش پیدا کنه مثل نرم افزار های بیمه که یک زمان افت سرعت پیدا نکنی و حجم اطلاعات ارسالی زیاد نشه
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
در SQL server 2008 نسخه ی کامل گزینه ای وجود داره که شما می توانید فیلدهایی تعریف کنید که از قابلیت filesystem پشتیبانی می کنه. به معنی که به SQL می فهمانید که این فیلد قرار است اطلاعات با حجم بالا ذخیره کند. SQL تا 8 مگابایت برای هر فایل را کاملا بهینه می داند. برای حجم های بین 8 مگابایت تا 2 گیگابایت را هم بدون کد نویسی خاصی و فقط با تغییر اندازه فیلد پشتیابانی می کند. هم چنین قابلیت ذخیره فایلهای با حجم بیشتر هم دارد.
و بعد در جستجو از الگوریتم هایی استفاده می کند که سرعت بازخوانی بهینه باشد.
در صورتی که حجم فایلهای شما ممکنه از 2 گیگابایت تجاوز کنه به سراغ FileSystem بروید . در غیر این صورت varbinaryMax برای شما کفایت می کند ( پیشنهاد من این است که بجای مکس یک مقدار مشخصی قرار دهید)
تجربه ی من در مورد یک نرم افزار با همین شیوه کاملا موفق بود و عملا هیچ مشکل خاصی در باز خوانی وجود ندارد.
فقط این که ما محتوای فایلهای را در یک جدول مجزا نرمال می کنیم. یعنی سعی کنید جدولی که محتوای فایلها را در خودش نگاه می دارد . یک ستون ID برای خودش و یک ستون ID برای رکورد اصلی و یک ستون هم برای محتوایش داشته باشد.
جستجو همیشه از رکورد اصلی انجام می شود. و وقتی مطمئن شدید کاربر قصد نمایش محتوای یک فایل خاص درون یک رکورد اصلی را دارد آن یک مورد را از جدول محتوای فایل دانلود کرده و نمایش دهید.
در برنامه ی من فایلهایی با حجم 40 تا 50 مگابایت هم در زمان بین 3 تا 5 ثانیه در رایانه ی کاربر مشاهده میشد. (اون هم یک سیستم با رم یک گیگابایت و پردازنده 3400 Hz قدیمی)
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
دوست عزیز اگر امکان داره طریقه کد نویسی قرار دادن یک فایل مثلا pdf رو داخل دیتابیس توضیح بدید
آیا بوسیله دستور insert هست؟
اگر امکان داره خواندن و نوشتن یه فایل در دیتابیس رو توضیح بدید
ممنون
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
سلام
زمانی کد زیر را می نویسم sqlconnaction را نمی شناسد در صورتی پایگاه داده ما در خود ای اس پی ساخته شده و جدول مورد نیاز هم به وجود آمده است.
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
برای ذخیره عکس در پایگاه داده از طریق ای اس پی باید چکار کنم؟ ممنون
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
ضمناً کد زیر را نوشتم فقط sqlconnaction ا نمی شناسد.SqlConnection connection = null;
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
دوست عزیز خوب کانکشن استرینگ اشتباه هستش که نمیشناسه وگرنه که دروغ نمیگه
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
نقل قول:
نوشته شده توسط
hakim22
در SQL server 2008 نسخه ی کامل گزینه ای وجود داره که شما می توانید فیلدهایی تعریف کنید که از قابلیت filesystem پشتیبانی می کنه. به معنی که به SQL می فهمانید که این فیلد قرار است اطلاعات با حجم بالا ذخیره کند. SQL تا 8 مگابایت برای هر فایل را کاملا بهینه می داند. برای حجم های بین 8 مگابایت تا 2 گیگابایت را هم بدون کد نویسی خاصی و فقط با تغییر اندازه فیلد پشتیابانی می کند. هم چنین قابلیت ذخیره فایلهای با حجم بیشتر هم دارد.
و بعد در جستجو از الگوریتم هایی استفاده می کند که سرعت بازخوانی بهینه باشد.
در صورتی که حجم فایلهای شما ممکنه از 2 گیگابایت تجاوز کنه به سراغ FileSystem بروید . در غیر این صورت varbinaryMax برای شما کفایت می کند ( پیشنهاد من این است که بجای مکس یک مقدار مشخصی قرار دهید)
تجربه ی من در مورد یک نرم افزار با همین شیوه کاملا موفق بود و عملا هیچ مشکل خاصی در باز خوانی وجود ندارد.
فقط این که ما محتوای فایلهای را در یک جدول مجزا نرمال می کنیم. یعنی سعی کنید جدولی که محتوای فایلها را در خودش نگاه می دارد . یک ستون ID برای خودش و یک ستون ID برای رکورد اصلی و یک ستون هم برای محتوایش داشته باشد.
جستجو همیشه از رکورد اصلی انجام می شود. و وقتی مطمئن شدید کاربر قصد نمایش محتوای یک فایل خاص درون یک رکورد اصلی را دارد آن یک مورد را از جدول محتوای فایل دانلود کرده و نمایش دهید.
در برنامه ی من فایلهایی با حجم 40 تا 50 مگابایت هم در زمان بین 3 تا 5 ثانیه در رایانه ی کاربر مشاهده میشد. (اون هم یک سیستم با رم یک گیگابایت و پردازنده 3400 Hz قدیمی)
دوست گرامی میشه لطفا یه نمونه مثال از این که میگید (("شما می توانید فیلدهایی تعریف کنید که از قابلیت filesystem پشتیبانی می کنه. به معنی که به SQL می فهمانید که این فیلد قرار است اطلاعات با حجم بالا ذخیره کند. SQL تا 8 مگابایت برای هر فایل را کاملا بهینه می داند. ")) برامون بزنید. ویه خورده بیشتر توضیح بدید.
با تشکر.
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
کسی نیست یه راهنمایی در خصوص این موضوعی که بالا گفتم بگه ؟
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
سلام
اصطلاح اصلی این تکنولوژی FileStream هست
در این نوع ذخیره سازی شما یعد از فعال سازی اون در سرور (و همچنین دیتابیس ) وقتی دارید یک جدول رو می سازید که قرار فایلی رو ذخیره کنه برای اطلاعات فایل یک فیلد از نوع (VarBinary(Max میسازید با این تفوات که FileStream رو برای اون فیلد خاص فعال می کنید
تو این حالت اطلاعات فیلد به جای دیتابیس در داخل تعداد فایل (که قبلا مسیر اون رو مشخص کردید) ذخیره میشه
برای ذخیره و بازیابی این نوع فیلد ها دو روش وجود داره
روش TSQL: این همون روش معمول کار با پایگاه داده ست و با دستور Insert و Update کار می کنه اما میشه گفت در مورد سرعت چیزی نصیب شما نمی کنه و تقریبا سرعتی برابر روش غیر از فایل استریم داره
روش Stream: این روش همون چیزیه که FileStream رو متمایز می کنه تو این حالت برای مثال برای Insert کردن ، شما یک تراکنش شروع می کنید رکورد رو ایجاد و فیلد مورد نظر رو NULL قرار میدید بعد در همون تراکنش یه درخواست Update خاص برای همون فیلد جدید میدید این بار سرور به شما یک هندل یا شیئ FileStream باز پس می ده حالا شما با روش هایی که برای نوشتن تو فایل (System.IO) استفاده می کنید می تونید داخل این فیلد بنویسید (با سرعتی بالا) . برای خوندن هم به همین صورته!
یه نتیجه کلی که می شه گرفت اینه که این رو سریعتره و بهینه تر اما طبق تجربه بهتون پیشنهاد می کنم اگه میشه با روش عادی کارتون رو راه بیوفته از همون استفاده کنید چون روش FileStream علاوه بر اینکه پیچیده تر هست دردسر های خاص خودش رو هم داره
در ضمن نصب اتوماتیک (بدون حضور شما) برای روش FileStream سخت تر و گاها برای یه کاربر غیر ممکن میشه
در هر دو روش هم حرف دوستمون رو تصدیق و توصیه می کنم:
نقل قول:
فقط این که ما محتوای فایلهای را در یک جدول مجزا نرمال می کنیم
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
می تونیم به فایل های pdf به عنوان یک موجودیت تازه نگاه کنیم و یک جدول مجزا هم براش در نظر بگیریم و به هر رکورد یک شماره بدیم و به عنوان کلید خارجی جدول کتاب های الکترونیکی معرفیش کنیم.
در ضمن اگه من بخوام فایل های pdf رو در کامپیوتر سرور قرار بدم چطور می تونم فایل pdf رو از کامپیوتر سرور به کامپیوتر کلاینت ببرم ؟؟
با تشکر.
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
بله میشه
دوست عزیز شما فایل رو در سرور بدون binary کردن می تونین یک آدرس قرار بدین در دیتابیس به فرض یک ایپی و فولدر قرار گرفتن فایل و بعد در سیستم کلاینت آدرس لود میشه و فایل خونده میشه
ولی چون شما دارین از win app استفاده میکنین بهتر هستش از قوانین win app استفاده کنین نه از قوانین web app .
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
نقل قول:
نوشته شده توسط
M.KH-SH
بله میشه
دوست عزیز شما فایل رو در سرور بدون binary کردن می تونین یک آدرس قرار بدین در دیتابیس به فرض یک ایپی و فولدر قرار گرفتن فایل و بعد در سیستم کلاینت آدرس لود میشه و فایل خونده میشه
ولی چون شما دارین از win app استفاده میکنین بهتر هستش از قوانین win app استفاده کنین نه از قوانین web app .
خوب پس میشه بدون ذخیره کردن خود فایل در دیتا بیس اون رو توی سیستم کلاینت هم فراخوانی کرد.
حالا که آدرس فایل (در سمت کلاینت) رو توی دیتابیس ذخیره کردیم چطور باید در سیستم کلاینت این آدرس که فایل PDF هم داخلشه رو آورد توی سیستم کلاینت ؟
با تشکر.
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
نقل قول:
خوب پس میشه بدون ذخیره کردن خود فایل در دیتا بیس اون رو توی سیستم کلاینت هم فراخوانی کرد.
حالا که آدرس فایل (در سمت کلاینت) رو توی دیتابیس ذخیره کردیم چطور باید در سیستم کلاینت این آدرس که فایل PDF هم داخلشه رو آورد توی سیستم کلاینت ؟
به شرطی که تو شبکه محلی شما ، پوشه ای که قراره فایل ها رو تو اون قرار بدید Share شده باشه امکان داره و گرنه نمیشه
روش Share کردن هم که امنیتش زیر صفره ولی یه مزیت خیلی بزرگ داره اونم دسترسی مستقیم به فایله و دیگه نیازی با دانلود شد توی سیستم کلاینت نداره
شاید هم بخواید از FTP استفاده کنید (مثلا FileZilla) که اینم دردسرش زیاده
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
تنها برای شبکه محلی نیست شما اگه بخواین با نصب iis به راحتی میتونین به فولدری که نیاز دارین دست رسی پیدا کنین حالا از هرجا توی دنیا شما اول باید ببینین نرم افزار رو برای یک شرکت ، یک ساختمان ، یک شهر یا یک کشور یا یک دنیا میخواین بعد به فکر بقیه چیزاش باشین.
در ایران سرعت اینترنت خیلی دست و پا گیره پس بهتره اگه برنامه تحت نت هستش جوری بنویسین که کاربر دچار مشکل نشه و نارحت بشه و دیگه استفاده نکنه.
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
نقل قول:
نوشته شده توسط
M.KH-SH
تنها برای شبکه محلی نیست شما اگه بخواین با نصب iis به راحتی میتونین به فولدری که نیاز دارین دست رسی پیدا کنین حالا از هرجا توی دنیا شما اول باید ببینین نرم افزار رو برای یک شرکت ، یک ساختمان ، یک شهر یا یک کشور یا یک دنیا میخواین بعد به فکر بقیه چیزاش باشین.
در ایران سرعت اینترنت خیلی دست و پا گیره پس بهتره اگه برنامه تحت نت هستش جوری بنویسین که کاربر دچار مشکل نشه و نارحت بشه و دیگه استفاده نکنه.
نقل قول:
نوشته شده توسط
فرید نجفلو
به شرطی که تو شبکه محلی شما ، پوشه ای که قراره فایل ها رو تو اون قرار بدید Share شده باشه امکان داره و گرنه نمیشه
روش Share کردن هم که امنیتش زیر صفره ولی یه مزیت خیلی بزرگ داره اونم دسترسی مستقیم به فایله و دیگه نیازی با دانلود شد توی سیستم کلاینت نداره
شاید هم بخواید از FTP استفاده کنید (مثلا FileZilla) که اینم دردسرش زیاده
برنامه برای کتابخانه دانشگاه هست. حداکثر هم برای 10 کلاینت وجود داره.
لطفا اگه امکانش هست هم یه توضیحی در خصوص share کردن و هم استفاده از IIS رو بدید. تا ببینم چطور میشه.
با تشکر از شما که دارید کمک می کنید.
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
اگر آدرس را در بانک ثبت کنید خیلی بهتر است.
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
اگه واسه دانشگاهه و خارج از اون نیست و احتمالا دسترسی به PDF ها هم مشکلی نداره
از Sharing استفاده کنید
به این صورت که شما یه پوشه رو Share می کنید (راست کلیک - Prperties و برگه Share)
وقتی دارید فایل ها رو ذخیره می کنید خود فایل رو تو اون پوشه یا زیر شخه هاش ذخیره (کپی) می کنید
تو دیتابیس هم مسیر اون فایل رو البته به فرمت شبکه ای باشه یعنی آدر با آی پی یا اسم سیستم سرور شرع میشه
حالا تو برنامه کلاینت آدرس رو از دیتابیس می گیرد و اون رو نمایش و یا برای کاربر یه نسخه می دید
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
خوب اگه واسه دانشگاه هستش که بیخیال iis فقط بدی share اینه که دیگه نیازی به برنامه شما نیست ;)
کاربر با یکم ور رفتن به بخش my network سیستم به راحتی کل پوشه شما رو پیدا میکنه و اگه هم شما جواز edit داده باشی یکی که مشکل هم داشته باشه با یک shift + delete کل برنامه رو میریزه به هم
پس کلا بیخیال share باش چون آب تو هاون کوبیدن میشه کارت ولی برای این من پیشنهادم اینه از filestream استفاده کنی هم زیبا تر میشه هم امنیت میره بالا ولی دیگه خیلی بخوای کار رو در آینده ببری بالاتر از web service ها استفاده کن و یک وب سرویس طراحی کن.
تا جایی که میتونی share رو بیخیال باش که خیلی راحت میشه هک کرد سیستم رو و دیتا رو پروند.
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
نقل قول:
نوشته شده توسط
M.KH-SH
خوب اگه واسه دانشگاه هستش که بیخیال iis فقط بدی share اینه که دیگه نیازی به برنامه شما نیست ;)
کاربر با یکم ور رفتن به بخش my network سیستم به راحتی کل پوشه شما رو پیدا میکنه و اگه هم شما جواز edit داده باشی یکی که مشکل هم داشته باشه با یک shift + delete کل برنامه رو میریزه به هم
پس کلا بیخیال share باش چون آب تو هاون کوبیدن میشه کارت ولی برای این من پیشنهادم اینه از filestream استفاده کنی هم زیبا تر میشه هم امنیت میره بالا ولی دیگه خیلی بخوای کار رو در آینده ببری بالاتر از web service ها استفاده کن و یک وب سرویس طراحی کن.
تا جایی که میتونی share رو بیخیال باش که خیلی راحت میشه هک کرد سیستم رو و دیتا رو پروند.
توی این قسمت امنیت رو بیخیال:چشمک:
هم بقول شما می تونم جواز edit رو بردارم.
هم اینکه سیستم های خود دانشگاه برنامه Freeze روشون نصبه و دسترسی به قسمت های سیستم رو میشه کنترل کرد.:لبخند:
باز ممنون.
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
دوست عزیز امنیت خیلی مهم هستش اگه که مهم نیست پس یک iis بریز و با استفاده از find file به راحتی با استفاده از asp فایل ها رو نمایش بده و فایل asp رو هم بکگراند سیستم های دیگه بزار.
کدوم دانشگاهی یک سر بیام :):قهقهه:
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
نقل قول:
نوشته شده توسط
M.KH-SH
دوست عزیز امنیت خیلی مهم هستش اگه که مهم نیست پس یک iis بریز و با استفاده از find file به راحتی با استفاده از asp فایل ها رو نمایش بده و فایل asp رو هم بکگراند سیستم های دیگه بزار.
کدوم دانشگاهی یک سر بیام :):قهقهه:
به احتمال زیاد و به استنباط من ، اینکه میگن امنیت مهم نیست منظورشون فقط در این مورده
اگه شما بخواید یک سری کتاب الکترونیک رو تو دانشکاه رو سیستم های رایانه ای و شبکه داخلی اون بیسن دانشجویان به اشتراک بذارید مهم نیست اون ها از چه طریقی به اون فایل ها دسترسی دارن فقط ممکنه مجوز حذف و ویرایش نداشته باشن
و حالا ایشون می خوان برای این کتاب های دیجیتالی یه سیستمی هم طراحی کنن (مثلا بخشی از یه برنامه بزرگتر دیگه هست)
اگه یکم فکر کنیم این که دانشجو فایل رو باسیستم ما بگیره یا از MyComputer بره و خودش یه دور تو فایل بزنه مسئله ای نداره چون هدف دادن کتاب به دانشجو هست و کتاب ، فیزیکی هم نیست که بگیم میزنه زیر بغلش میبره
شما هم که روی IIS یا WCF و ... تاکید دارید ، همون طور که گفتم اون ها یک مشکل اساسی دارن اونم عدم دسترسی مستقیمه
فرض کنید دانشجو یه کتاب رو دیده می خواد قبل از زدن اون توی فلش باز کن و ببینه همون چیزی هست که می خواد یا نه . تو روش هایی که شما گفتید باید اول کل فایل بیاد رو سیستم کلاین (که ممکنه یه کتاب حجیم باشه) بعد دانشجو بتونه بازش کنه! اما تو Sharing نیازی به این دانلود نیست و میشه از همون مسیر بازش کرد
من این نوع دسترسی ها را با WCF,Web Service ,FTP تست کردم و همشون همین مشکل رو دارن
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
نقل قول:
شما هم که روی IIS یا WCF و ... تاکید دارید ، همون طور که گفتم اون ها یک مشکل اساسی دارن اونم عدم دسترسی مستقیمه
فرض کنید دانشجو یه کتاب رو دیده می خواد قبل از زدن اون توی فلش باز کن و ببینه همون چیزی هست که می خواد یا نه . تو روش هایی که شما گفتید باید اول کل فایل بیاد رو سیستم کلاین (که ممکنه یه کتاب حجیم باشه) بعد دانشجو بتونه بازش کنه! اما تو Sharing نیازی به این دانلود نیست و میشه از همون مسیر بازش کرد
من این نوع دسترسی ها را با WCF,Web Service ,FTP تست کردم و همشون همین مشکل رو دارن
مشکل من اینه که آدم چرا باید کار بیهوده انجام بده وقتی میخواد از فولدر شیر استفاده کنه دیگه چرا میخواد یک نرم افزار براش بنویسه؟
این سیستم رو به فرض ما بگیم بدون اشکال (خودم به شخصه این سیستم رو با چند نرم افزار از کار میندازم) ولی بازم نرم افزار نویسی برای این کار بیهوده هستش به هر حال یک بار نیاز به دانلود کردن نرم افزار روی فلش داره پس بهتره که تنها یک بار دانلود کنه و اونم روی فلش دانشجو یعنی به صورت مستقیم زمانی که pdf رو پیدا کرد دانشجو روی دکمه دانلود کلید کنه و برنامه بیاد پورت های usb رو چک کنه و پورت مورد نظر رو به دانشجو نشون بده (داریو فلش) بعد از نمایش دادن برنامه بیاد یک فولدر با اسم برنامه بسازه و فایل رو در اون دانلود کنه.
خوب از نظر بصری میگن این یک نرم افزار ولی فایل شیر رو هم یک کودک اول دبستانی هم بلده (به چشم دیدم دارم میگم).
اون ایده من برای این نرم افزار هستش که بعده ها هم میتونی روش مانور بدی و یک کتابخانه مجازی بزرگ درکل سیستم دانشگاه راه اندازی کنی
web service ها بهترین گزینه ها برای نوشتن برنامه های تحت شبکه هستن چون دیگه نیاز به نصب sql نیست روی سیستم ها با هر خطا بانک نیازی نیست کلاینت ها رو دچار مشکل کنی به راحتی روی یک سیستم کار رو انجام میدی ، هیچ مشکلی هم نیست بهتره که از شیرینگ استفاده نکنی دوست من.
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
نقل قول:
نوشته شده توسط
فرید نجفلو
به احتمال زیاد و به استنباط من ، اینکه میگن امنیت مهم نیست منظورشون فقط در این مورده
اگه شما بخواید یک سری کتاب الکترونیک رو تو دانشکاه رو سیستم های رایانه ای و شبکه داخلی اون بیسن دانشجویان به اشتراک بذارید مهم نیست اون ها از چه طریقی به اون فایل ها دسترسی دارن فقط ممکنه مجوز حذف و ویرایش نداشته باشن
و حالا ایشون می خوان برای این کتاب های دیجیتالی یه سیستمی هم طراحی کنن (مثلا بخشی از یه برنامه بزرگتر دیگه هست)
اگه یکم فکر کنیم این که دانشجو فایل رو باسیستم ما بگیره یا از MyComputer بره و خودش یه دور تو فایل بزنه مسئله ای نداره چون هدف دادن کتاب به دانشجو هست و کتاب ، فیزیکی هم نیست که بگیم میزنه زیر بغلش میبره
نقل قول:
نوشته شده توسط
M.KH-SH
مشکل من اینه که آدم چرا باید کار بیهوده انجام بده وقتی میخواد از فولدر شیر استفاده کنه دیگه چرا میخواد یک نرم افزار براش بنویسه؟
این سیستم رو به فرض ما بگیم بدون اشکال (خودم به شخصه این سیستم رو با چند نرم افزار از کار میندازم) ولی بازم نرم افزار نویسی برای این کار بیهوده هستش به هر حال یک بار نیاز به دانلود کردن نرم افزار روی فلش داره پس بهتره که تنها یک بار دانلود کنه و اونم روی فلش دانشجو یعنی به صورت مستقیم زمانی که pdf رو پیدا کرد دانشجو روی دکمه دانلود کلید کنه و برنامه بیاد پورت های usb رو چک کنه و پورت مورد نظر رو به دانشجو نشون بده (داریو فلش) بعد از نمایش دادن برنامه بیاد یک فولدر با اسم برنامه بسازه و فایل رو در اون دانلود کنه.
خوب از نظر بصری میگن این یک نرم افزار ولی فایل شیر رو هم یک کودک اول دبستانی هم بلده (به چشم دیدم دارم میگم).
اون ایده من برای این نرم افزار هستش که بعده ها هم میتونی روش مانور بدی و یک کتابخانه مجازی بزرگ درکل سیستم دانشگاه راه اندازی کنی
web service ها بهترین گزینه ها برای نوشتن برنامه های تحت شبکه هستن چون دیگه نیاز به نصب sql نیست روی سیستم ها با هر خطا بانک نیازی نیست کلاینت ها رو دچار مشکل کنی به راحتی روی یک سیستم کار رو انجام میدی ، هیچ مشکلی هم نیست بهتره که از شیرینگ استفاده نکنی دوست من.
دوست عزیز : M.KH-SH همونجور که آقای نجفلو گفتند این یه قسمت خیلی کوچیک از برنامه ای کتابخانه هست که من دارم می نویسم.
و اگه شما هم امکانش هست یه پروژه به عنوان Sample بذار ببینیم این web service که میگید چطوره؟:چشمک:
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
نقل قول:
دوست عزیز :
M.KH-SH همونجور که آقای نجفلو گفتند این یه قسمت خیلی کوچیک از برنامه ای کتابخانه هست که من دارم می نویسم.
و اگه شما هم امکانش هست یه پروژه به عنوان Sample بذار ببینیم این web service که میگید چطوره؟
به هر حال از من گفتن بود دوست عزیزم.
برای وب سرویس هم شما وارد visual studio شو و در قسمت web بر روی web service کلیک کن و یک پروژه بساز
شما شروع کن شئوالی بود درخدمت هستم.
-
نقل قول: راهنمایی در خصوص ذخیره فایل در بانک SQL
نقل قول:
نوشته شده توسط
فرید نجفلو
سلام
اصطلاح اصلی این تکنولوژی FileStream هست
در این نوع ذخیره سازی شما یعد از فعال سازی اون در سرور (و همچنین دیتابیس ) وقتی دارید یک جدول رو می سازید که قرار فایلی رو ذخیره کنه برای اطلاعات فایل یک فیلد از نوع (VarBinary(Max میسازید با این تفوات که FileStream رو برای اون فیلد خاص فعال می کنید
تو این حالت اطلاعات فیلد به جای دیتابیس در داخل تعداد فایل (که قبلا مسیر اون رو مشخص کردید) ذخیره میشه
برای ذخیره و بازیابی این نوع فیلد ها دو روش وجود داره
روش TSQL: این همون روش معمول کار با پایگاه داده ست و با دستور Insert و Update کار می کنه اما میشه گفت در مورد سرعت چیزی نصیب شما نمی کنه و تقریبا سرعتی برابر روش غیر از فایل استریم داره
روش Stream: این روش همون چیزیه که FileStream رو متمایز می کنه تو این حالت برای مثال برای Insert کردن ، شما یک تراکنش شروع می کنید رکورد رو ایجاد و فیلد مورد نظر رو NULL قرار میدید بعد در همون تراکنش یه درخواست Update خاص برای همون فیلد جدید میدید این بار سرور به شما یک هندل یا شیئ FileStream باز پس می ده حالا شما با روش هایی که برای نوشتن تو فایل (System.IO) استفاده می کنید می تونید داخل این فیلد بنویسید (با سرعتی بالا) . برای خوندن هم به همین صورته!
یه نتیجه کلی که می شه گرفت اینه که این رو سریعتره و بهینه تر اما طبق تجربه بهتون پیشنهاد می کنم اگه میشه با روش عادی کارتون رو راه بیوفته از همون استفاده کنید چون روش FileStream علاوه بر اینکه پیچیده تر هست دردسر های خاص خودش رو هم داره
در ضمن نصب اتوماتیک (بدون حضور شما) برای روش FileStream سخت تر و گاها برای یه کاربر غیر ممکن میشه
در هر دو روش هم حرف دوستمون رو تصدیق و توصیه می کنم:
سلام دوست عزیز
ممنون از توضیحاتتون
به هر سایتی مراجعه کردم تقریبا به همین توضیحات برخوردم. اگه توضیحات همراه با مثال باشه خیلی بهتره.
من نیاز به ذخیره حدود 2GB دارم که با ید از روش fileStream استفاده کنم. تنظیماتش رو انجام دادم. می خواستم بپرسم نیاز هست که کدنویسی هم تغییر پیدا کنه یا نه؟