我遇到的问题如下:
我正在使用SQL查询从表中取出数据:
Dim query As String = "SELECT Pronunciation, Character FROM [Hiragana List] WHERE Pronunciation='" & pronunciation & "';"
Dim instruction = New SqlCommand(query, sqlCon)
Dim da As New SqlDataAdapter
da.SelectCommand = instruction
da.Fill(HiraganaList)
然后应该从表中获取数据并填写一个名为“Hiragana List”的数据表,但是当代码到达该行时
da.Fill(Hiragana List)
程序的操作停止,而是返回此错误:
System.Data.dll中出现未处理的“System.ArgumentNullException”类型异常
附加信息:值不能为空。
我看了一下“平假名列表”本身,并对其进行了更改,以便在每个字段中接受Null,以便查看是否会修复它,遗憾的是它仍会返回相同的错误。
(编辑)以下是数据表'平假名列表'的声明:
Dim connectionString As String = "Server=my_server;Database=name_of_db;User Id=user_name;Password=my_password"
Dim sqlCon = New SqlConnection("Data Source=(LocalDB)\v11.0;AttachDbFilename='J:\Computing Coursework\real project\KES\KES\Kana List.mdf';Integrated Security=True;Connect Timeout=30")
Dim HiraganaList As DataTable
Dim KanjiList As DataTable
Dim Katakana As DataTable
Dim YoonList As DataTable
Dim YoonKataList As DataTable
答案 0 :(得分:1)
您的代码正好da.Fill(HiraganaList)
添加此代码:
HiraganaList = New DataTable
你需要这个以避免null异常。