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 文字で動作します。もう 1 つのアイデアは、別の方法でデータを保存することです。たとえば、大きなオブジェクトをファイルに書き込み、ファイル名のみをデータベースに保存します。

于 2013-10-01T00:12:56.963 に答える