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

Откуда:
Сообщений: 10
Доброй ночи.
Банальный вопрос, но я в SQL новичок, так что прошу помощи.
Нужно найти строку по первичному ключу, т.е в таблице поле id - первичный ключ, используется как идентификатор строк.
Нужно найти строку с нужным мне id, и заменить в ней все поля.
Как я понял, Update тут не поможет.
Каким образом это можно сделать?
Спасибо.
5 авг 11, 00:49    [11073944]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
Fire83
Member

Откуда: Гомель-Минск
Сообщений: 474
alex3600,

Неправильно поняли, update для этого и нужен!
5 авг 11, 02:11    [11073994]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
Geep
Member

Откуда: Москва
Сообщений: 975
alex3600
Как я понял, Update тут не поможет.

Откуда такой пессимизм? :)
5 авг 11, 02:19    [11073999]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
alex3600
Member

Откуда:
Сообщений: 10
UPDATE top(10) books SET Name = 'three' WHERE id = 3
Решил так.
Да вы правы, я просто не врубался как он найдет поле Name, ну все работает спасибо.
5 авг 11, 02:39    [11074009]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
Павел Воронцов
Member

Откуда: Новосибирск
Сообщений: 2392
Блог
alex3600
UPDATE top(10) books SET Name = 'three' WHERE id = 3
Решил так.
Да вы правы, я просто не врубался как он найдет поле Name, ну все работает спасибо.
top(10) ?! Зачем?
5 авг 11, 07:03    [11074111]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
angel_zar
Member

Откуда: Барнаул
Сообщений: 902
Павел Воронцов
alex3600
UPDATE top(10) books SET Name = 'three' WHERE id = 3
Решил так.
Да вы правы, я просто не врубался как он найдет поле Name, ну все работает спасибо.
top(10) ?! Зачем?


А вдруг больше 10ти записей с одинаковым первичным ключом
5 авг 11, 07:22    [11074144]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
iap
Member

Откуда: Москва
Сообщений: 47145
angel_zar
Павел Воронцов
пропущено...
top(10) ?! Зачем?


А вдруг больше 10ти записей с одинаковым первичным ключом
Если записей с одинаковым первичным ключом больше одной,
то это никакой не первичный ключ!
5 авг 11, 09:20    [11074353]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
iap
Member

Откуда: Москва
Сообщений: 47145
iap
Если записей с одинаковым первичным ключом больше одной,
то это никакой не первичный ключ!
Кстати говоря, констрейнт PRIMARY KEY без уникального индекса не бывает.
5 авг 11, 09:21    [11074360]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
alex3600
Member

Откуда:
Сообщений: 10
автор
Если записей с одинаковым первичным ключом больше одной,
то это никакой не первичный ключ!

Ключи уникальны все правильно.
top(10) был взят из примера, в нужном мне запросе стоит top(1).
5 авг 11, 10:34    [11074690]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
iap
Member

Откуда: Москва
Сообщений: 47145
alex3600
автор
Если записей с одинаковым первичным ключом больше одной,
то это никакой не первичный ключ!

Ключи уникальны все правильно.
top(10) был взят из примера, в нужном мне запросе стоит top(1).
Зачем?
5 авг 11, 10:43    [11074752]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
alex3600
Member

Откуда:
Сообщений: 10
автор
Зачем?

Без top отлично работает. Еще раз спасибо.
5 авг 11, 10:53    [11074832]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
alex3600
Member

Откуда:
Сообщений: 10
Еще вопрос чтобы темы не плодить, о связи таблиц.
Есть две таблицы, Заказы и Компьютеры.
Нужно сделать так, пользователь делает заказ и указывает компьютер при заказе, и несколько других параметров.
Так вот, как связать заказ, с названием компьютера.
То есть, в другой форме должно отображаться имя компьютера, который заказан и еще несколько параметров.
Нужно как-то связать поле NAME из таблицы "Компьютеры", с таблицей "Заказы".
При чтении "Заказы" отображалось поле NAME из "Компьютеры", и строка из "Заказы".
Вроде бы объяснил.
5 авг 11, 15:59    [11077396]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
howtojointables
Guest
alex3600,

бесплатные ресурсы с теорией и упражнениями по основам sql в интернете есть.
5 авг 11, 16:33    [11077700]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
alex3600
Member

Откуда:
Сообщений: 10
Тут возникла еще одна проблема, не могу редактировать таблицу, после ее создания изменений.
Я так понимаю это не нормально.
Картинка с другого сайта.
5 авг 11, 21:13    [11078926]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
alex3600
Member

Откуда:
Сообщений: 10
Блин, как у вас теги устроены интересно.
Скин ошибки.
Говорит что надо удалять и пересоздавать таблицу, почему нельзя вносить изменения непонятно.
Картинка с другого сайта.
5 авг 11, 21:18    [11078936]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31989
alex3600
Блин, как у вас теги устроены интересно.
Скин ошибки.
Говорит что надо удалять и пересоздавать таблицу, почему нельзя вносить изменения непонятно.
Как то у вас фразы устроены интересно :-)

Действительно, говорит что "надо удалять и пересоздавать таблицу", но нигде нет упоминания о том, что нельзя вносить изменения.
5 авг 11, 21:20    [11078945]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
Edkonst2008
Member

Откуда:
Сообщений: 503
alex3600,

А что делать хотите - изменить структуру таблиццы или данные? Какие команды используете?
5 авг 11, 21:25    [11078958]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
alex3600
Member

Откуда:
Сообщений: 10
автор
А что делать хотите - изменить структуру таблиццы или данные? Какие команды используете?

С данными.
Разобрался, решение тут
5 авг 11, 21:29    [11078967]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31989
alex3600
автор
А что делать хотите - изменить структуру таблиццы или данные? Какие команды используете?

С данными.
Разобрался, решение тут
То же самое было написано в окошке, скрин которого вы приложили :-)

Enabled the option: "Prevent saving changes that require table re-creation"
5 авг 11, 22:18    [11079106]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
alex3600
Member

Откуда:
Сообщений: 10
автор
То же самое было написано в окошке, скрин которого вы приложили :-)

Enabled the option: "Prevent saving changes that require table re-creation"

Ахаxa, только сейчас понял как ложанулся.
Я даже боюсь спрашивать теперь, но все таки.
Когда установлена связь между таблицами "один к одному", при добавлении в родительскую таблицу данных они должны дублироваться в дочернею?
5 авг 11, 22:56    [11079227]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
Ken@t
Member

Откуда: 大地
Сообщений: 3265
alex3600
Когда установлена связь между таблицами "один к одному", при добавлении в родительскую таблицу данных они должны дублироваться в дочернею?

Если напишите , то будут дублироваться.
6 авг 11, 06:11    [11079924]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
alex3600
Member

Откуда:
Сообщений: 10
автор
Если напишите , то будут дублироваться.

А можно конкретней, что требуется написать?
6 авг 11, 11:53    [11080102]     Ответить | Цитировать Сообщить модератору
 Re: Поиск строки по первичному ключу  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31989
alex3600
Когда установлена связь между таблицами "один к одному", при добавлении в родительскую таблицу данных они должны дублироваться в дочернею?
Нет, записи сами никуда не вставляются.

Ну и собственно автоматической вставки не может быть по определению - сервер же не знает, какие данные нужно вставить.
6 авг 11, 15:42    [11080680]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить