Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.01.24;
Скачать: [xml.tar.bz2];

Вниз

Ничего не понимю...   Найти похожие ветки 

 
NewComer   (2001-12-19 16:46) [0]

Помогите мне!
у меня есть SP которая просто вставлет строку в таблицу, дык вот.. когда в первый раз ее вызываешь.. она не срабатывает..
чем это может быть вызвано?


 
Delirium   (2001-12-19 16:50) [1]

Может покажешь свою "SP" народу ?


 
NewComer   (2001-12-19 17:16) [2]

Блин... стыдно показывать то.. ну да ладно.

СREATE PROCEDURE operdAdd @inDecn varchar(30),@inNomerTar int, @inSHVIDRAB smallint, @inVRED float, @inCEH smallint, @inEd_izm int, @inNTIME float, @inOpOper varchar(255)
AS
declare @MaxNumber int

SET TRANSACTION ISOLATION LEVEL SERIALIZABLE
BEGIN TRANSACTION

set nocount on

SELECT @MaxNumber = isnull(MAX(NOMOPER), 0) FROM Operd

insert into OperD(NOMOPER, Decn, NomerTar, SHVIDRAB, VRED, CEH, Ed_izm, NTIME, OpOper)
values(@MaxNumber + 1,@inDecn ,@inNomerTar , @inSHVIDRAB , @inVRED , @inCEH , @inEd_izm , @inNTIME , @inOpOper)

/*raiserror("Message from proceduru", 16, 1)*/

commit TRANSACTION

SET TRANSACTION ISOLATION LEVEL READ COMMITTED


 
Mick   (2001-12-19 17:32) [3]

А "SERIALIZABLE" здесь только для того, чтобы никто другой не получил тот же "MaxNumber"?
Некрасиво это.


 
NewComer   (2001-12-19 17:40) [4]

to Mick
да, "SERIALIZABLE" только для ентого. Почему? менять структуру таблицы я не имею права, поэтому не могу его сделать даже Identity. Не знаю... может получать идентификатор с помошью рандома.. и если ошибка при втавке, то его менять.. где то я слышал про такой метод.. но не в этом проблемма, даже если полностью убрать строки, устанавливающие уровень изоляции.. ничего не измениться...


 
NewComer   (2001-12-20 12:01) [5]

Ну дык.. неужели не найдется ни одной светлой головы дабы помочь мне в этом вопросе?


 
knyaz17   (2001-12-20 12:46) [6]

Что пишет когда ругается?
И попробуй запустить INSERT в Query Analyzer с
теми же значениями, что ты передаешь в SP. Там пройдет всё нормально?


 
AISOFT   (2001-12-21 13:22) [7]

@MaxNumber=SELECT MAX(NOMOPER) FROM Operd
if @MaxNumber is null set @MaxNumber=0



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.01.24;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.56 MB
Время: 0.021 c
3-75465
Sergey Karagodin
2001-12-19 14:25
2002.01.24
Возвращаю результат запроса (ADO+SQL7)


3-75485
Dick Gonsales
2001-12-14 05:47
2002.01.24
Хранение временных данных


3-75487
Котелок
2001-12-20 06:08
2002.01.24
И снова BDE -((


1-75539
Misha
2002-01-05 11:43
2002.01.24
HELP


1-75552
Satrap
2001-12-28 13:19
2002.01.24
Описание классов





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский