我收到此错误
您尝试将Null值分配给不是Variant数据类型的变量。
这是代码:
</asp:GridView>
<asp:AccessDataSource ID="AccessDataSource1" runat="server"
DataFile="~/videogames.accdb"
DeleteCommand="DELETE FROM [Table1] WHERE [ID] = ?"
InsertCommand="INSERT INTO [Table1] ( ID,Name, ScreenName, Age, Game, YearsPlaying) VALUES (?, ?, ?, ?, ?, ?)"
SelectCommand="SELECT * FROM [Table1]"
UpdateCommand="UPDATE [Table1] SET [Name] = ?, [ScreenName] = ?, [Age] = ?, [Game] = ?, [YearsPlaying] = ? WHERE [ID] = ?">
<DeleteParameters>
<asp:Parameter Name="ID" Type="Int32" />
</DeleteParameters>
<InsertParameters>
<asp:Parameter Name="ID" Type="Int32" />
<asp:Parameter Name="Name" Type="String" />
<asp:Parameter Name="ScreenName" Type="String" />
<asp:Parameter Name="Age" Type="Int32" />
<asp:Parameter Name="Game" Type="String" />
<asp:Parameter Name="YearsPlaying" Type="String" />
</InsertParameters>
<UpdateParameters>
<asp:Parameter Name="Name" Type="String" />
<asp:Parameter Name="ScreenName" Type="String" />
<asp:Parameter Name="Age" Type="Int32" />
<asp:Parameter Name="Game" Type="String" />
<asp:Parameter Name="YearsPlaying" Type="String" />
<asp:Parameter Name="ID" Type="Int32" />
</UpdateParameters>
我已经过了这个,我无法让它正常工作。有人可以帮帮我吗?谢谢。
当我尝试使用Id删除插入参数时,它会返回另一个错误。
答案 0 :(得分:4)
删除ID
InsertParameter
:
<asp:Parameter Name="ID" Type="Int32" />
更改您的InsertCommand
:
InsertCommand="INSERT INTO [Table1] (Name, ScreenName, Age, Game, YearsPlaying) VALUES (?, ?, ?, ?,?)"
答案 1 :(得分:3)
这可能是因为在插入中您拥有ID,而它可能是数据库中的自动数字。尝试从插入命令中删除它。祝你好运!