背景是要做一个查询用户和用户权限的用户中心,使用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.)
有人怀疑是表的问题,可实在不知道问题出在什么地方
希望有高手帮忙解决
感谢