• 全部
  • .NET Framework
  • ASP
  • Web Services
  • .NET互联网桌面应用
  • VB
  • 图表区
  • 分析与设计
  • 组件/控件开发
  • AppLauncher
  • 问答

填加一行新数据,问题.

shufa 2004-09-06 10:35:15
新手来,请大家多帮忙吧,谢谢!!

数据库access的db1.mdb
不知道是不是不程序填加的数据类型和数据库里的定义的不一样啊?>
数据库里定义了:
id -- 自动
theme -- 备注
contents -- 备注
from -- 文本
addt -- 文本
class -- 文本
我想是填加一行新数据 id 自动增加
addt和class都为空,不知道是不是可以


<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OleDb" %>

<html>

<script language="VB" runat="server">

Dim MyConnection As OleDbConnection

Sub Page_Load(Sender As Object, E As EventArgs)

MyConnection = New OleDbConnection("provider=microsoft.jet.oledb.4.0;data source="&server.mappath("db1.mdb"))

If Not (IsPostBack)
BindGrid()
End If
End Sub

Sub AddNews_Click(Sender As Object, E As EventArgs)

Dim DS As DataSet
Dim MyCommand As OleDbCommand


If theme.Value = "" Or contents.Value = "" Or from.Value = ""

Message.InnerHtml = "错误:""title""、""姓名""或""电话""不允许使用空值"
Message.Style("color") = "red"
BindGrid()
End If

Dim InsertCmd As String = "insert into news (theme, contents, from) values (@Theme, @Contents, @From)"

MyCommand = New OleDbCommand(InsertCmd, MyConnection)

MyCommand.Parameters.Add(New OleDbParameter("@Theme", OleDbType.VarChar, 40,"theme"))
'MyCommand.Parameters("@Theme").Value = theme.Value

MyCommand.Parameters.Add(New OleDbParameter("@Contents", OleDbType.VarChar, 200,"contents"))
'MyCommand.Parameters("@Contents").Value = contents.Value

MyCommand.Parameters.Add(New OleDbParameter("@From", OleDbType.Char, 20,"from"))
'MyCommand.Parameters("@From").Value = from.Value



MyCommand.Connection.Open()


MyCommand.ExecuteNonQuery()
Message.InnerHtml = "<b>已添加记录oooookkkkkkk</b><br>" & InsertCmd.ToString()



MyCommand.Connection.Close()

BindGrid()
End Sub

Sub BindGrid()

Dim MyCommand As OleDbDataAdapter = new OleDbDataAdapter("select theme from News", MyConnection)

Dim DS As DataSet = new DataSet()
MyCommand.Fill(DS, "News")

MyDataGrid.DataSource=DS.Tables("News").DefaultView
MyDataGrid.DataBind()
End Sub

</script>

<body style="font: 10.5pt 宋体">

<form runat="server">

<h3><font face="宋体">插入数据行</font></h3>

<table width="95%">
<tr>
<td valign="top" width="40%">

<ASP:DataGrid id="MyDataGrid" runat="server"
Width="400"
BackColor="#ccccff"
BorderColor="black"
ShowFooter="false"
CellPadding=3
CellSpacing="0"
Font-Name="宋体"
Font-Size="8pt"
HeaderStyle-BackColor="#aaaadd"
EnableViewState="false"
/>

</td>
<td valign="top" width="60%">

<table style="font: 9pt 宋体" width="100%">
<tr>
<td colspan="2" bgcolor="#aaaadd" style="font:10.5pt 宋体">添加新news:</td>
</tr>
<tr>
<td nowrap>title:</td>
<td><input type="text" id="theme" runat="server"></td>
</tr>
<tr>
<td nowrap>contents:</td>
<td><textarea id="contents" runat="server" rows="4" textmode="multiline"></textarea></td>
</tr>
<tr nowrap>
<td>from:</td>
<td><input type="text" id="from" runat="server">
</td>
</tr>
<tr>
<td>time:</td>
<td></td>
</tr>
<tr>
<td></td>
<td style="padding-top:15">
<input type="button" OnServerClick="AddNews_Click" value="添加" runat="server">
</td>
</tr>
<tr>
<td colspan="2" style="padding-top:15" align="center">
<span id="Message" EnableViewState="false" style="font: arial 11pt;" runat="server"/>
</td>
</tr>
</table>

</td>
</tr>
</table>

</form>

</body>
</html>
...全文
42 点赞 收藏 4
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
shufa 2004-09-06
我把from改了,之后提交数据的时候,出现以下错误:
Exception Details: System.Data.OleDb.OleDbException: 参数 @Theme 没有默认值。
回复
shufa 2004-09-06
lupanwin(默默)
说的很多,可是不太清楚哪错了?是from的问题吗?
回复
Night_Elf 2004-09-06
From为关键字,建议改掉!
回复
lupanwin 2004-09-06
insert into news (theme, contents, from) values (@Theme, @Contents, @From)"
你的这句有问题
回复
发帖
.NET技术社区
创建于2007-09-28

5.8w+

社区成员

.NET技术交流专区
申请成为版主
帖子事件
创建了帖子
2004-09-06 10:35
社区公告
暂无公告