Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Microsoft SQL Server

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

Открыть новую тему     Написать ответ в эту тему

Megard

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MICROSOFT SQL SERVER
 
тема посвящена выяснению ответов на вопросы, касающихся установки, функционирования и использования Microsoft SQL Server; также обсуждаются вопросы, касающиеся использования T-SQL (диалект SQL-языка, используемого в этой версии сервера)
 
популярные ответы на популярные вопросы "где скачать?" и "чем сломать?" можно найти здесь

 
 
Официальная документация:
SQL Server 2005 Books Online (original/english, 135MB, september 2007);
SQL Server 2005 Books Online (перевод/русский, 148MB, январь 2009);
 
 
Официальные обновления:
[для версий, начиная с 9.0.3042] / [полный перечень обновлений / зеркало]
03/06/2007: KB933508 (9.0.3042 > 9.0.3050);
04/03/2007: KB934458 (9.0.3050 > 9.0.3054);
04/03/2007: KB934459 (9.0.3054 > 9.0.3159);
06/28/2007: KB936305 (9.0.3159 > 9.0.3175);
 
 
Альтернативные источники информации:
sql.ru - очень полезный ресурс с говорящим за себя названием; пожалуй, лучший (если не единственный) на просторах ru'нета; кроме форумов есть большая подборка статей, FAQ, и прочее.

Всего записей: 135 | Зарегистр. 13-09-2002 | Отправлено: 11:49 18-07-2003 | Исправлено: niichavo, 16:13 02-04-2010
naPmu3aH



Из лесу вышел
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Э.... А запихнуть всё в один справочник добавив поле LanguageID с ISO кодом языка, а потом в программе выбирать нужные данные (скажем с помощью хранимой процедуры) возвращая нужный псевдоним на передаваемого в процедуру CultureID (или любого другого подходящего способа получения нужного языка для приложения)?

----------
Ну і хто тебе кликав, чому ти прийшла, Стара проститутка, сука-війна? Хто тобі платить за наші тіла? Скільки ще тобі треба, яка їх ціна?

Всего записей: 4642 | Зарегистр. 30-10-2001 | Отправлено: 21:52 21-02-2012
karakurt2



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
да, мне нравится эта идея.

Всего записей: 733 | Зарегистр. 06-12-2003 | Отправлено: 00:30 22-02-2012
Undaster

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Прошу помощи у умудрённых опытом / знаниями, есть следующий тестовый кусок в SQL 2008 R2:
 
"DDL-описание объектов"
 
фрагмент триггера (INSTEAD OF) на представление - пока пытаюсь отладить через обычный запрос:
Код:
(1) insert into tstLinkObj(fldBaseObj, fldInt)
(2)  values(INSERT INTO tstBaseObject(fldStr) output inserted.id VALUES(N' ')
(3)  , 1)

 
на который ругается проверка синтаксиса SQL в VS
Код:
Сообщение 156, уровень 15, состояние 1, строка 2
Неправильный синтаксис около ключевого слова "INSERT".
Сообщение 102, уровень 15, состояние 1, строка 3
Неправильный синтаксис около конструкции "1".

 
Собственно идея была создать запись tstBaseObject и вернуть её id для создания tstLinkObj, чтобы установить связь. О @@IDENTITY, SCOPE_IDENTITY и IDENT_CURRENT - знаю, хочу именно в конструкции INSERT ... OUTPUT разобраться.
 
Подскажите пожалуйста в чём ошибка, да и вообще - имеет ли эта идея право на жизнь?

Всего записей: 423 | Зарегистр. 01-03-2003 | Отправлено: 23:22 13-03-2012
bodomus

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день всем.  
Написал прототип для работы с документами MSWord из MS SQL.  
Он основывается на группе функций sp_OAxxxx
 
Часть кода:
 
Declare @WordObject int, @RetCode int, @Document int , @Filename varchar(255)
Exec @RetCode = sp_OACreate 'Word.Application', @WordObject OUTPUT, 4
If @RetCode <> 0 or @@Error <> 0 Goto OLE_Error_Handler
 
