ویژگی Attributes ADO

تعریف و استفاده

ویژگی Attributes می‌تواند یک مقدار Long تنظیم یا بازگرداند که می‌تواند یک ویژگی یا چندین ویژگی از شیء را نشان دهد.

نکته:وقتی که چندین ویژگی را تنظیم می‌کنید، می‌توانید مقدارهای مناسب را جمع کنید. اگر مقدار ویژگی شامل مقدارهای غیرقابل تطبیق باشد، خطا رخ می‌دهد.

شیء توضیح ویژگی Attributes
Connection ویژگی Attributes بر روی شیء Connection دسترسی خواندنی و نوشتنی دارد. و می‌تواند یک یا چند از آن‌ها باشد XactAttributeEnum جمع ارزش‌ها. مقدار پیش‌فرض صفر (0) است.
Parameter ویژگی Attributes بر روی شیء Parameter دسترسی خواندنی و نوشتنی دارد. و می‌تواند هر یک یا چند از آن‌ها باشد ParameterAttributesEnum جمع ارزش‌ها. مقدار پیش‌فرض adParamSigned است.
Field وقتی که ویژگی Attributes برای ایجاد Recordset استفاده می‌شود، دارای دسترسی خواندنی و نوشتنی است، اما وقتی که یک Recordset موجود را باز می‌کنید، فقط خواندنی است. ویژگی Attributes می‌تواند یک یا چند باشد FieldAttributeEnum جمع ارزش‌ها.
Property برای شیء Property، ویژگی Attributes فقط خواندنی است. و می‌تواند هر یک یا چند از آن‌ها باشد PropertyAttributesEnum جمع ارزش‌ها.

نحوه نوشتن

object.Attributes

مثال

برای شیء Connection:

<%
conn=Server.CreateObject("ADODB.Connection") تنظیم شود
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
response.write(conn.Attributes)
conn.close
%>

برای Field object:

<%
conn=Server.CreateObject("ADODB.Connection") تنظیم شود
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
rs = Server.CreateObject("ADODB.Recordset") تنظیم شود
rs.open "Select * from orders", conn
f=Server.CreateObject("ADODB.Field") تنظیم شود
نمایش ویژگی‌های field جدول Orders
برای هر f در rs.Fields
  response.write("Attr:" & f.Attributes & "<br />")
  response.write("Name:" & f.Name & "<br />")
  response.write("Value:" & f.Value & "<br />")
Next
rs.Close
conn.close
rs=nothing تنظیم شود
conn=nothing تنظیم شود
%>

برای Property object:

<%
conn=Server.CreateObject("ADODB.Connection") تنظیم شود
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
rs = Server.CreateObject("ADODB.Recordset") تنظیم شود
rs.open "Select * from orders", conn
prop=Server.CreateObject("ADODB.Property") تنظیم شود
نمایش ویژگی‌های نمونه Property جدول Orders
برای هر prop در rs.Properties
  response.write("Attr:" & prop.Attributes & "<br />")
  response.write("Name:" & prop.Name & "<br />")
  response.write("Value:" & prop.Value & "<br />")
next
rs.close
conn.close
rs=nothing تنظیم شود
conn=nothing تنظیم شود
%>

مقدار XactAttributeEnum

ثابت مقدار توضیح
adXactAbortRetaining 262144 وقتی RollbackTrans فراخوانی می‌شود، یک تراکنش جدید به صورت خودکار شروع می‌شود.
adXactCommitRetaining 131072 در هنگام فراخوانی CommitTrans، یک تراکنش جدید به صورت خودکار شروع می‌شود.

ارزش‌های ParameterAttributesEnum

ثابت مقدار توضیح
adParamSigned 16 این پارامتر مقدارهای مجاز به علامت دار را می‌پذیرد.
adParamNullable 64 این پارامتر مقدار Null را می‌پذیرد.
adParamLong 128 این پارامتر داده‌های دودویی طولانی را می‌پذیرد.

ارزش‌های FieldAttributeEnum

