ADO Add Record

Maaari naming gamitin ang command na INSERT INTO ng SQL upang idagdag ang record sa table sa database.

Idagdag ng record sa table sa database

Namin ay umaasa na idagdag ang isang bagong talaan sa table na Customers ng Northwind Database. Una namin ay dapat lumikha ng isang form na naglalaman ng mga input field na kailangan namin upang kolektaan ng data:

<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="Magdagdag ng Bagong"> 
<input type="reset" value="Iwanan">
</form>
</body>
</html>

Kapag pindutin ng user ang pindutan ng pag-确认, ang form na ito ay ililipat sa file na may pangalan na "demo_add.asp". Ang file na "demo_add.asp" ay may kodigo na magpapadala ng isang bagong rekord sa table na 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") & "')"
sa kaso ng error magpatuloy sa susunod
conn.Execute sql,recaffected
if err<>0 then
  Response.Write("Walang kapangyarihan sa pag-update!")
else 
  Response.Write("<h3>" & recaffected & " naipasok na rekord</h3>")
end if
conn.close
%>
</body>
</html>

Mahalagang Balita

Pansin mo ang mga sumusunod kapag gumagamit ka ng command ng INSERT:

  • Tiyaking ang halaga na idadagdag sa prinsipal key field ay unique at hindi walang laman (kung hindi, hindi magdaragdag ang provider ng record, o maaaring magkaroon ng error).
  • Hindi dapat ipaalam ang automatic number field ng table sa command ng INSERT (ang halaga ng field na ito ay naaayon ng provider).

Tungkol sa walang data field

Sa MS Access database, kung itinakda mo ang AllowZeroLength attribute sa 'Yes', puwedeng ipasok mo ang string na walang haba ("") sa teksto, hyperlink at memo field.

Komentaryo:Hindi lahat ng database ay sumusuporta sa string na walang haba, kaya maaaring mayroon ng error kapag pinapadala ang record na may blank field. Kaya mahalaga na suriin ang mga data type na suportado ng database na iyong gumagamit.