стандартный размер текста в sybase - PullRequest
1 голос
/ 18 января 2012

размер текста по умолчанию в sybase - 32768. я могу увидеть это, когда войду в sybase и наберу:

1> select @@textsize
2> go

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

(1 row affected)

когда я занялся поиском, я получил информацию, что с помощью команды set я могу изменить размер текста по умолчанию на свое собственное значение

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

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

(1 row affected)

Но моя проблема здесь в том, что это не сохраняется. как только я закрываю сессию, она возвращается к 32768.

Кто-нибудь знает, как я могу навсегда изменить размер текста по умолчанию в sybase.

Ответы [ 2 ]

1 голос
/ 12 октября 2014

Нет способа сохранить это, оно должно быть установлено в каждом сеансе, как требуется. Для 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> 
0 голосов
/ 18 января 2012

С ЗДЕСЬ !


Команда set textize указывает ограничение в байтах текстовых или графических данных, которые должны быть возвращены с помощью оператора select. Например, эта команда устанавливает ограничение для текстовых или графических данных, возвращаемых с оператором select, равным 100 байтов:

set textsize 100 

Текущая настройка сохраняется в глобальной переменной @@ textize. Настройка по умолчанию контролируется клиентской программой. Чтобы сбросить настройку по умолчанию, введите:

set textsize 0

Я думаю, что значение по умолчанию настраивается при настройке сервера.

...