ASP Visual Basic 代码崩溃...非常需要帮助
ASP Visual Basic Code Crashing...Help Much Required
我正在尝试将数据插入到 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>
我猜你不需要做 "SELECT * FROM Suppliers" 和做 while 循环
可以直接执行
"UPDATE Suppliers SET SupplierName ='nameUpdate' WHERE SupplierName ='nameCheck' "
可能是你的错误,因为你在 "objRecordset = .Execute(.. ) " 上执行已经有 select.
我正在尝试将数据插入到 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>
我猜你不需要做 "SELECT * FROM Suppliers" 和做 while 循环
可以直接执行
"UPDATE Suppliers SET SupplierName ='nameUpdate' WHERE SupplierName ='nameCheck' "
可能是你的错误,因为你在 "objRecordset = .Execute(.. ) " 上执行已经有 select.