有两个string变量,一个是pwd,一个是pwdtemp
pwd是直接读取控件上的值,
pwdtemp是从数据库中读取一个值.
用 if (pwd == pwdtemp) 来判断两个字符串是否相等,
数据库里面,值是 111 后面没有空格,类型 char 长度 10
但是程序读的时候,就会有空格,如上图所示.
请问为什么?
应该怎么处理?
有两个string变量,一个是pwd,一个是pwdtemp
pwd是直接读取控件上的值,
pwdtemp是从数据库中读取一个值.
用 if (pwd == pwdtemp) 来判断两个字符串是否相等,
数据库里面,值是 111 后面没有空格,类型 char 长度 10
但是程序读的时候,就会有空格,如上图所示.
请问为什么?
应该怎么处理?
建议将数据库的类型改为varchar(10)即可以节省空间,还不会出现你的错误
你也可以在比较的时候先去空格if (Trim(pwd) == Trim(pwdtemp))
读取多个数据可以采用这个方法
public DataTable getDataTable(string sql)
{
SqlDataAdapter sda = new SqlDataAdapter(sql, conn);//查询语句,连接对象
DataTable dt = new DataTable();
try
{
sda.Fill(dt);
return dt;
}
catch
{
return null;
}
}
你可能没有使用 Char VarChar 这样的数据类型,这些数据的长度是固定的。
你可以改为 NChar NVarChar 。
程序控制的话你需要 pwdtemp = cmd.ExecuteScalar().ToString().Trim(); //去除空格