Первичный ключ, внешний ключ, суррогатный ключ / Илья Хохлов

แชร์
ฝัง
  • เผยแพร่เมื่อ 11 พ.ค. 2021
  • Первичный ключ - это столбец (или набор столбцов) в таблице, с помощью значения которого (которых) всегда можно сослаться, выйти только на одну строку в таблице. Значения этого столбца служат идентификатором каждой строки таблицы и поэтому не могут иметь пустые или повторяющиеся значение. Если в таблице данных нет столбца с данными, которые могли бы быть уникальны в пределах таблицы (а такой столбец нужен), то добавляется ещё один столбец к таблице, данные которого не имеют отношения к смыслу хранящихся сведений и почти всегда являются просто сквозной авто-нумерацией строк. Этот столбец и называется суррогатным ключом.

ความคิดเห็น • 51

  • @vyacheslavvaleriia9308
    @vyacheslavvaleriia9308 ปีที่แล้ว +9

    Вы так позитивно говорите, что аж прям настроение поднимается) Спасибо вам!

  • @izobretateldobra
    @izobretateldobra 2 ปีที่แล้ว +9

    Благодарю, Илья, крайне доходчиво, просто и полезно! Действительно сокровище )

    • @PrimeSoft
      @PrimeSoft  2 ปีที่แล้ว +1

      Здравствуйте, Михаил! Большое Вам спасибо за комментарий!

  • @user-ct8sg3wo4f
    @user-ct8sg3wo4f ปีที่แล้ว +28

    0:20 - Первичный ключ
    6:19 - Внешний ключ
    9:10 - Суррогатный ключ

    • @leonidponikov306
      @leonidponikov306 ปีที่แล้ว

      Суррогатный он же потенциальный правильно?

  • @lletargiya
    @lletargiya 11 หลายเดือนก่อน +1

    Большое вам спасибо, всё по делу и голос у вас очень приятный и дружелюбный😊

  • @misha4392
    @misha4392 2 หลายเดือนก่อน

    Очень хорошее объяснение. Готовлюсь к собеседованию, и видео очень хорошо освежает в памяти то что уже знаешь.

  • @user-nd1qc7ir9x
    @user-nd1qc7ir9x ปีที่แล้ว

    очень понятно всё объясняет! приятно слушать!

  • @SemenAlexndrovich
    @SemenAlexndrovich 2 ปีที่แล้ว +3

    Отличная информация. Большое спасибо!

    • @PrimeSoft
      @PrimeSoft  2 ปีที่แล้ว

      Спасибо Вам за Ваше внимание! И комментарий!

  • @user-nj5vi5dh2f
    @user-nj5vi5dh2f 2 ปีที่แล้ว +1

    Спасибо большое за видео) много посмотрел по этой теме видео и только твоё помогло мне понять что и как))

  • @user-ob5ml4rx7h
    @user-ob5ml4rx7h ปีที่แล้ว +3

    Спасибо большое! Очень нравится, что объясняете одну вещь и тут же раза 3-4 ее проговариваете, чтобы мозг зацепился

    • @PrimeSoft
      @PrimeSoft  ปีที่แล้ว

      Здравствуйте, Андрей! Спасибо Вам за внимание и комментарий!

  • @axis322
    @axis322 ปีที่แล้ว

    Спасибо за доступное объяснение

  • @Roman23081988
    @Roman23081988 2 ปีที่แล้ว +7

    Спасибо Илья, я начал изучать SQL чтобы поступить на курсы тестировщиков, но меня не приняли. SQL мне понравился и я изучаю его дальше. Мне было все понятно в этом ролике, доходчиво объяснили, я пишу конспект по урокам

    • @user-uq8id3en5i
      @user-uq8id3en5i ปีที่แล้ว +1

      Ну что друг,как успехи,получилось?

    • @user-nv3ch5bd7g
      @user-nv3ch5bd7g ปีที่แล้ว

      А почему не приняли?

    • @Roman23081988
      @Roman23081988 ปีที่แล้ว

      @@user-nv3ch5bd7g написали что конкурс у них, ограниченное колличество мест, и наверное опыт мой небольшой не устроил

    • @user-ug5gj1kz8x
      @user-ug5gj1kz8x 6 หลายเดือนก่อน

      Ну как дела ?

    • @Roman23081988
      @Roman23081988 6 หลายเดือนก่อน

      @@user-ug5gj1kz8x дела... Вообще никак, забил на обучение, работаю на той же работе.

  • @user-ry7ij2io1b
    @user-ry7ij2io1b ปีที่แล้ว +2

    Отлично объясняете! Спасибо!!

    • @PrimeSoft
      @PrimeSoft  ปีที่แล้ว

      Спасибо Вам за внимание!

  • @user-rv5fl9bx5p
    @user-rv5fl9bx5p 10 หลายเดือนก่อน +2

    Внешний ключ это первичный ключ другой таблицы. Понятно, спасибо

  • @TheSifer007
    @TheSifer007 2 ปีที่แล้ว

    Спасибо, отличное видео.

  • @Anthony_Private
    @Anthony_Private 2 ปีที่แล้ว

    Доходчиво) Спасибо)

  • @itsollustrifugate6955
    @itsollustrifugate6955 3 ปีที่แล้ว +2

    Было бы интересно посмотреть, как сделать логику сохранения данных в sql для статистики сайта, хосты, уники, созданные заказы, оплаченные заказы, сумма. После как правильно делать выборку данных из sql за определенный период, день, неделя, месяц.
    Я уже 4 месяца никак не могу сделать по уму на своем сайте, вернее вроде сделал, а когда в сутки на мой сайт заходит больше 100к хостов, то выборка данных за 1 сутки занимает около 30 секунд, а месяц вообще не могу посмотреть, sql ложиться(((

  • @emmamuller6229
    @emmamuller6229 ปีที่แล้ว

    СПАСИБО!

  • @numenoret8362
    @numenoret8362 ปีที่แล้ว

    спасибо!

  • @temirlantaszhan191
    @temirlantaszhan191 2 ปีที่แล้ว

    В чём состоит разница между ключами: первичным, потенциальным, альтернативным, суррогатным?

  • @nikogen
    @nikogen ปีที่แล้ว

    Спасибо

  • @SHKIPPER989
    @SHKIPPER989 3 ปีที่แล้ว +2

    То что надо!)

    • @PrimeSoft
      @PrimeSoft  3 ปีที่แล้ว

      Спасибо!

  • @yurydorozhko6094
    @yurydorozhko6094 ปีที่แล้ว

    Илья, про суррогатный ключ примера таблички не хватает. Например, на последнем слайде Петрова Надежда Анатольевна имеет id = 2. Если предположить, что понадобится добавить ещё одну запись Петрова Надежда Анатольевна, то этой записи присвоится 3 или цифра, представляющая следующую цифру за последним существующим в таблице id? Т.е. согласно табличке на слайде новая запись Петрова Надежда Анатольевна будет иметь id = 6?

    • @user-ig4gr5uz8h
      @user-ig4gr5uz8h ปีที่แล้ว

      Если создать точно такую же запись с одинаковым именем, в нашем случае это Петрова Надежда Анатольевна, но у второй, новой, будет, к примеру, другая дата рождения, то айди присвоится 6, то есть следующий, по возрастанию. По крайней мере так работает в Postgre sql
      UPD. Только что проверил, если создать две совершенно одинаковые записи, то айди всё равно будет 6, потому что это другая запись, хотя и данные одни и те же, но всё же другая со своим айди

    • @AibekDandaev
      @AibekDandaev 10 หลายเดือนก่อน

      для этого и существует суррогатный ключ - новый атрибут, который будет уникальным для двух и более одинаковых строк -
      | surrogate_key_1 | Петрова Надежда Анатольевна | primary_key_1 | id_2
      | surrogate_key_2 | Петрова Надежда Анатольевна | primary_key_1 | id_2
      только у данных двух строк будет различен 1 атрибут - суррогатный ключ - то есть, суррогатный ключ - своего рода первичный ключ для таблиц, где необходимо дублирование строк, но т. к. всегда должна присутствовать возможность обращаться к отдельно взятой строке, появляется нужда в некотором атрибуте, по которому можно будет обращаться к отдельно взятой ранее дублированной строке

  • @juls6011
    @juls6011 2 ปีที่แล้ว +3

    ахаха это офигенно))) по 15 раз одну и ту же фразу повторяете и мой мозг прям запоминает инфу))) аххах прям заедает, но это очень крутое качество для преподавателя

  • @zoofuninworld
    @zoofuninworld 4 หลายเดือนก่อน

    А как узнать, название внешнего ключа ?

  • @anstikaino
    @anstikaino 3 ปีที่แล้ว +3

    Подскажите, а зачем используют несколько первичных ключей в одной таблице

    • @PrimeSoft
      @PrimeSoft  3 ปีที่แล้ว +2

      Спасибо Вам за вопрос. Первичный ключ в таблице может быть только один. Но он может состоять из двух (и более) столбцов. Из комбинации значений в этих столбцах.

  • @oneguiry
    @oneguiry 2 ปีที่แล้ว +1

    Хорошо разжевал, спасибо за теорию. Но пожалуйста, чуть чуть четче говори.

    • @PrimeSoft
      @PrimeSoft  2 ปีที่แล้ว +1

      Здравствуйте! Спасибо! Буду стараться!

  • @JaktikXD
    @JaktikXD 7 หลายเดือนก่อน

    Как всё запутано вроде понимаю но не понимаю
    Первичный главный айди
    Внешний из другой таблицы
    Суррогатный это первичный но не первичный(и всё уже не понимаю🥲)

  • @worlzpnz
    @worlzpnz 2 ปีที่แล้ว

    Есть еще натуральный ключ! Интересно что это!

  • @user-ho1lb1hz8p
    @user-ho1lb1hz8p 4 หลายเดือนก่อน

    про суррогатный ключ совсем не понял

  • @user-pq1wu2fx2l
    @user-pq1wu2fx2l 3 ปีที่แล้ว

    А суурогатный ключ тоже есть

    • @PrimeSoft
      @PrimeSoft  3 ปีที่แล้ว +2

      Да. Это первичный. Это одно и то же. Только когда первичным ключом невозможно сделать какой либо из существующих смысловых столбцов в таблице, делают ещё один. Просто сквозную нумерацию. Это и есть суррогатный ключ.

  • @user-vi1hg5ic5d
    @user-vi1hg5ic5d ปีที่แล้ว

    Foreign значит иностранный

    • @AibekDandaev
      @AibekDandaev 10 หลายเดือนก่อน

      так же есть значения
      такие как
      - инородный
      - чужой
      - наружный

  • @tuttifrutti6603
    @tuttifrutti6603 ปีที่แล้ว

    о чем это он...

    • @AibekDandaev
      @AibekDandaev 10 หลายเดือนก่อน

      о многом