m_id,m_user,m_content,Convert(varchar(10),m_date,120)as m_date1,(m_content.length > 25 ? m_content. as m_content1 : substring(m_content,0,25)as m_content1) from Pmessage這樣判斷m_content的長度是否大于25,是則取前面的否則取后面的,出错了,提示">"附近出错!
解决方案 »
- 问一个fclediter的问题
- 这样一个函数公式,我要算出结果的代码,只提示和路过的就表进哈!~
- JS 集合类的对象定义问题
- 关于读取数据库问题!
- remoting 是否能够部署在广域网
- 格式问题
- javascript的问题!帮帮忙好吗?在线等!
- 向数据库导入Excel表出错
- 关于在DataList中绑定DropDownList的问题:
- 我在datagrid中加了2个template column,一个里面加了个textbox,一个是label。通过修改textbox里的值,使label显示不同的值。
- 如何实现table的效果? ul li
- 求助:VS2008 JS文件无法高亮显示,且所有数字都显示为二进制
但是有这个 IIF, 其一定意义上也是 三元运算符 ,呵呵
IIF(条件,条件成立时返回内容,条件不成立时返回内容)IIf 函数:http://msdn.microsoft.com/zh-cn/library/27ydhh0d.aspxVisual Basic 2008 新引入了一个使用短路计算的 If 运算符。
让编程更加简便了,减少IIF中nothing的判断
第 1 行: '>' 附近有语法错误。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Data.SqlClient.SqlException: 第 1 行: '>' 附近有语法错误。源错误:
行 31: sda.SelectCommand = new SqlCommand("select m_id,m_user,m_content,Convert(varchar(10),m_date,120)as m_date1,IFF(m_content.length>25,m_content,substring(m_content,0,25)) as m_content1 from Pmessage", con);
行 32: DataSet ds = new DataSet();
行 33: sda.Fill(ds, "Mes");
行 34: this.Mes.DataSource=ds.Tables["Mes"];
行 35: this.Mes.DataKeyNames=new string[] {"m_id"};
select case when len(m_content) >25 then m_content else substring(m_content,0,25) end as m_content from Pmessage
或者直接就截取
select substring(m_content,0,25) as m_content from Pmessage
select case when len(m_content) >25 then substring(m_content,0,25) else m_content end as m_content from Pmessage 或者直接就截取 select substring(m_content,0,25) as m_content from Pmessage
我用了上面的,还出错:
异常详细信息: System.Data.SqlClient.SqlException: 函数 len 的参数 1 的数据类型 text 无效。m_conetnt 是text类型 为什么会无效的?
把 len 修改为:datalengthselect
case when datalength(m_content) >25 then substring(m_content,0,25)
else m_content end as m_content
from Pmessage
SQL server:是微软推出的,基于SQL(符合该规范)的数据库系统。它跟C#不是同一个东西。
不要再搞混咯
后台代码:
SqlConnection con = Dcon.createConnection();
SqlDataAdapter sda = new SqlDataAdapter();
sda.SelectCommand = new SqlCommand("select m_id,m_user,m_content,Convert(varchar(10),m_date,120)as m_date1,case when datalength(m_content) >50 then substring(m_content,0,25)+'...' else m_content end as m_content1 from Pmessage", con);
DataSet ds = new DataSet();
sda.Fill(ds, "Mes");
this.Mes.DataSource=ds.Tables["Mes"];
this.Mes.DataKeyNames=new string[] {"m_id"};
this.Mes.DataBind();