SELECT @WordObject
Exec @RetCode = sp_OAMethod @WordObject, 'Documents.Add', @Document OUTPUT
If @RetCode <> 0 or @@Error <> 0 Goto OLE_Error_Handler
 
DECLARE @Method varchar(255)
SELECT @Method = 'd:\logs\12.doc'  
 
Exec @RetCode = sp_OAMethod @WordObject, 'ActiveDocument.SaveAs' , NULL , @Method
If @RetCode <> 0 or @@Error <> 0 Goto OLE_Error_Handler
 
Exec @RetCode = sp_OAMethod @WordObject, 'Quit'
Exec sp_OADestroy @WordObject
Goto Done
 
OLE_Error_Handler:
    declare @source varchar(255), @description varchar(1000)
    EXEC sp_OAGetErrorInfo @WordObject, @source output, @description output
    print @Method
    print @Filename
    print @source+' - '+@description    
    print cast(@RetCode as varchar(255))
    Exec @RetCode = sp_OAMethod @WordObject, 'Quit'
    Exec sp_OADestroy @WordObject
    Goto Done
 
Done:
Exec sp_OAStop
 
 
Все работает до точки сохранения в документ  
Exec @RetCode = sp_OAMethod @WordObject, 'ActiveDocument.SaveAs' , NULL , @Method
 
процедура возвращает ошибку : Call was rejected by callee.  
Источник ошибки ODSOLE
 
 
Прошу совета - как побороть не желание объекта автоматизации сохранять в файл на диск.

Всего записей: 121 | Зарегистр. 18-11-2005 | Отправлено: 13:22 16-03-2012
mdid

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bodomus
попробуйте sp_OAMethod @WordObject, 'ActiveDocument.SaveAs([путь])'

Всего записей: 1298 | Зарегистр. 13-02-2006 | Отправлено: 14:00 16-03-2012
bodomus

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mdid
попробуйте sp_OAMethod @WordObject, 'ActiveDocument.SaveAs([путь])
 
Там в пути стоит значение. - 'd:\logs\12.doc'
 
Система Windows 7 64. MS SQL 64 . Office 2010 32. Может это натолкнет на мысль ?

Всего записей: 121 | Зарегистр. 18-11-2005 | Отправлено: 14:46 16-03-2012
mdid

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bodomus
вы пробовали? у вас путь содержится в @Method
а вы попробуйте  
Exec @RetCode = sp_OAMethod @WordObject, 'ActiveDocument.SaveAs("d:\logs\12.doc") '

Всего записей: 1298 | Зарегистр. 13-02-2006 | Отправлено: 15:32 16-03-2012
bodomus

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mdid  
Ничего не изменилось. То есть сохранения не происходит. Может какие то пермишиные надо поставить ?

Всего записей: 121 | Зарегистр. 18-11-2005 | Отправлено: 15:43 16-03-2012 | Исправлено: bodomus, 15:44 16-03-2012
mdid

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
1. это не проблема sql server
2. ошибка может содержаться в антивирусе..некоторае особо "продвинутые" могут блочить
3. попробуйте отключить на время антивир
4. если не то больше вариантов нет...офис на машине есть..по идее должно работать
 

Всего записей: 1298 | Зарегистр. 13-02-2006 | Отправлено: 15:48 16-03-2012
bodomus

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mdid. Эту проблему я решил на машине с Windows 7 (32) просто изменив аккаунт под которым запускался MS SQL server на аккаунт под которым я захожу ( с привилигеями администратора). Попробовал сделать то же на Windows 7 64 - не получилось. попробую отключить антивирус.  

Всего записей: 121 | Зарегистр. 18-11-2005 | Отправлено: 15:58 16-03-2012
torsheran

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Не подскажете каким образом сделать чтобы база в sql 2005 (не Express) автоматически копировалась раз в сутки, потом архивировалась в определённую папку и архивные копии в той папке старше 2-х недель удалялись.

Всего записей: 100 | Зарегистр. 28-12-2008 | Отправлено: 12:44 18-04-2012
Undaster

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
torsheran, хороший пример

Всего записей: 423 | Зарегистр. 01-03-2003 | Отправлено: 13:26 18-04-2012
naPmu3aH



