二见钟情之SQL语句嵌套查询

	这次机房收费系统折腾了七八次,刚开始的时候是因为不会,现在再改是因为自己不够满意,总觉得还能做得更好一点,所以就推倒重来;然后又推倒,又重来,貌似有瘾一样,不过确实该快点了,不然等自己满意了就该过年了。ps:不管多完美,总会有不足,不能没完没了。
	这篇博客主要是想纪念一下刚尝试成功的SQL 语句嵌套查询。其实以前不管是学数据库基础还是自考的时候,都接触过嵌套查询,但是从来没有尝试过,这次做机房收费系统,发现好多地方都会用到,第一次是在修改密码的时候,刚开始的时候觉得要好几步才能完成修改,就想着把SQL语句组合一下,函数只写一个。下面,就以修改密码为例来说一下那个SQL语句。
	首先,要想修改密码,第一步要做的就是要查询正在登录对教师工作记录,通过教师工作记录的登录状态为“已登录”来锁定要修改用户。
	其次,锁定了用户以后就要通过该用户的用户ID去用户表中查询,继而锁定要修改的密码
	最后,通过UPDATE来修改密码。
完整的SQL语句是这样的:
	update [T_User] set Password = @Password where Password=(select Password from [T_User] where UserID=(select UserID  from [T_TeacherWorkLog] where Condition = '已登录'))
	由于这个SQL语句比较长,不太好看,所以给它换个行会更好一点:
 
 "update [T_User] set Password = @Password  where Password " +
 "=(select Password from [T_User] where UserID=(select UserID "+
 "from [T_TeacherWorkLog] where Condition = '已登录'))"
             
	换行的时候要注意一下,在要换行的地方添加一个"+",在添加"+"之前要记得添加空格,否则换行之后会出现错误。

你可能感兴趣的:(.net)