如何把数据库中读取的字符串截取到指定长度

如何把数据库中读取的字符串截取到指定长度,第1张

1数据库读取字段截取

select

substring(Name,0,5)+

''

as

Tname

from

T_MobileBusiness

分割字段查询其他的用代号代替

方法一:在aspx页中写代码。比如,你需要截取30个字符,多于30个字符的话,用前30个字符加省略号表示。

<%#Eval("your_string")ToString()Length30Eval("your_string")ToString()Substring(0,30)+"":Eval("your_string")%

其中your_string"表示你要绑定的字段名。

方法二:在aspxcs页写代码。还是用StringSubstring()方法。你可以从数据库select时就使用该方法(准确的说,是SQL系统函数),或者把字段内容全部select出来,再使用Substring()方法。

select

substring('我们是',0,2)

结果为我们;

汉字一个字占两个字符

英文一个字母占一个字符

数字也是一个字符

中文标点

2字节

英文标点

1字节

新建一个查询,切换到SQL视图,输入:

SELECT , Left(内容,400) AS 新内容

FROM 表名;

以后在ASP查询的时候就把这个查询当表用就行了

注意:我看到很多人回答的都是800,实际上在Access中,对于字符串长度的计算一个英文和一个汉字的长度都是1,因此用400就可以了。

--提取数字

IF OBJECT_ID('DBOGET_NUMBER2') IS NOT NULL

DROP FUNCTION DBOGET_NUMBER2

GO

CREATE FUNCTION DBOGET_NUMBER2(@S VARCHAR(100))

RETURNS VARCHAR(100)

AS

BEGIN

WHILE PATINDEX('%[^0-9]%',@S) > 0

BEGIN

set @s=stuff(@s,patindex('%[^0-9]%',@s),1,'')

END

RETURN @S

END

GO

--测试

PRINT DBOGET_NUMBER('呵呵ABC123ABC')

GO

--123

--------------------------------------------------------------------

--提取英文

IF OBJECT_ID('DBOGET_STR') IS NOT NULL

DROP FUNCTION DBOGET_STR

GO

CREATE FUNCTION DBOGET_STR(@S VARCHAR(100))

RETURNS VARCHAR(100)

AS

BEGIN

WHILE PATINDEX('%[^a-z]%',@S) > 0

BEGIN

set @s=stuff(@s,patindex('%[^a-z]%',@s),1,'')

END

RETURN @S

END

GO

--测试

PRINT DBOGET_STR('呵呵ABC123ABC')

GO

--------------------------------------------------------------------

--提取中文

IF OBJECT_ID('DBOCHINA_STR') IS NOT NULL

DROP FUNCTION DBOCHINA_STR

GO

CREATE FUNCTION DBOCHINA_STR(@S NVARCHAR(100))

RETURNS VARCHAR(100)

AS

BEGIN

WHILE PATINDEX('%[^吖-座]%',@S) > 0

SET @S = STUFF(@S,PATINDEX('%[^吖-咗]%',@S),1,N'')

RETURN @S

END

GO

PRINT DBOCHINA_STR('呵呵ABC123ABC')

GO

sql截取第一个汉字转换为星号

sql怎样提取第一个字符的方法用到的是substring() 方法用于提取字符串中介于两个指定下标之间的字符。

1 返回值

一个新的字符串,该字符串值包含 stringObject 的一个子字符串,其内容是从 start 处到 stop-1 处的所有字符,其长度为 stop 减 start。

2说明

2 substring() 方法返回的子串包括 start 处的字符,但不包括 stop 处的字符。

3 如果参数 start 与 stop 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。如果 start 比 stop 大,那么该方法在提取子串之前会先交换这两个参数。

以上就是关于如何把数据库中读取的字符串截取到指定长度全部的内容,包括:如何把数据库中读取的字符串截取到指定长度、access的数据库 字段截取问题、sql 提取数字、字母、汉字等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9509541.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存