Форум программистов, компьютерный форум, киберфорум
MySQL
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
0 / 0 / 0
Регистрация: 21.03.2013
Сообщений: 76
1

Процедура, которая производит вставку записи в таблицу имеющую автоинкрементное поле

14.08.2013, 13:18. Показов 2286. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Нужно написать процедуру, которая производит вставку записи в таблицу имеющую автоинкрементное поле и затем возвращает значение этого автоинкрементного поля через внешний параметр. Напишите, пожалуйста,с объяснениями, а то в базах ничего не понимаю.

Добавлено через 14 минут
Допустим, мы создали таблицу с названием Master
SQL
1
2
3
4
5
6
7
8
9
CREATE TABLE Master (
 
   ID INT IDENTITY(1,1) PRIMARY KEY CLUSTERED,
 
   Name VARCHAR(20) NOT NULL,
 
   Age SMALLINT NULL,
 
)
Делаем туда вставки записей

SQL
1
2
3
4
5
6
7
8
9
GO
 
INSERT Master VALUES('Строка 1',15)
 
GO
 
INSERT Master (Name) VALUES('Строка 2')
 
GO
Обе процедуры INSERT производят вставку в автоинкрементное поле, или одна из них ?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.08.2013, 13:18
Ответы с готовыми решениями:

Добавление записи в таблицу имеющую внешний ключ
В базе данных (MSSQL Server 2012) есть две таблицы связанные с помощью первичного и внешнего ключа:...

Макрос, который производит копирование и вставку, начиная с первой ячейки
Здравствуйте, нужна помощь, есть макрос, который производит копирование и вставку в другой лист,...

автоинкрементное поле
Подскажите пожалуйста, как прописывать автоинкрементное поле в хранимых процедурах действия?...

Автоинкрементное поле в Firebird
Программирую кнопку для добавление информации из формы C# в таблицу firebird. Все работает, только...

5
21 / 23 / 9
Регистрация: 26.07.2013
Сообщений: 109
14.08.2013, 13:23 2
Цитата Сообщение от mikhail90 Посмотреть сообщение
Обе процедуры INSERT производят вставку в автоинкрементное поле, или одна из них ?
Попробуйте проверить - после Insert into <table> (Column) написать output inserted.

Вот так:
T-SQL
1
2
3
INSERT INTO master (Столбец1, Столбец 2)
OUTPUT INSERTED.Инкрементируемое поле
VALUES('строка', '23')
output покажет значение столбца, который указали после inserted
0
1313 / 945 / 144
Регистрация: 17.01.2013
Сообщений: 2,348
14.08.2013, 14:00 3
tapinam, Это же MS SQL? В MySQL вроде такого нету... Только LAST_INSERT_ID(): 22.8.15.3. How to Get the Unique ID for the Last Inserted Row
0
21 / 23 / 9
Регистрация: 26.07.2013
Сообщений: 109
14.08.2013, 14:04 4
Цитата Сообщение от cygapb-007 Посмотреть сообщение
tapinam, Это же MS SQL? В MySQL вроде такого нету... Только LAST_INSERT_ID(): 22.8.15.3. How to Get the Unique ID for the Last Inserted Row
Хмм, не заметил, что это MySQL, извини.
Да, SELECT LAST_INSERT_ID(); есть, попробуй его использовать.
0
0 / 0 / 0
Регистрация: 21.03.2013
Сообщений: 76
14.08.2013, 14:06  [ТС] 5
Цитата Сообщение от mikhail90 Посмотреть сообщение
GO
INSERT Master VALUES('Строка 1',15)
GO
INSERT Master (Name) VALUES('Строка 2')
GO
А это значит точно не подойдет ?
0
1313 / 945 / 144
Регистрация: 17.01.2013
Сообщений: 2,348
14.08.2013, 14:34 6
Я понимаю, писатель - это не читатель...
Но все же еще раз посоветую почитать (хотя бы примеры и комментарии) из ранее приведенной статьи из документации по MySQL 22.8.15.3. How to Get the Unique ID for the Last Inserted Row
0
14.08.2013, 14:34
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.08.2013, 14:34
Помогаю со студенческими работами здесь

Чем заменить автоинкрементное поле?
Собственно сабж. Как можно обойтись без автоинкрементного поля и чем его заменить?

Как создать автоинкрементное поле?
Помогите по сабжу плиз! Заранее спасибо всем

Как обнулить автоинкрементное поле в DataTable?
как обнулить автоинкрементное поле в DataTable?

Не до конца правильно работает автоинкрементное поле
Всем привет.Делал базу в IBExpert'e , а граф. оболочку в Lazarus'e.Так вот вроде все...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru