Thêm bản ghi ADO
- Trang trước Sắp xếp ADO
- Trang tiếp theo Cập nhật ADO
Chúng ta có thể sử dụng lệnh INSERT INTO của SQL để thêm bản ghi vào bảng của cơ sở dữ liệu.
Thêm bản ghi vào bảng của cơ sở dữ liệu
Chúng tôi hy vọng thêm một bản ghi mới vào bảng Customers của cơ sở dữ liệu Northwind. Trước tiên, chúng tôi cần tạo một biểu mẫu chứa các lĩnh vực đầu vào mà chúng tôi cần thu thập dữ liệu từ:
<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="Thêm mới"> <input type="reset" value="Hủy bỏ"> </form> </body> </html>
Khi người dùng nhấn nút xác nhận, biểu mẫu này sẽ được gửi đến tệp có tên "demo_add.asp". Tệp "demo_add.asp" chứa mã để thêm một bản ghi mới vào bảng 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("Không có quyền cập nhật!") else Response.Write("<h3>" & recaffected & " bản ghi đã thêm</h3>") end if conn.close %> </body> </html>
Việc quan trọng
Khi bạn sử dụng lệnh INSERT command, hãy lưu ý các điểm sau:
- Nếu bảng chứa một khóa chính, hãy đảm bảo rằng giá trị được thêm vào trường khóa chính là duy nhất và không để trống (nếu không, nhà cung cấp sẽ không thêm bản ghi này hoặc có thể xảy ra lỗi).
- Nếu bảng chứa một trường tự động mã hóa, đừng bao gồm trường này trong lệnh INSERT (giá trị của trường này được nhà cung cấp chịu trách nhiệm).
Về trường không có dữ liệu
Trong cơ sở dữ liệu MS Access, nếu bạn thiết lập thuộc tính AllowZeroLength thành 'Yes', bạn có thể nhập chuỗi độ dài bằng 0 (") vào trường văn bản, liên kết và trường ghi nhớ.
Chú ý:Không phải tất cả cơ sở dữ liệu đều hỗ trợ chuỗi có độ dài bằng 0, vì vậy khi thêm bản ghi có trường trống có thể xảy ra lỗi. Do đó, kiểm tra loại dữ liệu mà cơ sở dữ liệu bạn sử dụng hỗ trợ là rất quan trọng.
- Trang trước Sắp xếp ADO
- Trang tiếp theo Cập nhật ADO