Программы "Простой софт" www.prostoysoft.ru

ВНИМАНИЕ! РЕКЛАМНЫЕ СООБЩЕНИЯ И ГИПЕРССЫЛКИ В ФОРУМЕ ЗАПРЕЩЕНЫ (посты удаляются автоматически)
Текущее время: 27.11.2024 15:52

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 27 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: 2.618 Процедуры
СообщениеДобавлено: 15.07.2014 09:52 
Не в сети

Зарегистрирован: 29.07.2013 09:05
Сообщения: 92
Произвожу инсерт процедурой в триггере - получаю несколько срабатываний за раз, причем до "сообщения" триггера - см вложение () а хотел большинство триггеров перекинуть в процедуры :( );
Пробую передать в инсерте <CurrentUser> на выходе ошибка - недопустимое имя столбца "имя пользователя";


Вложения:
start.png
start.png [ 5.41 КБ | Просмотров: 84125 ]
adm.png
adm.png [ 6.52 КБ | Просмотров: 84125 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 2.618 Процедуры
СообщениеДобавлено: 15.07.2014 10:53 
Не в сети

Зарегистрирован: 25.01.2012 11:41
Сообщения: 186
А оно и не будет работать)

Напишите правильно запрос. Во первых у вас неправильная конструкция после "into tblpayments". После ID какието ' скобки, этого не должно быть! Это же название поля.

А во вторых, насколько я понимаю, то ID счетчик, а вы пытаетесь ему навязать какое то свое значение. Если такое действительно нада, то нужно сначала менять тип поля со счетчика на чиловой например, вставлять значения и менять обратно. Но такое лучьше не практиковать!!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 2.618 Процедуры
СообщениеДобавлено: 15.07.2014 11:12 
Не в сети

Зарегистрирован: 29.07.2013 09:05
Сообщения: 92
для прозорливых:
Код:
insert into tblPayments (IDVD, Status, AddTime, ZamerID, PaymentAmount, PaymentAmountPart1,PaymentAmountPart2, Dolg, CompanyID,CurrentUser)
values (<IDVD>, 'НА ЗАПУСК', GETDATE(), <ID>, (select InvoiceAmount from tblInvoices where IDVD=<IDVD>),
0, 0, (select InvoiceAmount from tblInvoices where IDVD=<IDVD>),
<CompanyID>,<CurrentUser>)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 2.618 Процедуры
СообщениеДобавлено: 15.07.2014 11:21 
Не в сети

Зарегистрирован: 25.01.2012 11:41
Сообщения: 186
ms sql или Access?

Это поле (IDVD) счетчик или уникальное?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 2.618 Процедуры
СообщениеДобавлено: 15.07.2014 11:25 
Не в сети

Зарегистрирован: 29.07.2013 09:05
Сообщения: 92
mssql
запрос срабатывает без вставки пользователя - как только пытаюсь его вставить вываливает ошибку!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 2.618 Процедуры
СообщениеДобавлено: 15.07.2014 11:30 
Не в сети

Зарегистрирован: 25.01.2012 11:41
Сообщения: 186
Если IDVD счетчик, то вы не можете его вставить просто так, Если не уникальное, то конструкция (select InvoiceAmount from tblInvoices where IDVD=<IDVD>) не может быть выполнена, так как значений в результате будет больше одного.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 2.618 Процедуры
СообщениеДобавлено: 15.07.2014 11:37 
Не в сети

Зарегистрирован: 29.07.2013 09:05
Сообщения: 92
Ну с CurrentUser разобрался не хватало '<CurrentUser>' экранировал в значениях - хотя на старых версиях экран не требовался
Осталось только - разобраться почему процедуры стартуют несколько раз - общее количество по сканеру =3
####
Цитата:
не может быть выполнена, так как значений в результате будет больше одного.

От чего такая уверенность ? :lol:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 2.618 Процедуры
СообщениеДобавлено: 15.07.2014 11:38 
Не в сети

Зарегистрирован: 25.01.2012 11:41
Сообщения: 186
(IDVD) счетчик или уникальное? Возможно ответ тут.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 2.618 Процедуры
СообщениеДобавлено: 15.07.2014 11:40 
Не в сети

Зарегистрирован: 29.07.2013 09:05
Сообщения: 92
Спасибо с
Цитата:
Пробую передать в инсерте <CurrentUser> на выходе ошибка - недопустимое имя столбца "имя пользователя";
разобрался. :)
нет ответ не там...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 2.618 Процедуры
СообщениеДобавлено: 15.07.2014 11:41 
Не в сети

Зарегистрирован: 25.01.2012 11:41
Сообщения: 186
Цитата:
От чего такая уверенность ? :lol:



А почему не может?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 2.618 Процедуры
СообщениеДобавлено: 15.07.2014 11:43 
Не в сети

Зарегистрирован: 29.07.2013 09:05
Сообщения: 92
Уникально.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 2.618 Процедуры
СообщениеДобавлено: 15.07.2014 11:44 
Не в сети

Зарегистрирован: 25.01.2012 11:41
Сообщения: 186
Tanod писал(а):
Уникально.

Тогда не может) Вопрос я так понимаю закрыт?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 2.618 Процедуры
СообщениеДобавлено: 15.07.2014 11:46 
Не в сети

Зарегистрирован: 29.07.2013 09:05
Сообщения: 92
Вопрос закрыт по ошибке инсерта.,
но вот срабатывание процедуры несколько раз подряд, да еще и до сообщения в триггере как то смущает.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 2.618 Процедуры
СообщениеДобавлено: 15.07.2014 11:47 
Не в сети

Зарегистрирован: 25.01.2012 11:41
Сообщения: 186
Можете привести процедуру полностью?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 2.618 Процедуры
СообщениеДобавлено: 15.07.2014 11:52 
Не в сети

Зарегистрирован: 29.07.2013 09:05
Сообщения: 92
Процедура Вам должна быть не интересна, предположим "абстрактный запрос на обработку",
а вот триггер который отрабатывает не вовремя _
причем тип команды - процедура или sql команда - отрабатывает одинаково.


Вложения:
tr.png
tr.png [ 3.05 КБ | Просмотров: 113104 ]
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 27 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB