![]() |
|
Модераторы: Akina |
![]()
|
|
| MAX984 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 32 Регистрация: 24.5.2007 Репутация: нет Всего: нет |
ПРИВЕТ ВСЕМ КТО ГОТОВ ПОМОЧЬ smile
ОПИСАНИЕ: РАБОТАЕТ ТРИГЕР НА ДОБАВЛЕНИЕ ЗАПИСИ, В НЕМ ВЫЗЫВАЕТСЯ ХРОНИМАЯ ПРОЦЕДУРА, В ПРОЦЕДУРЕ ФОРМЕРУЮТСЯ СПЕЦИФИЧЕСКИЕ ОШИБКИ (ЕСЛИ ТАКОВЫЕ ЕСТЬ), НУЖНО ЗАНОСИТЬ ИХ В ВИДЕ СТРОК В LOG FILE ДЛЯ ПОСЛЕДУЮЩЕГО АНАЛИЗА. И ЕЩЕ БАЗА БОЛЬШАЯ И ВОЗМОЖНО ОДНОВРЕМЕННОЕ ОБРАЩЕНИЕ 1000 ЖЕЛАЮЩИХ ДОБАВИТЬ ЗАПИСЬ В БАЗУ ИНТЕРЕСЕН ВОПРОС ОДНОВРЕМЕННОГО ВЫПОЛНЕНИЯ ЭТОГО ТРИГЕРА, КАК РЕАЛИЗУЕТСЯ ЗАПИСЬ В ФАЙЛ? И ВОЗМОЖНА ЛИ ПУТАНИЦА ЗАПИСЕЙ В ФАЙЛЕ? КАК ЭТО ЛУЧШЕ РЕАЛИЗОВАТЬ? |
|||
|
||||
| SergKO |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 231 Регистрация: 14.3.2005 Репутация: 17 Всего: 20 |
Не совсем понятно:
1. Вы хотите писать в лог базы или в какой-то свой лог-файл? 2. Почему Вы не хотите писать лог действий в таблицу? (значительно удобней потом анализировать) SQL Server для этого и предназначен. В данном случае Ваша задача - облегчить серверу его работу. Вернее, не затруднять ее. Добавлено через 9 минут и 55 секунд Если Вы пишите лог в таблицу, то проблем не будет. Ваша задача только - "правильные" индексы в таблице и "правильная" последовательность действий при работе с этой таблицей. Если-же Вы пишите в какой-то внешний файл, то придется решать проблему одновременной записи в него из нескольких потоков. Это не столько проблема сервера, сколько файловой системы. Это сообщение отредактировал(а) SergKO - 25.5.2007, 11:48 |
|||
|
||||
| MAX984 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 32 Регистрация: 24.5.2007 Репутация: нет Всего: нет |
1. ДА ХОЧУ ПИСАТЬ В СВОЙ ФАЙЛ
2. АНАЛИЗ БУДУТ ДЕЛАТЬ ОПЕРАТОРЫ И ИМ БУДЕТ ЛЕГЧЕ СМОТРЕТЬ ФАЙЛ, К ТОМУ ЖЕ ПРАВИТЬ ОНИ БУДУТ ДАННЫЕ ИЗ СПЕЦ НАПИСАННОЙ ПРОГИ |
|||
|
||||
| SergKO |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 231 Регистрация: 14.3.2005 Репутация: 17 Всего: 20 |
В сумме Вы выполните значительно меньше работы, если предоставите операторам СПЕЦИАЛЬНУЮ ПРОГУ для работы с таблицей в БД.
Но, если Вы настаиваете на работе с файлом, то попробуйте посмотреть в BOL темы: OPENROWSET, OPENDATASOURCE, процедуры sp_OA..., xp_cmdshell и все, что около них. Огромная просьба, когда и если Вам удасться решить все проблемы - поделитесь опытом, напишите сюда. |
|||
|
||||
| SergeBS |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1111 Регистрация: 10.6.2005 Где: Владимир Репутация: 5 Всего: 22 |
MAX984,
1. На форуме запрещено дублировать вопросы в разных ветках. 2. НЕ НАДО ВСЕ ЛЕПИТЬ БОЛЬШИМИ БУКВАМИ. Это тоже не поощряется. SergKO,
Не напишет. Поскольку пытается "специальной прогой" заменить сервер. Он же хочет, чтобы несколько человек могли видеть обычный файл, в который все время пишутся данные. А это 2 неразрешимых проблемы: 1. Файл будет расти непрерывно и его надо будет обрезать - старые записи убирать (которые в начале). Что приводит к его полному переписыванию фактически. В это время операторам настает знаменитый литовский праздник - "Обломайтис". А поскольку делать это будет не сервер - добавляется бешеный сетевой трафик. Что в свою очередь - "Обломайтис" для всех, кто в сети. Или этой задаче. 2. Несколько приложений читают один файл по сети, который все время меняется (в него же пишут): совершенно непонятно, как можно добиться этого. Точнее понятно, что невозможно Допустим - как-то делим его на порции. Тогда как эти порции делить между операторами? Особенно когда оператору нужно дать новую порцию? Простыми средствами - никак. Впрочем и сложными тоже. Те самые грабли, из-за которых с dbf-никами (т.е .без сервера БД) многопользовательская работа невозможна. Пусть файл отдается операторам весь - они между собой будут договариваться кто с какой порцией работает? А как быть с новыми порциями? Плюс опять-таки бешеный сетевой трафик. Есть еще несколько более мелких проблем. Но о них лень. Двух что выше - достаточно Короче - ерунда это. Если хочешь - можешь мой анализ закинуть и в соседнюю ветку с тем же вопросом. |
|||
|
||||
| AlexxxM |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 15.5.2007 Репутация: нет Всего: нет |
Можно сделать log-таблицу, а потом через программу (для записи таблицы в файл) по расписанию записывать в log-файл.
Но все-таки удобней написать программу которая работала бы с самой log-таблицей, тогда не нужно создавать пакетов для экспорта и создавать расписание которое периписывало бы этот файл. А вообще поконкретней объясни проблему, для каких целей нужен именно лог файл, а не таблица изменений. Это сообщение отредактировал(а) AlexxxM - 25.5.2007, 17:04 |
|||
|
||||
| MAX984 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 32 Регистрация: 24.5.2007 Репутация: нет Всего: нет |
СПАСИБО ЗА СОВЕТЫ
РЕАЛЬНО ОЦЕНИВ СИТУАЦИЮ ПРИШЛОСЬ РАБОТАТЬ С ТАБЛИЦЕЙ И ВСЕ СРАЗУ НАЛАДИЛОСЬ |
|||
|
||||
![]()
|
| Правила форума "MS SQL" | |
|
|
Запрещается! Публиковать ссылки и обсуждать взлом чего бы то ни было.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Zloxa, Akina. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MS SQL Server | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |