asp.net每天积累一点点(9)
在数据源中插入新的数据,通过配置数据源来实现。
------------------------------------
代码如下:
数据源的配置
<asp:SqlDataSource ID="ds" runat="server" ConnectionString="server=.;database=students;trusted_connection=true"
SelectCommand="select * from student"
InsertCommandType="Text" InsertCommand="insert into student values(@studentno,@name,@addrass,@chinese,@english,@mathematics,@class)"
>
<InsertParameters>
<asp:FormParameter Name="studentno" FormField="notxt" />
<asp:FormParameter Name="name" FormField="nametxt" />
<asp:FormParameter Name="addrass" FormField="addrasstxt" />
<asp:FormParameter Name="chinese" FormField="chinesetxt" />
<asp:FormParameter Name="english" FormField="englishtxt" />
<asp:FormParameter Name="mathematics" FormField="mathtxt" />
<asp:FormParameter Name="class" FormField="classtxt" />
</InsertParameters>
</asp:SqlDataSource>
SelectCommand="select * from student"
InsertCommandType="Text" InsertCommand="insert into student values(@studentno,@name,@addrass,@chinese,@english,@mathematics,@class)"
>
<InsertParameters>
<asp:FormParameter Name="studentno" FormField="notxt" />
<asp:FormParameter Name="name" FormField="nametxt" />
<asp:FormParameter Name="addrass" FormField="addrasstxt" />
<asp:FormParameter Name="chinese" FormField="chinesetxt" />
<asp:FormParameter Name="english" FormField="englishtxt" />
<asp:FormParameter Name="mathematics" FormField="mathtxt" />
<asp:FormParameter Name="class" FormField="classtxt" />
</InsertParameters>
</asp:SqlDataSource>
--------------------
重点在于:
配置表单参数让FormField与相应的录入控件对应Name与传入参数名字对应
InsertCommand正确书写
---------------------
下面是录入控件配置代码 :
录入控件代码
<table>
<thead><tr><td>添加新数据</td></tr></thead>
<tbody>
<tr><td>编号</td><td>
<asp:TextBox ID="notxt" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="r1" runat="server" ControlToValidate="notxt" ErrorMessage="编号不能为空!" Display="Dynamic"></asp:RequiredFieldValidator>
</td></tr>
<tr><td>姓名</td><td>
<asp:TextBox ID="nametxt" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="r2" runat="server" ControlToValidate="nametxt" ErrorMessage="姓名不能为空!" Display="Dynamic"></asp:RequiredFieldValidator>
</td></tr>
<tr><td>住址</td><td>
<asp:TextBox ID="addrasstxt" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="r3" runat="server" ControlToValidate="addrasstxt" ErrorMessage="住址不能为空!" Display="Dynamic"></asp:RequiredFieldValidator>
</td></tr>
<tr><td>班级</td><td>
<asp:TextBox ID="classtxt" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="r4" runat="server" ControlToValidate="classtxt" ErrorMessage="班级不能为空!" Display="Dynamic"></asp:RequiredFieldValidator>
</td></tr>
<tr><td>语文</td><td>
<asp:TextBox ID="chinesetxt" runat="server"></asp:TextBox>
</td></tr>
<tr><td>外语</td><td>
<asp:TextBox ID="englishtxt" runat="server"></asp:TextBox>
</td></tr>
<tr><td>数学</td><td>
<asp:TextBox ID="mathtxt" runat="server"></asp:TextBox>
</td></tr>
<tr><td><asp:Button ID="commitbtn" runat="server" Text="提交" OnClick="CommitData" />
</td></tr>
</tbody>
</table>
<thead><tr><td>添加新数据</td></tr></thead>
<tbody>
<tr><td>编号</td><td>
<asp:TextBox ID="notxt" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="r1" runat="server" ControlToValidate="notxt" ErrorMessage="编号不能为空!" Display="Dynamic"></asp:RequiredFieldValidator>
</td></tr>
<tr><td>姓名</td><td>
<asp:TextBox ID="nametxt" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="r2" runat="server" ControlToValidate="nametxt" ErrorMessage="姓名不能为空!" Display="Dynamic"></asp:RequiredFieldValidator>
</td></tr>
<tr><td>住址</td><td>
<asp:TextBox ID="addrasstxt" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="r3" runat="server" ControlToValidate="addrasstxt" ErrorMessage="住址不能为空!" Display="Dynamic"></asp:RequiredFieldValidator>
</td></tr>
<tr><td>班级</td><td>
<asp:TextBox ID="classtxt" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="r4" runat="server" ControlToValidate="classtxt" ErrorMessage="班级不能为空!" Display="Dynamic"></asp:RequiredFieldValidator>
</td></tr>
<tr><td>语文</td><td>
<asp:TextBox ID="chinesetxt" runat="server"></asp:TextBox>
</td></tr>
<tr><td>外语</td><td>
<asp:TextBox ID="englishtxt" runat="server"></asp:TextBox>
</td></tr>
<tr><td>数学</td><td>
<asp:TextBox ID="mathtxt" runat="server"></asp:TextBox>
</td></tr>
<tr><td><asp:Button ID="commitbtn" runat="server" Text="提交" OnClick="CommitData" />
</td></tr>
</tbody>
</table>
上面的提交按钮用到了事件OnClick,代码如下:
Sub CommitData(ByVal obj As Object, ByVal e As EventArgs)
If ds.Insert() > 0 Then
Response.Write("插入成功!")
End If
End Sub
If ds.Insert() > 0 Then
Response.Write("插入成功!")
End If
End Sub
代码很简单就是调用数据源的插入方法.
下面是用于显示录入信息内容的:
<asp:GridView ID="gv" runat="server" DataSourceID="ds" AlternatingRowStyle-BackColor="#cccccc" ></asp:GridView>
--------------------------------------
下面是运行效果图



浙公网安备 33010602011771号