sybase中的默认文本大小

时间:2012-01-18 09:41:21

标签: sybase

sybase中的默认文本大小为32768。 当我登录sybase并输入:

时,我可以看到这一点
1> select @@textsize
2> go

 ----------- 
       32768 

(1 row affected)

当我做一些谷歌搜索时,我得到的信息是使用set命令我可以将默认的textsize更改为我自己的值

1> set textsize 42768
2> go
1> select @@textsize
2> go

 ----------- 
       42768 

(1 row affected)

但我的问题是这不是坚持。 一旦我结束会议,它就会回到32768。

有谁知道如何在sybase中永久更改默认文本大小。

2 个答案:

答案 0 :(得分:1)

没有办法坚持这一点,必须根据需要在每个会话中设置它。 sp_configure没有相应的参数。

http://infocenter.sybase.com/help/topic/com.sybase.infocenter.dc31654.1570/html/sag1/X68714.htm

如果在存储过程中设置了该设置,则该设置将持续存储过程的范围。

select @@textsize
go
create procedure test_textsize as
set textsize 123456
select @@textsize
go
exec test_textsize
go
select @@textsize
go

结果

 session_textsize 
 ---------------- 
            32768 

(1 row affected)
 proc_textsize 
 ------------- 
        123456 

(1 row affected)
(return status = 0)
 session_textsize 
 ---------------- 
            32768 

(1 row affected)

Sybase ASE 16的更新

这可以使用登录的默认数据库中的登录触发器来实现。

create procedure login_trigger as
set textsize 12345
go

将登录触发器添加到用户帐户。

sp_modifylogin a_login, "login script", login_trigger
go

在另一个isql会话中测试:

$ isql -U a_login -S SOME_ASE
Password: 
1> select @@textsize
2> go

 ----------- 
       12345 

(1 row affected)
1> 

答案 1 :(得分:0)

来自HERE


set textsize命令指定要使用select语句返回的文本或图像数据的限制(以字节为单位)。例如,此命令将使用select语句返回的文本或图像数据的限制设置为100字节:

set textsize 100 

当前设置存储在@@ textsize全局变量中。 默认设置由客户端程序控制。要重置默认设置,请发出:

set textsize 0

我认为配置服务器时配置了默认值。