Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Временная таблица в хранимой процедуре  [new]
TataS
Member

Откуда:
Сообщений: 188
Подскажите пожалуйста:

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

Cannot insert the value NULL into column 'id'
Вот код хранимой процедуры:

set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO

ALTER PROCEDURE [dbo].[Test]

AS
BEGIN

CREATE TABLE #TableRazbiv
(
id int,
am [varchar](max),
kod [varchar](max)
PRIMARY KEY (id)
)

INSERT INTO #TableRazbiv( id, am) values (NULL, '111111')

SELECT * FROM #TableRazbiv
END
23 сен 11, 13:26    [11325586]     Ответить | Цитировать Сообщить модератору
 Re: Временная таблица в хранимой процедуре  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Правильно все пишет. ПК не может быть null.
23 сен 11, 13:28    [11325609]     Ответить | Цитировать Сообщить модератору
 Re: Временная таблица в хранимой процедуре  [new]
Alexandr Kr.
Member

Откуда: Украина, Харьков
Сообщений: 165
TataS,

А чем вопрос то состоит? Почему ошибку выдает? Так все правильно на поле Id построен Primary Key
23 сен 11, 13:29    [11325618]     Ответить | Цитировать Сообщить модератору
 Re: Временная таблица в хранимой процедуре  [new]
TataS
Member

Откуда:
Сообщений: 188
Гавриленко Сергей Алексеевич,

а как тогда занести данные, чтобы первичный ключ автоматически заполнялся?
23 сен 11, 13:40    [11325750]     Ответить | Цитировать Сообщить модератору
 Re: Временная таблица в хранимой процедуре  [new]
TataS
Member

Откуда:
Сообщений: 188
Alexandr Kr.
TataS,

А чем вопрос то состоит? Почему ошибку выдает? Так все правильно на поле Id построен Primary Key


вопрос в том, как в хранимой процедуре автоматически формировать поле первичного ключа. чтобы ошибки не выдавало.
23 сен 11, 13:42    [11325772]     Ответить | Цитировать Сообщить модератору
 Re: Временная таблица в хранимой процедуре  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Автоматически формировать можно через identity, либо через default с тем или иным генератором.
23 сен 11, 13:43    [11325790]     Ответить | Цитировать Сообщить модератору
 Re: Временная таблица в хранимой процедуре  [new]
shut-up-and-skate
Member

Откуда: ВАО
Сообщений: 4259
TataS,

а ты измени таблицу. там в свойствах столбца есть поле "спецификация идентификатора"
23 сен 11, 13:45    [11325807]     Ответить | Цитировать Сообщить модератору
 Re: Временная таблица в хранимой процедуре  [new]
TataS
Member

Откуда:
Сообщений: 188
Гавриленко Сергей Алексеевич
Автоматически формировать можно через identity, либо через default с тем или иным генератором.

Если вам не сложно, то покажите это пожалуйста на примере моего кода.
23 сен 11, 13:45    [11325814]     Ответить | Цитировать Сообщить модератору
 Re: Временная таблица в хранимой процедуре  [new]
LSV
Member [заблокирован]

Откуда: Киев
Сообщений: 30817
SELECT
dgr_code = IDENTITY(int, 1, 1),
...
INTO #TempGroup
23 сен 11, 13:46    [11325824]     Ответить | Цитировать Сообщить модератору
 Re: Временная таблица в хранимой процедуре  [new]
TataS
Member

Откуда:
Сообщений: 188
shut-up-and-skate
TataS,

а ты измени таблицу. там в свойствах столбца есть поле "спецификация идентификатора"

Буду признательна, если покажете это на моем примере.
23 сен 11, 13:47    [11325838]     Ответить | Цитировать Сообщить модератору
 Re: Временная таблица в хранимой процедуре  [new]
TataS
Member

Откуда:
Сообщений: 188
LSV
SELECT
dgr_code = IDENTITY(int, 1, 1),
...
INTO #TempGroup


Извините, но я не поняла, где это использовать в моем коде
23 сен 11, 13:49    [11325870]     Ответить | Цитировать Сообщить модератору
 Re: Временная таблица в хранимой процедуре  [new]
shut-up-and-skate
Member

Откуда: ВАО
Сообщений: 4259
TataS,

возможно это?
23 сен 11, 13:50    [11325882]     Ответить | Цитировать Сообщить модератору
 Re: Временная таблица в хранимой процедуре  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31978
TataS
Гавриленко Сергей Алексеевич
Автоматически формировать можно через identity, либо через default с тем или иным генератором.

Если вам не сложно, то покажите это пожалуйста на примере моего кода.
Наберите в хелпе CREATE TABLE, а там посмотрите IDENTITY
23 сен 11, 13:52    [11325908]     Ответить | Цитировать Сообщить модератору
 Re: Временная таблица в хранимой процедуре  [new]
trew
Member

Откуда: Москва
Сообщений: 2646
TataS,

CREATE TABLE #TableRazbiv
(
id INT IDENTITY(1,1) PRIMARY KEY NOT NULL,
am [varchar](max),
kod [varchar](max)
)  ON [PRIMARY]
23 сен 11, 13:53    [11325929]     Ответить | Цитировать Сообщить модератору
 Re: Временная таблица в хранимой процедуре  [new]
TataS
Member

Откуда:
Сообщений: 188
shut-up-and-skate
TataS,

возможно это?


ОГРОМНОЕ спасибо. Все получилось.
23 сен 11, 13:54    [11325942]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить