SqlDataReader類的初次使用誤區

 using (SqlCommand cmd = connect.CreateCommand())
 	       {
                    
                    cmd.CommandText = "select * from [user] where name = '"+name+"'";
                    using(SqlDataReader read = cmd.ExecuteReader())
                    {
                        if (read.Read())
                        {

                           //string dbPassword = read["password"].ToString();
                           string dbPassword = read.GetString(read.GetOrdinal("password"));
			}
		    }
		}     




將數據庫中的文件通過select語句讀出來,看別人家這麼寫能夠通過但我的就不行了
前面的數據庫連接部分略了啊
我的就是不行,只能用上面註釋的那一行才行。還不明白啥原因,暫記一下,找到原因再補充。


哎,上面的問題的確狗二,就不刪除了,留着以作警示吧。

上面之所以不行是因爲少了數據的轉換,可以把那行代碼這樣改

string dbPassword = Convert.Tostring(read.GetString(read.GetOrdinal("password")));

或者是string dbPassword = read.GetString(read.GetOrdinal("password")).ToString();

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章