4

我的要求是声明一个接受最大大小的 xml 值的数据类型。
问题:Sybase 中是否有 text、xml 或 varchar(max) 数据类型?

4

2 回答 2

3

有文本数据类型。您可以在此处找到更多信息。

如何通过程序使用它:

create procedure settxt
(
  @txt text
)
as
begin
  select @txt
end

如何运行程序:

declare @txt  text
select @txt = 'Hello world'
execute settxt @txt

该代码适用于我,但可能不适用于所有人。

这是临时表的解决方案:

create table #texttab
(
  txt varchar(100)
)
go
insert into #texttab
values ('Hello ')

insert into #texttab
values  (' wolrd!')
go
create procedure settxt
as
begin
  declare @txt text, 
          @txtval varchar(100)  

  select @txt=' '

  declare curTXT cursor for 
  select txt from #texttab


  open curTXT
  fetch curTXT into @txtval  
  while @@sqlstatus=0 begin
    select @txtval
    select @txt=@txt+@txtval
    select @txt
    fetch curTXT into @txtval
  end
  close curTXT
  deallocate cursor curTXT

  select @txt

end
go
execute settxt
于 2013-02-25T18:36:05.780 回答
3

Sybase ASE 15.7 及更高版本支持存储过程中的参数和变量中的文本数据类型(这是我的支持)。早期版本取决于页面大小,例如,页面大小为 2k 的服务器最多可以处理 16,348 个字符。另一个想法是以不同的方式存储数据,例如将大对象写入文件并仅将文件名保存在数据库中。

于 2013-10-01T00:12:56.963 回答