日期:2014-05-18  浏览次数:20503 次

问一个存储过程中返回一个以上值的语句
SQL code
else if @Expression='teachersContract'  --返回教师入校年数,教师合同开始时间、教师合同结束时间
    select DATEDIFF(YY,contractStartTime,contractEndTime)+'年<BR>&nbsp;'+CONVERT(varchar(10),contractStartTime,120)+' ~ '+CONVERT(varchar(10),contractEndTime,120) from TeachersInfo where teachersNo=@Tag




页面上有一个Label的ID是teachersContract,遇到这个ID,就返回教师的入校年数,然后换行,再显示此教师的合同开始时间以及合同结束时间

我写的这个语句报错,但是如果删除入校年数,只保留教师合同开始时间、教师合同结束时间,却是可以正常显示的,这是为什么呢?

SQL code
else if @Expression='teachersContract'  --返回教师入校年数,教师合同开始时间、教师合同结束时间
    select CONVERT(varchar(10),contractStartTime,120)+' ~ '+CONVERT(varchar(10),contractEndTime,120) from TeachersInfo where teachersNo=@Tag


这一句显示正确,上一句显示错误

------解决方案--------------------
你就返回教师的入校年数,然后换行 在前台处理吧,为啥还要让sql帮你换行呢
------解决方案--------------------
嗯 建议在前台出来换行 入校年数你可以在后台计算 数据库返回合同开始结束时间就好了 会比较灵活一点
------解决方案--------------------
客户端的问题客户端做