ثابت مقدار توضیح
adFldCacheDeferred 0x1000 نشان می‌دهد که ارائه‌دهنده مقدار فیلد را در حافظه پشتیبان دارد و نشان می‌دهد که می‌توان از مقدار پشتیبان خواند.
adFldFixed 0x10 نشان می‌دهد که این فیلد شامل داده‌های طول ثابت است.
adFldIsChapter 0x2000 نشان می‌دهد که این فیلد شامل یک مجموعه زیرمجموعه است که مقدار خاصی از مجموعه سطرهای پدر را مشخص می‌کند. معمولاً فیلد‌های زیرمجموعه با داده‌های شکل داده یا فیلترها استفاده می‌شوند.
adFldIsCollection 0x40000 این فیلد مشخص می‌کند که منابعی که توسط رکورد نشان داده می‌شوند، مجموعه‌ای از منابع دیگر (مانند فولدرها) هستند و نه منابع ساده (مانند فایل‌های متنی).
adFldIsDefaultStream 0x20000 این فیلد شامل جریان پیش‌فرض منابعی است که توسط رکورد نشان داده می‌شوند. به عنوان مثال، جریان پیش‌فرض می‌تواند محتوای HTML فولدر ریشه وب‌سایت باشد که در زمان ارائه URL ریشه به صورت خودکار فراهم می‌شود.
adFldIsNullable 0x20 این فیلد مقدار Null را می‌پذیرد.
adFldIsRowURL 0x10000 این فیلد شامل URL است که منابعی را که داده‌های رکورد نشان می‌دهد، نام‌گذاری می‌کند.
adFldKeyColumn 0x8000 این فیلد کلید اصلی مجموعه سطرهای بنیادی است. همچنین نشان می‌دهد که این فیلد بخشی از کلید ترکیبی است.
adFldLong 0x80 این فیلد یک فیلد دودویی طولانی است. همچنین نشان می‌دهد که می‌توان از روش‌های AppendChunk و GetChunk استفاده کرد.
adFldMayBeNull 0x40 مقدار Null را می‌توان از این فیلد خواند.
adFldMayDefer 0x2 این فیلد به تأخیر افتاده است، یعنی مقدار این فیلد با کل رکورد از منبع داده بازیابی نمی‌شود، بلکه در زمان دسترسی مستقیم به آن‌ها بازیابی می‌شود.
adFldNegativeScale 0x4000 این فیلد مقدار عددی از ستون‌هایی که مقادیر منفی در محدوده دارند را نشان می‌دهد. این محدوده توسط ویژگی NumericScale تعیین می‌شود.
adFldRowID 0x100 این فیلد شامل شناسه پایدار است، این شناسه قابل نوشتن نیست و هیچ معنایی جز شناسه سطر ندارد، مانند شماره رکورد، شناسه منحصر به فرد و غیره.
adFldRowVersion 0x200 این فیلد شامل زمان یا مهر زمانی برای پیگیری به‌روزرسانی‌ها است.
adFldUnknownUpdatable 0x8 تولیدکننده نمی‌تواند تعیین کند که آیا کاربر می‌تواند فیلد را بنویسد یا خیر.
adFldUnspecified
  • -1
  • 0xFFFFFFFF
تولیدکننده ویژگی فیلد را تعیین نکرده است.
adFldUpdatable 0x4 کاربر می‌تواند فیلد را بنویسد.

مقدارهای PropertyAttributesEnum

ثابت مقدار توضیح
adPropNotSupported 0 تولیدکننده این ویژگی را پشتیبانی نمی‌کند.
adPropRequired 1 قبل از شروع به تعریف منبع داده، کاربر باید ارزش این ویژگی را تعیین کند.
adPropOptional 2 قبل از شروع به تعریف منبع داده، کاربر نیازی به تعیین ارزش این ویژگی ندارد.
adPropRead 512 کاربر می‌تواند این ویژگی را بخواند.
adPropWrite 1024 کاربر می‌تواند این ویژگی را تنظیم کند.