社区
MS-SQL Server
帖子详情
text类型字段修改
wahva
2006-09-06 06:20:56
数据表user中有detail字段,保留detail字段内容并追加"2006",怎么追加?
...全文
236
8
打赏
收藏
text类型字段修改
数据表user中有detail字段,保留detail字段内容并追加"2006",怎么追加?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
baggio785
2007-02-09
打赏
举报
回复
看错了,上面写的是更新的
如果是结尾处追加
起始位置
select datalength(字段名)/2 from 表名
结束位置写成0就可以了
baggio785
2007-02-09
打赏
举报
回复
declare @ptrval binary(16)
select @ptrval = textptr(字段名) from 表名 where条件
update 表名.字段名 @ptrval 起始位置 结束位置 替换的字符
计算起始位置
select patindex('%字符串%',字段名) from 表名
计算结束位置
select len('字符串')
cloudtarget
2007-02-08
打赏
举报
回复
--测试数据
CREATE TABLE tb(col ntext)
-- 插入
INSERT tb VALUES(REPLICATE( '0001,000,',1))
--查看
select * from tb
--结果
/*
0001,000,
*/
-- 追加数据
DECLARE @p binary(16)
SELECT @p=TEXTPTR(col) FROM tb
UPDATETEXT tb.col @p NULL 0 tb.col @p--值为 NULL 则将新数据追加到现有数据值中。
--值为 0 表示不删除数据。
--查看
select * from tb
--结果
/*
0001,000,0001,000,
*/
--重新写内容
WRITETEXT tb.col @p 'text内容'
--查看
select * from tb
--结果
/*
text内容
*/
--追加数据
DECLARE @s VARCHAR(800)
set @s='追加......!'
UPDATETEXT tb.col @p null 0 @s
--查看
select * from tb
--结果
/*
text内容追加......!
*/
--删除测试表
drop table tb
cloudtarget
2007-02-08
打赏
举报
回复
updatetext就可以了
wahva
2006-09-06
打赏
举报
回复
lxzm1001,这个字段的值部分超过了8000字符
lxzm1001
2006-09-06
打赏
举报
回复
不好意思,会说,却把cast(detail as varchar(8000))漏掉了
csdnweii
2006-09-06
打赏
举报
回复
update user set detail=cast(detail as varchar(8000))+'2006'
lxzm1001
2006-09-06
打赏
举报
回复
如果没超过8000字符?
update user set detail=detail+'2006'
liquibase-添加MySQL的
text
类型
字段
liquibase-添加MySQL的
text
类型
字段
达梦数据库之
修改
字段
类型
-varchar改为
text
1、在达梦数据中心,直接将varchar
类型
修改
为
text
类型
会报错:数据
类型
的变更无效, 如将KF数据库中标base_case中case_name
字段
的
类型
由varchar改为
text
alter table KF.BASE_CASE modify(CASE_NAME
text
) 2、一个有效的变更方法 (1)增加一个为
text
类型
的
字段
case_name1 alter table KF.BASE_CASE add case_name1
text
; (2)将case_name
字段
的值赋给c
达梦数据库
修改
字段
类型
-从
TEXT
类型
改为int
类型
达梦数据库不支持直接从
text
类型
改为int的数据
类型
; 所以得新建
字段
,从
text
复制到varchar
类型
,再将
字段
改为 int
类型
sql过程,假设现在有表a,
字段
为a_col,
字段
类型
为
text
要将 a_col改为 int
类型
-- 新建
字段
alter table a modify a_col_bak varchar(20); --
字段
原值赋值 update a set a_col_bak = a_col; --
修改
新
字段
类型
为int alter table a modify a_c
mysql 将
字段
属性
修改
成
text
类型
-- 将表 xxx_sheet
字段
xxx_content
类型
改成
text
ALTER TABLE xxx_sheet CHANGE xxx_content xxx_content
TEXT
;
达梦数据库将
TEXT
类型
的
字段
更改为VARCHAR失败
达梦数据库将
TEXT
类型
的
字段
更改为VARCHAR失败 问题原因 mysql数据库迁移至达梦系统后,查询
TEXT
大文本
类型
的
字段
时发现返回的是对象信息而不是文本信息 查询截图 排查半天没发现问题,后面想到将
TEXT
类型
的
字段
改成VARCHAR
类型
,所以马上去数据库进行
修改
修改
截图 然后发现又不能
修改
,简直不忍直视的管理工具和数据库 - - 问题解决 经过与达梦的研发沟通,发现大文本
类型
不能直接...
MS-SQL Server
34,838
社区成员
254,632
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章