可恶的问题一个~谢谢大家请帮忙
试图将 Null 值赋予一个非 Variant 数据类型的变量。
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:AccessDataSource ID="AccessDataSource1" runat="server" ConflictDetection="CompareAllValues"
DataFile="~/cmsdb.mdb" DeleteCommand="DELETE FROM [Music] WHERE [id] = ? AND [MusicName] = ?"
InsertCommand="INSERT INTO [Music] ([id], [MusicName]) VALUES (?, ?)" OldValuesParameterFormatString="original_{0}"
SelectCommand="SELECT [id], [MusicName] FROM [Music]" UpdateCommand="UPDATE [Music] SET [MusicName] = ? WHERE [id] = ? AND [MusicName] = ?">
<DeleteParameters>
<asp:Parameter Name="original_id" Type="Int32" />
<asp:Parameter Name="original_MusicName" Type="String" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="MusicName" Type="String" />
<asp:Parameter Name="original_id" Type="Int32" />
<asp:Parameter Name="original_MusicName" Type="String" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="id" Type="Int32" />
<asp:Parameter Name="MusicName" Type="String" />
</InsertParameters>
</asp:AccessDataSource>
</div>
<asp:GridView ID="GridView1" runat="server" AllowPaging="True" AllowSorting="True"
AutoGenerateColumns="False" DataKeyNames="id" DataSourceID="AccessDataSource1">
<Columns>
<asp:CommandField ShowDeleteButton="True" ShowEditButton="True" />
<asp:BoundField DataField="id" HeaderText="id" InsertVisible="False" ReadOnly="True"
SortExpression="id" />
<asp:BoundField DataField="MusicName" HeaderText="MusicName" SortExpression="MusicName" />
</Columns>
</asp:GridView>
<asp:AccessDataSource ID="AccessDataSource2" runat="server" ConflictDetection="CompareAllValues"
DataFile="~/cmsdb.mdb"
DeleteCommand="DELETE FROM [Music] WHERE [id] = ? AND [MusicName] = ? AND [Audition] = ? AND [DownLoad] = ?"
InsertCommand="INSERT INTO [Music] ([id], [MusicName], [Audition], [DownLoad]) VALUES (?, ?, ?, ?)"
OldValuesParameterFormatString="original_{0}" SelectCommand="SELECT * FROM [Music]"
UpdateCommand="UPDATE [Music] SET [MusicName] = ?, [Audition] = ?, [DownLoad] = ? WHERE [id] = ? AND [MusicName] = ? AND [Audition] = ? AND [DownLoad] = ?">
<DeleteParameters>
<asp:Parameter Name="original_id" Type="Int32" />
<asp:Parameter Name="original_MusicName" Type="String" />
<asp:Parameter Name="original_Audition" Type="String" />
<asp:Parameter Name="original_DownLoad" Type="String" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="MusicName" Type="String" />
<asp:Parameter Name="Audition" Type="String" />
<asp:Parameter Name="DownLoad" Type="String" />
<asp:Parameter Name="original_id" Type="Int32" />
<asp:Parameter Name="original_MusicName" Type="String" />
<asp:Parameter Name="original_Audition" Type="String" />
<asp:Parameter Name="original_DownLoad" Type="String" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="id" Type="Int32" />
<asp:Parameter Name="MusicName" Type="String" />
<asp:Parameter Name="Audition" Type="String" />
<asp:Parameter Name="DownLoad" Type="String" />
</InsertParameters>
</asp:AccessDataSource>
<asp:DetailsView ID="DetailsView1" runat="server" AllowPaging="True" AutoGenerateRows="False"
DataKeyNames="id" DataSourceID="AccessDataSource2" Height="50px" Width="125px">
<Fields>
<asp:BoundField DataField="id" HeaderText="id" InsertVisible="False" ReadOnly="True"
SortExpression="id" />
<asp:BoundField DataField="MusicName" HeaderText="MusicName" SortExpression="MusicName" />
<asp:BoundField DataField="Audition" HeaderText="Audition" SortExpression="Audition" />
<asp:BoundField DataField="DownLoad" HeaderText="DownLoad" SortExpression="DownLoad" />
<asp:CommandField ShowInsertButton="True" />
</Fields>
</asp:DetailsView>
</form>
</body>
</html>
问题点数:100、回复次数:11Top
1 楼Snowdust(雪尘)回复于 2006-03-01 19:41:02 得分 0
你的数据有Null值,在取数据时如果是DBNull.Value换成其它值。Top
2 楼jerrykan(牧)回复于 2006-03-01 19:41:30 得分 0
自己顶下Top
3 楼jerrykan(牧)回复于 2006-03-02 11:54:18 得分 0
问题还是没有解决~请大家说得详细些
Top
4 楼studydotnet(Dreamfly)回复于 2006-03-02 12:20:32 得分 0
ConvertTop
5 楼goody9807(http://goody9807.cnblogs.com)回复于 2006-03-02 12:27:13 得分 0
if (value!=DBNull.Value)
{
//判断以下
}Top
6 楼luck0235(风平浪静时人人都能掌舵)回复于 2006-03-02 12:31:28 得分 0
int i = null;
楼主这样试试看行不?这就是错误原因。
建议楼主帖出问题关键。Top
7 楼jacky125()回复于 2006-03-02 12:43:10 得分 0
建议楼主写出出错点Top
8 楼fphuang(人在哈尔滨·四月)回复于 2006-03-02 12:59:12 得分 0
--试图将 Null 值赋予一个非 Variant 数据类型的变量。
提示的比较明白了,搂主看看什么地方的变量没有初始化就进行负值操作了Top
9 楼flyinging(一路走来)回复于 2006-03-02 13:17:08 得分 0
dunull=Convert.DbNullTop
10 楼coolbamboo2008(寒竹)回复于 2006-03-02 14:44:34 得分 0
初始化Top
11 楼jerrykan(牧)回复于 2006-03-02 22:11:22 得分 0
我觉得问题因该是在 id 自动编号那里!但是我又不知道该怎么解决。Top




