Добавление записи 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") & "')" на ошибку продолжить conn.Execute sql,recaffected if err<>0 then Response.Write("Нет прав на обновление!") else Response.Write("<h3>" & recaffected & " запись добавлена</h3>") end if conn.close %> </body> </html>
Важно:
При использовании команды INSERT command обратите внимание на следующие моменты:
- Если таблица содержит главное поле, убедитесь, что значение, добавляемое в главное поле, уникально и не пусто (в противном случае provider не добавит эту запись, или может возникнуть ошибка).
- Если таблица содержит поле с автоматическим номером, не включайте это поле в команду INSERT (значение этого поля предоставляется provider).
О пустых полях данных
В базе данных MS Access, если вы установите атрибут AllowZeroLength в значение «Да», вы можете вводить строки нулевой длины ("") в текстовых, гиперссылочных и полей заметок.
Комментарий:Не все базы данных поддерживают строки нулевой длины, поэтому при добавлении записи с пустыми полями может возникнуть ошибка. Поэтому важно проверить, какие типы данных поддерживает используемая вами база данных.
- Предыдущая страница Сортировка ADO
- Следующая страница Обновление ADO