View Full Version : ذخیره داده متنی بدون محدودیت
gigil_Question
یک شنبه 07 شهریور 1389, 13:13 عصر
سلام
برای صفحاتی که مدیر یه سایت توی کنترل پنل طراحی میکنه و سورس اون توی بانک ذخیره میشه چه نوع داده ای مناسبه؟
با توجه به اینکه طول کد صفحات محدودیت نداره
behrouzlo
یک شنبه 07 شهریور 1389, 13:28 عصر
می تونید از varchar یا nvarchar استفاده کنید و طول آنها را MAX در نظر بگیرید
varchar(Max)
gigil_Question
یک شنبه 07 شهریور 1389, 14:03 عصر
وقتی طول رو max قرار بدیم هیچ محدودیتی نداره ؟!!
این کد رو نگاه کنید :
declare @v nvarchar(MAX)
select @v=tMAX from test where t500=1
print @v
فقط 4000 کاراکتر چاپ میکنه
در صورتی که این کد:
selectlen(tMAX)from test where t500=1
میگه که 47907 کاراکتر وجود داره
چرا ؟
این کدهارو توی management studio 2005 تست کردم
behrouzlo
یک شنبه 07 شهریور 1389, 15:04 عصر
این مشکل دستور Print هست شما اگر با Select تست کنید مشاهده می کنید که کل متن را می ده ولی با Print فکر کنم همین 4000 تا را چاپ کن
AminSobati
یک شنبه 07 شهریور 1389, 21:14 عصر
سلام دوست عزیزم،
به غیر از محدودیت Print، دقت کنید عبارتی که داخل متغیر قرار میدین مشخصا باید nvarchar max باشه:
declare @x nvarchar(max), @y nvarchar(max)
set @x=REPLICATE('Hi',8000)
set @y=REPLICATE(cast('Hi' as nvarchar(max)),8000)
select LEN(@x),LEN(@y)
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.