我正在尝试将数据插入到oracle数据库中 插入数据并更新数据库,但每次插入语句完成时页面都会抛出错误,即使数据库已更新?
我该如何修复这个错误?谢谢!
<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
</head>
<body>
<div class="page">
<h1>Connie's Control Panel</h1>
<div class="header">
<form action="" method="POST">
<table>
<tr>
<td>Supplier You Want To Update:</td>
<td><input type="text" name= "supplierName" required ></td>
</tr>
<tr>
<td>Supplier Name Updated:</td>
<td><input type="text" name= "supplierNameUpdated" required></td>
</tr>
<tr>
<td>Supplier Address Updated:</td>
<td><input type="type" name="supplierAddressUpdated" required></td>
</tr>
<tr>
<td>Supplier Rating Updated:</td>
<td><input type="type" name="supplierRatingUpdated" required></td>
</tr>
</table>
<input type="submit" name="submit" value="Submit">
</form>
<%
Dim objConnection
Dim objRecordset
Dim objUpdateSet
Dim nameCheck
Dim nameUpdate
Dim addressUpdated
Dim ratingUpdated
nameCheck = Request.Form("supplierName")
nameUpdate = Request.Form("supplierNameUpdated")
addressUpdated = Request.Form("supplierAddressUpdated")
ratingUpdated = Request.Form("supplierRatingUpdated")
Set objConnection = Server.CreateObject("ADODB.Connection")
With objConnection
.ConnectionString = "Provider=MSDAORA.1;Password=DELETED;User ID=n011266e;Data Source=stora;Persist Security Info=True"
.Open
Set objRecordset = .Execute("SELECT * FROM Suppliers")
if nameCheck<>"" then
Do while (Not objRecordset.eof)
Set objRecordset = .Execute("UPDATE Suppliers SET SupplierName =" & "'" & nameUpdate &"'" & "WHERE SupplierName =" &"'" & nameCheck&"'")
objRecordset.MoveNext
Loop
end if
End With
objConnection.close
Set objConnection = Nothing
Set objRecordset = Nothing
Set objUpdateSet = Nothing
%>
</div>
<div class="buttons">
<a href="stock.asp" class="btn btn-success"><i class="icon-white icon-pencil"></i> Enter Stock</a>
<a href="stockReport.asp" class="btn btn-success">Stock Report</a>
<a href="supplier.asp" class="btn btn-success"><i class="icon-white icon-pencil"></i> View Suppliers Details</a>
<a href="newSupplier.asp" class="btn btn-success"><i class="icon-white icon-pencil"></i> New Supplier</a>
<a href="inputSupplier.asp" class="btn btn-success"><i class="icon-white icon-pencil"></i> Edit Supplier</a>
</div>
</div>
</body>
</html>
答案 0 :(得分:3)
我猜你不需要&#34; SELECT * FROM Suppliers&#34;并执行while循环
你可以直接执行
"UPDATE Suppliers SET SupplierName ='nameUpdate' WHERE SupplierName ='nameCheck' "
可能是你的错误,因为你执行了&#34; objRecordset = .Execute(..)&#34;已经有选择。