处理SFTP服务器上已离职用户,设置为登录禁用状态

测试用户禁用SQL

select Enabled,LoginID from suusers where LoginID = 'yangwl'

update suusers set Enabled=1 where LoginID = 'yangwl'

 

查询禅道已删除用户,导出禅道已deleted用户

select account from zt_user where deleted = '1'

 

创建禅道关联表查询备用表
CREATE TABLE IF NOT EXISTS zt_user (
   account VARCHAR(255)  NOT NULL
) ;

 

关联表查询SFTP用户数据库

select * from zt_user right join suusers on zt_user.account = suusers.LoginID 

 

查询数据表

 

select * from zt_user left join suusers on zt_user.account = suusers.LoginID where suusers.LoginID is not null 

 

更新SFTP数据库 - 报错-原因:不能先select出同一表中的某些值,再update这个表(在同一语句中)

 

update suusers set Enabled=0 where LoginID in (select LoginID from zt_user left join suusers on zt_user.account = suusers.LoginID where suusers.LoginID is not null)

解决:

创建临时表:

create table tmp as select LoginID from zt_user left join suusers on zt_user.account = suusers.LoginID where suusers.LoginID is not null
更新SFTP用户数据库及表
update suusers set Enabled=0 where LoginID in (select LoginID from tmp)

 

验证,更新完成

posted @ 2017-05-31 16:41  YatHo  Views(661)  Comments(0Edit  收藏  举报