我在WinForms应用程序的MySQL表中有很多用户。用户输入其用户名和密码。我的问题是如何检查数据库表中是否有使用该用户名和密码的用户?我可以使用IsDBNull()
方法完成此操作吗?我在其他网站上通过以下链接问过:
link
,但在那里没有得到足够的答案。
预先感谢!
答案 0 :(得分:1)
IsDBNull(int)
方法检查您从数据库中读取的特定索引是否为空。
例如,如果您的查询是:
select 1,null;
IsDBNull(0)
将返回false
(因为第一个字段是1
),而IsDBNull(1)
将返回true
(因为它返回{{1 }}。
注意:在从可为空的列中读取值之前,最好将其用作安全检查。
答案 1 :(得分:0)
按要求回答问题...
我假设您的意思是MySQL版本的SqlDataReader.IsDBNull(Int32)(IsDbNull(int) docs)。确实做到了那些文档所说的话。
如果您正在从数据读取器(实现IDataReader
的设备上读取记录),则可以使用'IsDbNull(zeroIndexedColumnNumber)`测试特定字段(/列)的值是否为NULL。
检查“ [用户名和密码”是否在数据库表中”并没有多大用处。为此,请使用@TimSchemlter的建议:
SELECT 1 FROM TblUser WHERE Username=@username AND Password=@password.
然后使用MySqlCommand.ExecuteReader并检查其HasRows属性