读书人

50分!请看看异常如何改

发布时间: 2012-03-01 10:25:46 作者: rapoo

50分!请看看错误怎么改!
文件如下:
<%@ Page Language= "VB " debug= "true "%>
<%@ import Namespace= "System.Data " %>
<%@ import Namespace= "System.Data.OleDb " %>
<script Language= "VB " runat= "server ">

sub MyInsertMethod(ByVal thename As string,ByVal thedate As Date, ByVal theprice As

single)
Dim conn As New OleDbConnection( "Provider=Microsoft.Jet.OLEDB.4.0; Ole DB

Services=-4; Data Source=E:\web挖掘\预测\evi "& _
"ews\Eviews51\lianxi\lotus\lunwen.mdb ")

Dim queryString As String

queryString= "INSERT INTO price (name,date, price) VALUES( ' " & thename & " ',# " & thedate &

"#, " & theprice & ") "


Dim cmd As New OleDbCommand(queryString, conn)

conn.open() '打开数据库
cmd.ExecuteNonQuery() '执行操作,插入记录
conn.close()

End sub
'Trace.warn(queryString)
</script>
<%

call MyInsertMethod( "ddd ",#1/1/2007#,3.2)

%>
<html>
<head>
<title> 一个简单示例 </title>
</head>
<body>

</body>
</html>


错误如下:


Exception Details: System.Data.OleDb.OleDbException: INSERT INTO 语句的语法错误。

Source Error:


Line 17:
Line 18: conn.open() '打开数据库
Line 19: cmd.ExecuteNonQuery() '执行操作,插入记录


Line 20: conn.close()
Line 21:


Source File: E:\web挖掘\预测\eviews\Eviews51\lianxi\lotus\writeintotable.aspx Line: 19

Stack Trace:




[解决办法]
INSERT INTO [price] ([name],[date], [price])

date是关键字...用[]号圈起来...一个好习惯是把所有表名、列名都加[]号...
[解决办法]
queryString= "INSERT INTO price (name,date, price) VALUES( ' " & thename & " ',# " & thedate &

"#, " & theprice & ") "

==========

使用的列名与 Acess 保留字冲突, 加 []

》》》

queryString= "INSERT INTO price ([name],[date], price) VALUES( ' " & thename & " ',# " & thedate &

"#, " & theprice & ") "
[解决办法]
用关键字做字段名要用[]包起来

读书人网 >VB Dotnet

热点推荐