Из лесу вышел
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Undaster
А по-моему плохой пример... Выглядит как человек, которому дали автоген (sql server maintenance plan) делает все с помощью него - и забор сварить, и сейф взломать, и гланды удалить да еще через  задницу...
Операции с файлами и т.п. гораздо правильнее и главное проще(!) делать средствами ОС, а не SQL Server... Запустить, так как описано в примере, через Maintenace plan какой-нибудь набор команд системы через CmdExec конечно можно, но я с ходу могу придумать несколько разных случаев, которые в этом "хорошем примере" не предусмотрены - от обработки ошибок до прав на файлы/папки/доступ по сети (Maintenance plan запускается с правами аккаунта из под которого запущен SQL Server Agent, ага)
 
На мой взгляд гораздо правильнее написать commandline script (BAT, CMD, VBS, Powershell, etc) в котором операции архивирование, проверка, удаление старых копий будут выполняться вполне стандартным образом, а операция резервного копирования будет делаться sql скриптом  запускаемым через sqlcmd.exe...

----------
Ну і хто тебе кликав, чому ти прийшла, Стара проститутка, сука-війна? Хто тобі платить за наші тіла? Скільки ще тобі треба, яка їх ціна?

Всего записей: 4642 | Зарегистр. 30-10-2001 | Отправлено: 00:23 19-04-2012
Undaster

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
naPmu3aH, оцени на вскидку уровень вопроса и соответствующую квалификацию задающего

Всего записей: 423 | Зарегистр. 01-03-2003 | Отправлено: 06:30 19-04-2012
torsheran

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
torsheran, хороший пример

Спасибо помогло немного.  
Бьюсь битых 3 часа с архивацией
@echo off  
c:  
cd c:\Program Files\WinRaR  
Rar.exe a e:\Backup\Smet2012_.rar -agDD-MM-YY e:\Backup\Smet2012_.bak
В бат файле работает изумительно, а в SQL 2005 это не работает - пишет типа не найден файл. Подскажите что эдесь не так.

Всего записей: 100 | Зарегистр. 28-12-2008 | Отправлено: 11:29 19-04-2012
naPmu3aH



Из лесу вышел
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
torsheran

Цитата:
в SQL 2005 это не работает - пишет типа не найден файл. Подскажите что эдесь не так

Кавычки в указании длинного пути с пробелом (там где WinRAR).

----------
Ну і хто тебе кликав, чому ти прийшла, Стара проститутка, сука-війна? Хто тобі платить за наші тіла? Скільки ще тобі треба, яка їх ціна?

Всего записей: 4642 | Зарегистр. 30-10-2001 | Отправлено: 11:31 19-04-2012
torsheran

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
naPmu3aH

Заключение в кавычки  
cd "c:\Program Files\WinRaR "
не помогло  

Всего записей: 100 | Зарегистр. 28-12-2008 | Отправлено: 11:43 19-04-2012
Undaster

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
может прямую ссылку:
"c:\Program Files\WinRaR\Rar.exe" a e:\Backup\Smet2012_.rar -agDD-MM-YY e:\Backup\Smet2012_.bak
 
ещё вопрос - закончил ли SQL запись в Smet2012_.bak до вызова rar.

Всего записей: 423 | Зарегистр. 01-03-2003 | Отправлено: 13:08 19-04-2012
torsheran

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Undaster

Цитата:
может прямую ссылку:  
"c:\Program Files\WinRaR\Rar.exe" a e:\Backup\Smet2012_.rar -agDD-MM-YY e:\Backup\Smet2012_.bak  
 

Пробовал. Всё равно ошибка.

Цитата:
ещё вопрос - закончил ли SQL запись в Smet2012_.bak до вызова rar.

Я даже Архивирование делал отдельно. Всё равно ошибка.

Всего записей: 100 | Зарегистр. 28-12-2008 | Отправлено: 15:32 20-04-2012 | Исправлено: torsheran, 15:33 20-04-2012
mmlm10

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
torsheran
А двойные слэши вместо одинарных?

Всего записей: 453 | Зарегистр. 16-12-2003 | Отправлено: 17:31 20-04-2012
Открыть новую тему     Написать ответ в эту тему

Страницы: 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

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Microsoft SQL Server


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru