رفتن به مطلب
  • 0

سوال در مورد ساخت جداول دیتابیس


AllRich

سوال

سلام به همه دوستان عزیزم

 

من میخوام یک کتاب بسازم که این کتاب در هر بخش چندین متن داره و چندین عکس به نظر شما باید دیتا بیس رو چجوری طراحی کنم که به مشکل بر نخورم؟

 

وقتی ما چند خط متن داریم و یک یا چند عکس معلوم و یا اول میاد یا اخر راحته یک جدول برای متن ها یکی یا چنتا هم  واسه عکس .

 

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

 

ممنونم.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

19 پاسخ به این سوال تاکنون داده شده است

ارسال های توصیه شده

Sub ImgToText(sv As ScrollView,str As String)
	Dim lbl As Label
	Dim img As ImageView
	Dim s,s2 As String
	Dim p As Panel
	Dim bmp As Bitmap
	Dim su As StringUtils
	p = sv.Panel
	p.Height = 0

	Do While str.Length > 0

	If str.StartsWith("<img>") Then
	s = "img"
	Else
	s = "lbl"
	End If

	Select s

	Case "img"
	s2 = str.SubString2(str.IndexOf("<img>") + 5,str.IndexOf("</img>"))
	str = str.SubString(str.IndexOf("</img>") + 6)
	bmp.Initialize(File.DirAssets,s2)
	img.Initialize("img")
	img.Bitmap = bmp 
	p.AddView(img,0,p.Height,bmp.Width,bmp.Height)
'	If img.Width > (sv.Width - sv.Left) Then'
	img.Height = img.Height * (sv.Width - sv.Left)
	img.Height = img.Height / img.Width
	img.Width = sv.Width - sv.Left
'	End If'
	img.Gravity = Gravity.FILL
	p.Height = p.Height + img.Height
	Case "lbl"
	If str.Contains("<img>") Then
	s2 = str.SubString2(0,str.IndexOf("<img>"))
	str = str.SubString(str.IndexOf("<img>"))
	str = str.SubString(str.IndexOf("<img>"))
	Else
	s2 = str
	str = str.SubString(str.Length)
	s = ""
	End If
	lbl.Initialize("lbl")
	lbl.Text = s2
	p.AddView(lbl,sv.Left,p.Height,sv.Width - sv.Left,0)

	'Add Labels Setting'
 
	lbl.Height = su.MeasureMultilineTextHeight(lbl,s2)
	p.Height = p.Height + lbl.Height
	End Select
	Loop
End Sub

من یه تغییراتی هم داده بودمش فکر کنم این با تغییراتش باشه اگه هم مشکل داشت خودتون درست کنید ولی فکر نکنم مشکلی داشته باشه

به دردتون میخوره همونطور که گفتم متن و عکس رو بزارید خودش میچینه

فقط بهش یه اسکرول ویو و یه متن باید بدید همین

لینک ارسال
به اشتراک گذاری در سایت های دیگر

گفتم که یسری متن داره لابه لای متن ها یسری عکس . میخوام بدونم چطور جداول دیتابیس رو طراحی کنم که ترتیب متن ها و عکس ها به هم نخوره.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

میخواین متن و عکس با هم باشند؟

متن که فیلدش text باید باشه و عکس هم که فیلدش blob باید بزاری .

لینک ارسال
به اشتراک گذاری در سایت های دیگر

این جوری که شما میگید درسته ولی باید واسه هر مطلب یک دیتا بیس جدا درست کنم میخوام . یک دیتا بیس باشه Title داشته باشه (برای نمایش در قسمت منو ) مثلا مطلب 1 روش کلیک شد متنش با عکس هاش بیاد . و عکس ها سر جا خودش باشه متن ها هم سر جای خودش .

لینک ارسال
به اشتراک گذاری در سایت های دیگر

هر مطلب یه دیتا بیس نمیخواد . شما یه دیتابیس کلی بساز بعد توش جدول های مختلف قرار بده .

لینک ارسال
به اشتراک گذاری در سایت های دیگر

میشه یک عکس از قسمت Design دیتابیسی که میگید برام بزارید الان به نظر من این جواب نمیده

لینک ارسال
به اشتراک گذاری در سایت های دیگر

میشه یک عکس از قسمت Design دیتابیسی که میگید برام بزارید الان به نظر من این جواب نمیده

سلام .یه دیتا بیس مال یه کتاب . نمیدونم کدوم عزیز زحمتش رو کشیده . دیتابیس رو داشتم باز کردم عکس گرفتم برات. ایشالا که صاحبش راضی باشه

post-4426-0-68919700-1452669103_thumb.jpg

لینک ارسال
به اشتراک گذاری در سایت های دیگر

یه کار دیگه هم میشه کرد اونم اینه که بین متن با یه الگوریتمی اسم عکس رو بزارید و عکس رو با اسمش فراخوانی کنید

مثلا متن رو اینطور بنویسید

text<img>image1.png</img>text2<img>image2.png</img>text3

بعد یه کدی بنویسید که هرجا <img> بود تا </img> متنش رو بگیره و توی ایمیج ویو نشون بده جاهایی که نیست رو با لیبل اینطور میتونید توی یه فیلد عکس و متن رو بزارید

@@parvin,

راه ایشون هم درسته شما باید توی یک تیبل تو هر فیلد یه متن و عکس بزارید و براشون یه شناسه در نظر بگیرید مثل 0 و 1 بعد از هم تفکیکشون کنید

در کل کار زیاد سختی نیست

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام .یه دیتا بیس مال یه کتاب . نمیدونم کدوم عزیز زحمتش رو کشیده . دیتابیس رو داشتم باز کردم عکس گرفتم برات. ایشالا که صاحبش راضی باشه

 

خیلی ممنونم . ولی این فقط متنه  چیزی که من میخوام

 

برای مثال :

وقتی ما چند خط متن داریم و یک یا چند عکس معلوم و یا اول میاد یا اخر راحته یک جدول برای متن ها یکی یا چنتا هم  واسه عکس .

 

 

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

لینک ارسال
به اشتراک گذاری در سایت های دیگر

یه کار دیگه هم میشه کرد اونم اینه که بین متن با یه الگوریتمی اسم عکس رو بزارید و عکس رو با اسمش فراخوانی کنید

مثلا متن رو اینطور بنویسید

text<img>image1.png</img>text2<img>image2.png</img>text3

بعد یه کدی بنویسید که هرجا <img> بود تا </img> متنش رو بگیره و توی ایمیج ویو نشون بده جاهایی که نیست رو با لیبل اینطور میتونید توی یه فیلد عکس و متن رو بزارید

@@parvin,

راه ایشون هم درسته شما باید توی یک تیبل تو هر فیلد یه متن و عکس بزارید و براشون یه شناسه در نظر بگیرید مثل 0 و 1 بعد از هم تفکیکشون کنید

در کل کار زیاد سختی نیست

 

میشه مثالی از کدش برام بزنید؟

با Regex میشه انجامش داد ؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

یه فیلد به جدولت اضافه کن با هر اسمی. هر جا قراره متن باشه قدارش رو بزار 1 و هر جا قراره عکس باشه مقدار اون فیلد رو بده 0 . بعد با یه دستور if بهش بفهمون کجا متن بیاره و کجا عکس

لینک ارسال
به اشتراک گذاری در سایت های دیگر

خیلی ممنونم . ولی این فقط متنه  چیزی که من میخوام

 

برای مثال :

وقتی ما چند خط متن داریم و یک یا چند عکس معلوم و یا اول میاد یا اخر راحته یک جدول برای متن ها یکی یا چنتا هم  واسه عکس .

 

 

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

دوست عزیز دیتابیس جدا نمیخواد شما میتونید از هردو راه استفاده کنید در روش @@parvin,  یه فیلد میزارید از نوع intger بعد برای عکس ها 1 و متن ها 0 میزارید اون فیلد رو بعد در کد نویسی در حلقه for که کل مطالب تیبل رو میخونید چک کنید اگه اون فیلد برابر صفر بود لیبل بزار و توش نشون بده و اگه یک بود ایمیج ویو بزاره و عکس رو نمایش بده

لینک ارسال
به اشتراک گذاری در سایت های دیگر

من که یک مطلب ندارم چندین مطلبه . من گفتم واسه هر مطلب که تشکیل شده از عکس و متن یک دیتابیس میخواد . روش شما واسه یک مطلب جواب میده و من هم درست کردم و جواب گرفتم حالا واسه 50 مطلب چی ؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

میشه مثالی از کدش برام بزنید؟

با Regex میشه انجامش داد ؟

بله میشه با regex انجام داد

قبلا تابع این رو نوشته بودم پیدا کنم براتون میفرستم

لینک ارسال
به اشتراک گذاری در سایت های دیگر

من که یک مطلب ندارم چندین مطلبه . من گفتم واسه هر مطلب که تشکیل شده از عکس و متن یک دیتابیس میخواد . روش شما واسه یک مطلب جواب میده و من هم درست کردم و جواب گرفتم حالا واسه 50 مطلب چی ؟

بازم با هردو روش میشه

میتونید یه ایدی برای مطالب در نظر بگیرید مثلا اگه مطلب اول بود اونایی که ایدیشون برابر یک هست رو نشون بده اگه دوم ایدی برابر دو و....

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بازم با هردو روش میشه

میتونید یه ایدی برای مطالب در نظر بگیرید مثلا اگه مطلب اول بود اونایی که ایدیشون برابر یک هست رو نشون بده اگه دوم ایدی برابر دو و....

 

در این صورت منو به هم میریزه . من در منو میخوام مثلا فیلد Title رو برگردونم . وقتی هر مطلب یک Title داشته باشه میشه  . ولی در این صورت هر مطلب چندین Title داره ولو خالی

 

اون روش Regex اگر جواب بده کار آمده

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در این صورت منو به هم میریزه . من در منو میخوام مثلا فیلد Title رو برگردونم . وقتی هر مطلب یک Title داشته باشه میشه  . ولی در این صورت هر مطلب چندین Title داره ولو خالی

 

اون روش Regex اگر جواب بده کار آمده

برای اینم ره حل هست

یکیش اینه که به همشون title بدی یه راه دیگه هم اینه که عنوان هارو یه طور دیگه بهش بدی مثلا بیای یه تیبل برای عنوان ها یا دوسه تا راه دیگه

لینک ارسال
به اشتراک گذاری در سایت های دیگر

یا میشه یه فیلد درست کنی به اسم مثلا تایتل .بعد مقدار این فیلد برای تاتیتل های مختلف فرق کنه . مثلا تایتل اول مقدار فیلد تایتل 101 باشه و تایتل دوم مقدار فیلد 102 . اینجوری میشه کتابی که میخوای رو هم بنویسی.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

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

مهمان
این موضوع برای عدم ارسال قفل گردیده است.
  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...