作者qayqay ( 偶恨vb)
看板Visual_Basic
標題[.NET] vb2005 連結 sqlserver
時間Sat Jun 7 21:57:44 2008
使用vb2005 express 連結 sqlserver expess
做一使用者確認表單
用 SqlClient.SqlDataReader
----------------
上略 己確認連上資料庫 且己找到該筆資料 user 是正確的
Dim DR As SqlClient.SqlDataReader
DR = SQLcm.ExecuteReader()
If DR.Read Then
If tbPassword.Text = DR.Item(1) Then '確認密碼是否正確
Main() '前往Main表單
End if
End if
下略
-----------------
結果始終不能進入Main表單 代表 tbPassword.Text 不等於 DR.Item(1)
1.但用msgbox測試
msgbox(tbPassword.text) 的結果跟
msgbox(DR.Item(1)) 也一樣
2.改變資料表table欄位的型態 char 改成nchar 也沒有改變
請問這是什摸問題呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.58.78.121
1F:推 mathlinka:可能是 char 補空白的問題,可以試試 varchar 06/08 00:07
2F:推 fumizuki:tbPassword.Text.Trim() = Trim(DR.Item(1)) 06/08 09:25
3F:推 fumizuki:還有 大小寫有別... 06/08 09:25
4F:→ fumizuki:如果要不區分大小寫 .Trim().ToLower() 06/08 09:27
5F:→ fumizuki:Trim(DR.Item(1)).ToLower() 06/08 09:28
6F:→ qayqay:解決囉~謝謝 真的是跟空白有關+使用trim後 就可以了! 06/08 12:19