نحوه ذخیره محتویات RichTextBox در دیتابیس SQL

alias67

عضو جدید
سلام
ما تو سی شارپ ابزار RichTextBox رو داریم که میشه هم رشته و هم عکس توش قرار داد.
حالا سوال من اینه،
چجوری میشه محتویات این RichTextBox، که شامل عکس و رشته هست رو تو دیتابیس SQL ذخیره کرد؟

من درباره متغیر sql_variant تو SQL شنیدم که میشه با استفاده از اون هر نوع متغیر از نوع رشته یا عدد یا عکس
رو تو دیتابیس ذخیره کرد،
اما نمیدونم که میشه با استفاده از این متغیر ، محتویات RichTextBox، که شامل عکس و رشته هست رو تو دیتابیس SQL ذخیره کرد؟

اگه ممکنه یه توضیحی در این باره بدین.​
 

marzieh.ahmad

عضو جدید
سلام
تا اونجایی که من می دونم اگر در richtextbox عکس نباشه می تونید به صورت فیلدی از نوع nvarchar(maxدر sql ذخیره کنید ولی عکس رو معمولا در فیلدی از نوع varbinary ذخیره می کنند.
 

alias67

عضو جدید
سلام
من بلاخره بعد از چند روز جستجو تو سایتای خارجی راه حل رو پیدا کردم :
string s = RichTextBox1.Rtf;
RichTextBox2.Rtf = s;
که خیلی راحت کل اطلاعات RichTextBox میگیره و توی یه رشته قرار میده.
در واقع حالا کافیه یه متغیر تو دیتابیس پیدا کنم که اون رو ذخیره اش کنم.
من دارم روی یه پروژه آزمون گیر تحت شبکه کار میکنم و از اونجایی که میخواستم برنامه تقریبا با واقعیت جور در بیاد ، سوالای که توش طراحی میشه هم باید توش متن باشه هم عکس و با این روش عکس هر کجای سوال میتونه قرار بگیره و دردسرهایی که پست قبلی توضیح داده رو نداره.
اگه کسی مایل به همکاری تو این برنامه هست کافیه برام پیام بزاره.
GoodLuck
 

negin17h

مدیر تالارهای مهندسی کامپیوتر و رباتیکمتخصص #C
مدیر تالار
سلام
با اینکه بحث مربوط به زمان گذشته است اما برای داده هایی که از ادیتور لازمه ذخیره بشه در سمت بانک از نوع داده ntext استفاده میشه و دقیقاً همانگونه که دوستمون فرمودن باید به مشخصه rtf انتساب داده بشه :gol:
 

iaidin

عضو جدید
سلام
من بلاخره بعد از چند روز جستجو تو سایتای خارجی راه حل رو پیدا کردم :
string s = RichTextBox1.Rtf;
RichTextBox2.Rtf = s;
که خیلی راحت کل اطلاعات RichTextBox میگیره و توی یه رشته قرار میده.
در واقع حالا کافیه یه متغیر تو دیتابیس پیدا کنم که اون رو ذخیره اش کنم.
من دارم روی یه پروژه آزمون گیر تحت شبکه کار میکنم و از اونجایی که میخواستم برنامه تقریبا با واقعیت جور در بیاد ، سوالای که توش طراحی میشه هم باید توش متن باشه هم عکس و با این روش عکس هر کجای سوال میتونه قرار بگیره و دردسرهایی که پست قبلی توضیح داده رو نداره.
اگه کسی مایل به همکاری تو این برنامه هست کافیه برام پیام بزاره.
GoodLuck

از یک فیلد با نوع (nvarchar(max استفاده کنید.

سلام
با اینکه بحث مربوط به زمان گذشته است اما برای داده هایی که از ادیتور لازمه ذخیره بشه در سمت بانک از نوع داده ntext استفاده میشه و دقیقاً همانگونه که دوستمون فرمودن باید به مشخصه rtf انتساب داده بشه :gol:
بله ولی ایراد این روش اینه که نمیشه به راحتی در بانک جستجو در بانک انجام داد. زمانی که شما متن را با فرمت rtf در بانک ذخیره میکنید دیگر نمیشه به سادگی توی بانک به دنبال واژه ای خاص جستجو کرد.
 

negin17h

مدیر تالارهای مهندسی کامپیوتر و رباتیکمتخصص #C
مدیر تالار
بله ولی ایراد این روش اینه که نمیشه به راحتی در بانک جستجو در بانک انجام داد. زمانی که شما متن را با فرمت rtf در بانک ذخیره میکنید دیگر نمیشه به سادگی توی بانک به دنبال واژه ای خاص جستجو کرد.

حرف شما کاملاً درست هست و عملگری چون like بر روی داده ntext جواب نمیده البته راه هایی برای تبدیل و گرفتن جواب وجود داره :gol:
 

iaidin

عضو جدید
حرف شما کاملاً درست هست و عملگری چون like بر روی داده ntext جواب نمیده البته راه هایی برای تبدیل و گرفتن جواب وجود داره :gol:
مرسی
علاوه بر ntext به دلیل اینکه متن در حقیقت فرمت rtf هست کلا متن دیگه ای را ما داریم.
برای تبدیل من قبلا از فایل استفاده می کردم که در حقیقت استفاده از قابلیت های کانورت ویندوز هست.
ممنون میشم به جز روشی که عرض کردم اگر راه دیگه ای مد نظرتون هست بفرمایید.
 

negin17h

مدیر تالارهای مهندسی کامپیوتر و رباتیکمتخصص #C
مدیر تالار
مرسی
علاوه بر ntext به دلیل اینکه متن در حقیقت فرمت rtf هست کلا متن دیگه ای را ما داریم.
برای تبدیل من قبلا از فایل استفاده می کردم که در حقیقت استفاده از قابلیت های کانورت ویندوز هست.
ممنون میشم به جز روشی که عرض کردم اگر راه دیگه ای مد نظرتون هست بفرمایید.

منظورم کانورت خاصی نبود. شما داده ntext را در مواقعی که میخواهید جستجو کنید CAST کنید و بعد از like استفاده کنید جواب میده :gol:
 

Similar threads

بالا