ALTER PROCEDURE Chinaz_News_Replace
@oldWord varchar(1000), -- 源字符串
@newWord varchar(1000), -- 新字符串
@Filed varchar(1000) --数据库字段
AS
declare @strSQL varchar(6000) -- 主语句set @strSQL = 'UPDATE Chinaz_News SET
'+@Filed+'=REPLACE('+@Filed+ ',''' +@oldWord+''','''+@newWord+''''+')'exec (@strSQL)当Filed为ntext类型的时候就报错了~~应该怎么该才能ntext和varchar通用
或者单独为ntext写一个该怎么写
@oldWord varchar(1000), -- 源字符串
@newWord varchar(1000), -- 新字符串
@Filed varchar(1000) --数据库字段
AS
declare @strSQL varchar(6000) -- 主语句set @strSQL = 'UPDATE Chinaz_News SET
'+@Filed+'=REPLACE('+@Filed+ ',''' +@oldWord+''','''+@newWord+''''+')'exec (@strSQL)当Filed为ntext类型的时候就报错了~~应该怎么该才能ntext和varchar通用
或者单独为ntext写一个该怎么写
解决方案 »
- Service Broker 问题,超难 100分
- 谁有时间帮我写个简单的查询?
- 求一sql语句啊
- MS Management Studio的查詢結果的Results to Grid從那里能取消
- reporting services 设置了参数以后,参数只能在表的最上面显示吗?
- 如何用sql語句建Access數據庫啊?
- sql2005数据加密和解密
- 小妹求救:日期相减,在Access里实现了,在SQL Server里怎么不行了呢?
- 求教reporting services的高难问题-----高手请进!!急!!!!
- Sql server 索引重新生成
- 定义主键问题
- 求一条SQL语句的写法,关于max的
@oldWord varchar(1000), -- 源字符串
@newWord varchar(1000), -- 新字符串
@Filed as varchar(8000) --数据库字段
AS
declare @strSQL varchar(6000) -- 主语句set @strSQL = 'UPDATE Chinaz_News SET
'+@Filed+'=REPLACE('+@Filed+ ',''' +@oldWord+''','''+@newWord+''''+')'exec (@strSQL)还是不行:函数 replace 的参数 1 的数据类型 ntext 无效。
而数据库支持从Text到nvarchar的隐式转换,也可以将 text 数据显式转换为字符数据,但是最大长度为 8000。如果尝试进行不正确的转换,则 SQL Server 会产生错误信息。
http://community.csdn.net/Expert/topic/4976/4976385.xml?temp=.6665003
@Filed as varchar(8000)
改为 @Filed as ntext的
时候报错:对数据类型而言运算符无效,运算符为ADD
ntext的时候该怎么写?