powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Переход с SQL 6.5 на 7.0
4 сообщений из 4, страница 1 из 1
Переход с SQL 6.5 на 7.0
    #32003776
Alex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При переходе на SQL 7.0 почему-то перестали работать хранимые процедуры, т.е. обновление и добавление, идущее через них ошибок не вызывает, но и сохранять не сохраняет.
Пример:
CREATE PROCEDURE UpdateMessage
@MessageNo Int Out,
@CaseID Numeric,
@Tag Int,
@Date DateTime,
@Man Varchar(255),

@Message Text,
@OnDate DateTime,
@OffDate DateTime,
@Staff Varchar(10),
@Init Varchar (20)
as
if @CaseID <> Null
if @MessageNo = Null
Begin
Select @MessageNo = isNull(Min(MessageNo) - 1,1) From Messages
Where CaseID = @CaseID

Insert Into Messages(MessageNo,CaseID,Tag,Date,Man,Message,OnDate,OffDate,Staff,Init)

Values(@MessageNo,@CaseID,@Tag,@Date,@Man,@Message,@OnDate,@OffDate,@Staff,@Init)

end

Else
Update Messages Set Tag = @Tag,Date = @Date,Man = @Man,Message = @Message,
OnDate = @OnDate,OffDate = @OffDate,Staff = @Staff,Init = @Init

Where MessageNo = @MessageNo and CaseID = @CaseID
GO
...
Рейтинг: 0 / 0
Переход с SQL 6.5 на 7.0
    #32003777
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может быть дело в этом

"Care must be taken when comparing null values. The behavior of the comparison depends on the setting of the SET ANSI_NULLS option.

When SET ANSI_NULLS is ON, a comparison in which one or more of the expressions is NULL does not yield either TRUE or FALSE; it yields UNKNOWN. This is because a value that is unknown cannot be compared logically against any other value. This occurs if either an expression is compared to the literal NULL, or if two expressions are compared and one of them evaluates to NULL. For example, this comparison always yields UNKNOWN when ANSI_NULLS is ON:

ytd_sales > NULL

This comparison also yields UNKNOWN any time the variable contains the value NULL:

ytd_sales > @MyVariable

NB!!!! ->>> Use the IS NULL or IS NOT NULL clauses to test for a NULL value. "
...
Рейтинг: 0 / 0
Переход с SQL 6.5 на 7.0
    #32003811
Victor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня было тоже самое. Заменил =/<> NULL на
IS NULL / NOT IS NULL и все заработало.
...
Рейтинг: 0 / 0
Переход с SQL 6.5 на 7.0
    #32003812
Фотография Александр Гладченко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Почитайте в BOL об уровне совместимости и о sp_dbcmptlevel
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Переход с SQL 6.5 на 7.0
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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