select substring(内容,1,20)from notepaper Order by id desc
select id,标题,内容=substring(内容,1,20)+'...',日期 from notepaper Order by id desc;
这个还不是易过借火,我不吸烟都有打火机:-) 我记得sql server存储中文其实用双字节,例如,如果你的字段是varchar(10),你插入中文,其实只可以插入5个中文,所以插入时候10个汉字只能插入5个,例子: create table R (sn varchar(10),des varchar(10)) insert into R values('4','抹茶蛋糕好吃')--抹茶蛋糕好吃:10个汉字 /* Server: Msg 8152, Level 16, State 9, Line 1 String or binary data would be truncated. The statement has been terminated. */select * from R /* sn des ---------- ---------- (0 row(s) affected) */ 插入不成功insert into R values('4',left('抹茶蛋糕好吃',10))--也是同样插入不进去 insert into R values('4',left('抹茶蛋糕好吃',5)) --这个就可以啊 declare @str as varchar(20) set @str ='抹茶蛋糕好吃' set @str = left(@str,(col_length('R','des') * len(@str)) /datalength(@str)) insert into R values('4',@str) /* (1 row(s) affected) */select * from R /* sn des ---------- ---------- 4 抹茶蛋糕好 --插入了5个字符(1 row(s) affected)*/用substring,left,right取得时候一个中文字符认为长度是1,但是insert,update时候就要注意长度实际是2仅供参考~~
create table R (sn varchar(10),des varchar(10))
insert into R values('4','抹茶蛋糕好吃')--抹茶蛋糕好吃:10个汉字
/*
Server: Msg 8152, Level 16, State 9, Line 1
String or binary data would be truncated.
The statement has been terminated.
*/select * from R
/*
sn des
---------- ---------- (0 row(s) affected)
*/
插入不成功insert into R values('4',left('抹茶蛋糕好吃',10))--也是同样插入不进去
insert into R values('4',left('抹茶蛋糕好吃',5)) --这个就可以啊
declare @str as varchar(20)
set @str ='抹茶蛋糕好吃'
set @str = left(@str,(col_length('R','des') * len(@str)) /datalength(@str))
insert into R values('4',@str)
/*
(1 row(s) affected)
*/select * from R
/*
sn des
---------- ----------
4 抹茶蛋糕好 --插入了5个字符(1 row(s) affected)*/用substring,left,right取得时候一个中文字符认为长度是1,但是insert,update时候就要注意长度实际是2仅供参考~~