اضافه کردن ثبت ADO
- صفحه قبلی ترتیب ADO
- صفحه بعدی بهروزرسانی ADO
ما میتوانیم از دستور INSERT INTO SQL برای اضافه کردن رکوردها به جدول در پایگاه داده استفاده کنیم.
اضافه کردن رکورد به جدول در پایگاه داده
ما میخواهیم یک رکورد جدید به جدول Customers پایگاه داده Northwind اضافه کنیم. ابتدا باید یک فرم ایجاد کنیم که شامل حوزههایی است که از آنها دادههای مورد نیاز ما را جمعآوری میکنیم:
<html> <body> <form method="post" action="demo_add.asp"> <table> <tr> <td>CustomerID:</td> <td><input name="custid"></td> </tr><tr> <td>Company Name:</td> <td><input name="compname"></td> </tr><tr> <td>Contact Name:</td> <td><input name="contname"></td> </tr><tr> <td>Address:</td> <td><input name="address"></td> </tr><tr> <td>City:</td> <td><input name="city"></td> </tr><tr> <td>Postal Code:</td> <td><input name="postcode"></td> </tr><tr> <td>Country:</td> <td><input name="country"></td> </tr> </table> <br /><br /> <input type="submit" value="افزودن جدید"> <input type="reset" value="لغو"> </form> </body> </html>
وقتی کاربر دکمه تایید را فشار میدهد، این فرم به فایل به نام "demo_add.asp" ارسال میشود. کد در فایل "demo_add.asp" این است که یک رکورد جدید به جدول Customers اضافه میکند:
<html> <body> <% set conn=Server.CreateObject("ADODB.Connection") conn.Provider="Microsoft.Jet.OLEDB.4.0" conn.Open "c:/webdata/northwind.mdb" sql="INSERT INTO customers (customerID,companyname," sql=sql & "contactname,address,city,postalcode,country)" sql=sql & " VALUES " sql=sql & "('" & Request.Form("custid") & "'," sql=sql & "'" & Request.Form("compname") & "'," sql=sql & "'" & Request.Form("contname") & "'," sql=sql & "'" & Request.Form("address") & "'," sql=sql & "'" & Request.Form("city") & "'," sql=sql & "'" & Request.Form("postcode") & "'," sql=sql & "'" & Request.Form("country") & "')" on error resume next conn.Execute sql,recaffected if err<>0 then Response.Write("مجوز بهروزرسانی وجود ندارد!") else Response.Write("<h3>" & recaffected & " ضبط جدید اضافه شد</h3>") end if conn.close %> </body> </html>
مatters
هنگام استفاده از دستور INSERT command، توجه به موارد زیر داشته باشید:
- اگر یک کلید اصلی در جدول وجود دارد، مطمئن شوید که ارزشهای اضافه شده به فیلد کلید اصلی منحصر به فرد و خالی هستند (در غیر این صورت، provider این ثبت را اضافه نمیکند و یا خطا رخ میدهد).
- اگر یک فیلد شمارهگذاری خودکار در جدول وجود دارد، این فیلد را در دستور INSERT در نظر نگیرید (این فیلد توسط provider مدیریت میشود).
درباره میدانهای بدون داده
در بانک اطلاعاتی MS Access، اگر شما ویژگی AllowZeroLength را به "بله" تنظیم کنید، میتوانید رشتههای طول صفر را در فیلدهای متن، پیوند فراگیر و میدان یادداشت وارد کنید ("").
نکته:همه بانکهای اطلاعاتی از رشتههای طول صفر پشتیبانی نمیکنند، بنابراین ممکن است در صورت افزودن ثبت با میدان خالی خطا رخ دهد. بنابراین، بررسی نوع دادههای پشتیبانی شده توسط بانک اطلاعاتی مورد استفاده شما بسیار مهم است.
- صفحه قبلی ترتیب ADO
- صفحه بعدی بهروزرسانی ADO