powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Разница между isqlw.exe, isql.exe, osql.exe
12 сообщений из 12, страница 1 из 1
Разница между isqlw.exe, isql.exe, osql.exe
    #32033850
Vitaly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Необходимо запустить скрипт на SQL Server-е с помощью утилиты isql или osql!

Первоначально я использовал isqlw и все работало прекрасно, но вдруг понадобилось использовать другую утилиту: isql.exe, osql.exe

Если подаю тот же скрипт на вход утилите isql.exe или osql.exe то нифига не получается...

В чем проблема?
...
Рейтинг: 0 / 0
Разница между isqlw.exe, isql.exe, osql.exe
    #32033855
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что значит нифига не получается ?
Какая ошибка?

Для проигрывания скрипта используете нечто в этом роде?
Код: plaintext
1.
osql -S localhost -d master -E -n -o tmp_log.txt -i myscript.sql


Удачи
...
Рейтинг: 0 / 0
Разница между isqlw.exe, isql.exe, osql.exe
    #32033857
Vitaly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пишу:
isqlw.exe -S <сервер> -d <база> -U sa -P master -i <файл скриптов> -o <лог файл>

работает все замечательно,

потом запускаю:

osql.exe -S <сервер> -d <база> -U sa -P master -i <файл скриптов> -o <лог файл>

в лог файл пишется что-то типа (похоже какие-то проблемы с кодировкой). В чем проблема???

1> 2> 3> 4> 5> 6> 7> 8> 9> 10> 11> 12> 13> 14> 15> 16> 17> 18> 19> 20> 21> 22> 23> 24> 25> 26> 27> 28> 29> 30> 31> 32> 33>
----------------------------------------------------------------------
------------------------------
Tкриптv обновления базv

Tервер запуска: local +аза: test
-ата запуска: 25.06.2002 Tремя: 17:00:17
----------------------------------------------------------------------
------------------------------
<- іапуск обновления.
<- +ткрvвается транзакция....
1> 2> 3> 4> 5> 6> 7> 8> 9> 10> 11> 12> 13> 14> 15> 16> 17> 18> 19> 20> 21> 22> 23> 24> 25> 26> 27> 28> 29> 30> 31> 32> 33> 34> 35> 36> 37> 38> 39> 40> 41> 42> 43> 44> 45> 46> 47> 48> 49> 50> 51> 52> 53> 54> 55> 56> 57> 58> 59> 60> 61> 62> 63> 64> 65> 66> 67> 68> 69> 70> 71> 72>
...
Рейтинг: 0 / 0
Разница между isqlw.exe, isql.exe, osql.exe
    #32033916
Vitaly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема так и не решилась?
...
Рейтинг: 0 / 0
Разница между isqlw.exe, isql.exe, osql.exe
    #32033960
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это не проблемы с кодировкой. Это выводятся номера строк.
Попробуйте добавить опцию -n:
osql.exe -n -S <сервер> -d <база> -U sa -P master -i <файл скриптов> -o <лог файл>

И вообще:
osql.exe /?
...
Рейтинг: 0 / 0
Разница между isqlw.exe, isql.exe, osql.exe
    #32033970
Vitaly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо! -n помогло - перестали выводиться эти дурацкие
номера. Но проблема не решилась.????
Вот текст скрипта который пытаюсь запустить:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
Print '
%af_src_commbr_0
	Скрипты обновления базы

	Сервер запуска:   '	 + @@SERVERNAME + '  База: ' + DB_NAME() + '
	Дата запуска:   '	+ convert(varchar,GetDate(), 104 ) + '  Время: ' +convert(varchar,GetDate(), 108 ) + '
%af_src_commbr_1

Print '<- Запуск обновления. '

Print '<- Открывается транзакция....
'

set transaction isolation level read uncommitted
go

begin transaction

Print '<-  Сообщаем о том что процесс начался UpgradeRunning
'
 /*
	По этой таблице проверяется: идет ли транзакция или уже закончилась
	1. Наличие записи означает, что идет процесс Upgrade базы данных
	2. Как только запись исчезнет из этой таблицы - значит процесс обновления закончился
*/ 
insert into ##UpgradeRunning(Code)
values( 1 )


А вот его вывод в лог файле (через isqlw все прекрасно работает):
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
 ----------------------------------------------------------------------
 
 ------------------------------
 
	Tкриптv обновления базv

	Tервер запуска:   local  +аза: test
	-ата запуска:    26 . 06 . 2002   Tремя:  13 : 24 : 27 
 ----------------------------------------------------------------------
 
 ------------------------------
 
<- іапуск обновления.
<- +ткрvвается транзакция....
<-  Tообаем о том что процесс начался UpgradeRunning
Msg  208 , Level  16 , State  1 , Server SQL70, Procedure , Line  1 
[Microsoft][ODBC SQL Server Driver][SQL Server]Invalid object name
'##UpgradeRunning'.
...
Рейтинг: 0 / 0
Разница между isqlw.exe, isql.exe, osql.exe
    #32034008
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А ##UpgradeRunning точно существует? Попробуйте добавить в скрипт:
Код: plaintext
1.
select object_id( "tempdb..##UpgradeRunning" )
...
Рейтинг: 0 / 0
Разница между isqlw.exe, isql.exe, osql.exe
    #32034010
Vitaly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да дело, собственно, не в ##UpgradeRunning
(это процедура хоть и создается на другом connection-е, но она точно существует, потому как этот же скрипт запущенный через isqlw никаких ошибок не выдает)

Дело в том, что osql выводит всякую чушь:

"С" заменяет на "T"
вместо "ы" печатает "v"
вместо "о" - "+"
и т.д. .....
(поэтому скорее всего он неправильно интерпретирует и название хранимой процедуры ##UpgradeRunning)

С чем это может быть связано?
...
Рейтинг: 0 / 0
Разница между isqlw.exe, isql.exe, osql.exe
    #32034019
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дело, собственно, в конвертации символьных данных (опция Automatic ANSI to OEM conversion в SQL Server Client Network Utility). Сборьте флажок и isql заработает.

Про osql сказать не могу, т.к. он работает через ODBC.

Удачи
...
Рейтинг: 0 / 0
Разница между isqlw.exe, isql.exe, osql.exe
    #32034043
Vitaly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо!

Полегчало.

,но скрипт все-равно выдает ошибки :-)
...
Рейтинг: 0 / 0
Разница между isqlw.exe, isql.exe, osql.exe
    #32034045
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какие именно ошибки - уже не связанные с кириллицей?
...
Рейтинг: 0 / 0
Разница между isqlw.exe, isql.exe, osql.exe
    #32034050
Vitaly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Почти не связанные :-)

Если не учитывать то, что он два раза в лог пишет символ возврат каретки
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Разница между isqlw.exe, isql.exe, osql.exe
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]