پاسخ : معرفی ADO و کاربرد آن در ASP مثال ۳- بهنگام سازی رکوردهای بانک اطلاعاتی دانشجویان در این مثال با نحوه بهنگام سازی رکوردهای موجود در بانک اطلاعاتی دانشجویان آشنا خواهیم شد. متن برنامه بهنگام سازی رکورد دانشجوئی در بانک اطلاعاتی دانشجویان بصورت زیر است. <HTML> <HEAD> <TITLE>Student Records</TITLE> </HEAD> <BODY> <% Dim DBSet DB = Server.CreateObject (“ADODB.Connection”) DB.Mode = adModeReadWrite DB.Open (“PROVIDER=Microsoft.Jet.OLEDB.4.0ATA SOURCE=” + “C:\MyDb\Students.mdb”) Dim RSSet RS = Server.CreateObject (“ADODB.Recordset”) RS.Open “SELECT * FROM Students WHERE FirstName = ”name”, DB, adOpenStatic, adLockPessimistic RS (“Email”) = “name@domain.com” RS (“DateOfBirth”) = CDate(“26 Mar, 2001″) RS.Update %> </BODY> </HTML> در برنامه فوق رکورد دانشجوئی با نام “name” انتخاب و فیلدهای آدرس پست الکترونیکی (Email) و تاریخ تولد (DateIfBirth) آن تغییر و حاصل مجددا در بانک اطلاعاتی دانشجویان ثبت شده است
پاسخ : معرفی ADO و کاربرد آن در ASP مثال ۴- حذف یک رکورد در این مثال با نحوه حذف یک رکورد در بانک اطلاعاتی دانشجویان آشنا خواهیم شد. متن برنامه حذف یک رکورد از بانک اطلاعاتی دانشجویان بصورت زیر است. <HTML> <HEAD> <TITLE>Student Records</TITLE> </HEAD> <BODY> <% Dim DBSet DB = Server.CreateObject (“ADODB.Connection”) DB.Mode = adModeReadWrite DB.Open (“PROVIDER=Microsoft.Jet.OLEDB.4.0ATA SOURCE=” + “C:\MyDb\Students.mdb”) DB.Execute (“DELETE * FROM Students WHERE FirstName = ‘name’”) %> </BODY> </HTML> در مثال فوق رکورد دانشجوئی با نام “name” از بانک اطلاعاتی دانشجویان حذف شده است. در زمان حذف یک رکورد از بانک اطلاعاتی به دو نکته مهم می بایست توجه کرد: اولا امکان معروف Undo وجود ندارد. بنابراین رکوردی که حذف می گردد، امکان برگرداندن آن وجود ندارد. ثانیا اگر در زمان اجرای DELETE ، عبارت WHERE حذف گردد، تمامی رکوردهای موجود در جدول حذف خواهند گردید.
پاسخ : معرفی ADO و کاربرد آن در ASP متدهای Sort و Search با استفاده از متدهای شئ RecordSet، می توان عملیات مرتب سازی (Sort) و جستجو (Search) را انجام داد. برای مرتب سازی یک مجموعه از رکوردها نام فیلد مورد نظری را که می خواهیم مرتب سازی بر اساس آن انجام شود را به صفت Sort نسبت خواهیم داد. مثلا اگر بخواهیم مجموعه ای از رکوردها را که توسط اجرای SELECT * FROM PhoneBook برگردانده شده است را براساس نام خانوادگی (LastName) مرتب نمائیم، می توان دستور RecordSet.Sort = “LastName” را استفاده کرد. برای مرتب سازی رکوردها براساس بیش از یک فیلد بصورت RecordSet.Sort = “LastName, FirstName” عمل می نمائیم. برای مرتب سازی رکوردها بصورت صعودی ( پیش فرض است )، یا نزولی بصورت RecordSet.Sort = “LastName, FirstName DESC” عمل می کنیم. برای جستجوی یک رکورد بخصوص در بین مجموعه رکوردهای برگردانده شده از متد Find شئ RecordSet استفاده می گردد. شرط جستجو را بصورتی که در یک SQL Where است، مشخص خواهیم کرد و پس از اجرای متد Find، شئ RecordSet به اولین موردی که پیدا کرده است اشاره خواهد کرد و در صورتیکه رکوردی پیدا نشود،EOF ارزش درست را پیدا خواهد کرد. متد Find بغیر از شرطی که نظیر SQL WHERE برای آن مشخص می کنیم، می تواند دارای سه پارامتر اختیاری دیگر باشد: • SkipRecords: تعداد رکوردهائی را که می بایست قبل از عملیات جستجو، صرفنظر (Skip) نماید، مشخص خواهد کرد. • SearchDirection: جهت حرکت جستجو در مجموعه رکوردها را مشخص خواهد کرد. adSearchForward ( بسمت جلو) ویا adSearchBackward( از آخر بسمت اول ) • Start: تعداد رکوردهائی را که می بایست برای جستجو شروع کرد مشخص می کند.
پاسخ : معرفی ADO و کاربرد آن در ASP شئ Field با اینکه تاکنون ما به شئ RecordSet بصورت یک جدول نگاه می کردیم، اما این صرفا یک مدل فرضی برای راحتی تصور آن است. شئ RecordSet در حقیقت شامل یک بردار دو بعدی از شئ Field است. شئ Field شامل داده است. بنابراین هر شئ از این نوع دارای یک اندازه، یک مقدار و یک نوع بخصوص است. شئ فوق همچنین دارای مجموعه ای از صفات است. در اکثر موارد شاید نیازی نباشد که با صفات و متدهای شئ فوق مستقیما کار کنیم، اما مطالعه آنها برای موارد پیش بینی شده در طراحی صفحات ASP که قصد ارتباط با بانک های اطلاعاتی از طریق ADO را دارند، توصیه می گردد.