背景是要做一个查询用户和用户权限的用户中心,使用Mysql数据库。
查询其他表都OK,唯独权限表通过代码查询后结果为空。
先上表结构和代码:
表结构
CREATE TABLE Permission
(PermissionID
varchar(3) ,PermissionName
varchar(100) ,CreateDate
datetime ,CreateUserID
char(6) ,UpdateDate
datetime ,UpdateUserID
char(6) ,ValidFlag
int(1)
)
代码
private const string SQL_GetPermissionInfo = @"
SELECT
PermissionID
,PermissionName
,CreateDate
,CreateUserID
,UpdateDate
,UpdateUserID
,ValidFlag
FROM
Permission
WHERE
1=1 ";
public static DBResponse GetPermissionInfo(DBRequest dbRequest, string PermissionID)
{
StringBuilder sqlStr = new StringBuilder();
sqlStr.Append(SQL_GetPermissionInfo);
MySqlParameter[] paras = null;
if (!string.IsNullOrEmpty(PermissionID))
{
paras = new MySqlParameter[]{
new MySqlParameter("@PermissionID ",PermissionID )
};
sqlStr.Append(" and PermissionID = @PermissionID ");
}
return ExecuteDataset(dbRequest, sqlStr.ToString(), paras);
}
1、跟@ 和 ? 没有关系,这个已经实际测试过
2、连接串上有加Allow User Variables=True,不加会报错(Fatal error encountered during command execution.)
有人怀疑是表的问题,可实在不知道问题出在什么地方
希望有高手帮忙解决
感谢