SQL. 7. Нормализация (1 форма)

Поделиться
HTML-код
  • Опубликовано: 11 сен 2024
  • 7 урок курса по SQL - языку программирования для оперирования реляционными базами данных.
    В этом уроке вы узнаете, что такое атомарность данных, а также научитесь создавать первичные ключи, что в итоге даст вам нормализованную таблицу. .
    JOIN QUIZGROUP PARTNER PROGRAM: join.quizgroup.... .

Комментарии • 74

  • @Кирилл-г7с6т
    @Кирилл-г7с6т 6 лет назад +12

    Красавчик единственный, кого я нашел, который может нормально объяснить про БД

  • @МаксимПалванов
    @МаксимПалванов 3 года назад +1

    Огромное тебе спасибо. Благодаря тебе научился с нуля работать с тем, с чем раньше вообще никогда не сталкивался и даже не имел представления, что такие вещи существуют в мире)))

  • @vladholiver693
    @vladholiver693 6 лет назад +24

    толково обьясняет парень. Сделай курс по основам Git пожалуйста!!

  • @markersx
    @markersx 10 лет назад +36

    Поправка: AUTO_INCREMENT не совсем присваивает следующее число после имеющегося, пример: мы добавили 10 записей, этим записям, был присвоен ID от 1 до 10, после чего, мы удалили 8,9 и 10 запись и решили добавить новую, у неё id будет не 8, а 11! Дело в том, что БД, при вставке новой строки в таблицу, обновляет свойство AUTO_INCREMENT у таблицы, добавляя единицу (а не высчитывает минимально возможное число для новых вставок).
    И да, тип данных int имеет своё ограничение: от -2^31 (-2 147 483 648) до 2^31-1 (2 147 483 647), следовательно, если при проектировании, предполагается что записей может быть больше, для поля с id выбирается другой тип данных, например BigInt! НО! Если теориетически потребности в этом нет, лучше использовать тип Int ввиду того, что он занимает меньше места. Ровно как не стоит использовать тип данных Text или VarChar длинной 255, если предполагается, что в поле будут данные например максимум 25 символов.
    PS: При вставке INSERT INTO products VALUES вместо: (NULL, 'Bread', 16); Можно было написать: (,'Bread', 16) Т.е. пропустить ключевое поле.

    • @jasonmark4568
      @jasonmark4568 7 лет назад +1

      Ну и как решить проблему со свойством AUTO_INCREMENT ?!

    • @markersx
      @markersx 7 лет назад +1

      AndreY xxx О чем вы?

    • @user-pg7xv3tx2y
      @user-pg7xv3tx2y 7 лет назад

      лол)

    • @PashkaEzjik1994
      @PashkaEzjik1994 7 лет назад +5

      О том, как сделать так, чтобы при добавлении новой записи, её id был не 11, а 8.

    • @ramazanusen3323
      @ramazanusen3323 6 лет назад

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

  • @leshakhalin
    @leshakhalin 6 лет назад +8

    Ваш труд неоценим. Спасибо!

  • @lilitanikushkina1194
    @lilitanikushkina1194 7 лет назад +4

    Спасибо за классные уроки! Мне, как начинающему, все предельно понятно и даже иногда проматываю :)

  • @luckystar1843
    @luckystar1843 4 года назад +1

    Прям супер-классно и очень понятно объясняете, в отличие от многих других.

  • @ZEXthn
    @ZEXthn 3 года назад +1

    Красава, очень хорошо объяснил 👍

  • @igorrailean4758
    @igorrailean4758 7 лет назад +4

    Ты лучший ! Спасибо за урок !

  • @user-jc8qc3ti7p
    @user-jc8qc3ti7p Год назад

    Большое спасибо, потрудился много))

  • @ЮліяКостинська
    @ЮліяКостинська 9 лет назад +1

    супер !рекомендую!для початківця те що треба..

  • @user-fr2dw3qd4v
    @user-fr2dw3qd4v 4 года назад +2

    Борщец, Бутер, СалатИК )) улыбнуло

  • @splashattacks9714
    @splashattacks9714 8 лет назад

    Анна с "щелковского шоссе" конечно повеселила, ну а если серьезно,то спасибо за видео!

  • @fairmentat
    @fairmentat 4 года назад +1

    Лайк за Mass Effect)

  • @sunguard1404
    @sunguard1404 6 лет назад +2

    а возможно ли добавить столбец на второе или третье место? пишу ALTER TABLE ADD COLUMN Old int THIRD; не получается

  • @delalen8012
    @delalen8012 4 года назад

    Спасибо, очень круто!

  • @igorkhan3068
    @igorkhan3068 3 года назад +1

    как одним запросом добавить сразу 2 продукта и более?

  • @user-pz1jr6gt2j
    @user-pz1jr6gt2j 4 года назад

    Thank u

  • @volodymyr3033
    @volodymyr3033 8 лет назад +1

    Благодарю!

  • @sirazhidinovakmatali
    @sirazhidinovakmatali 7 лет назад +1

    Спасибо бро за такие класнные видео уроки продолжай снимать такие видео, у меня есть вопрос, почему в курсе ни слова про CONSTRAINT, INDEX, unique Где используется почему и как они работает?

  • @andrey-on8bq
    @andrey-on8bq 8 лет назад +4

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

  • @kmfdmdmm
    @kmfdmdmm 9 лет назад +3

    Ну молодець же)))

  • @El-ns1vl
    @El-ns1vl 6 лет назад

    интересно было про FIRST узнать

  • @tanzwud1
    @tanzwud1 6 лет назад

    с помощью JavaEE можно копирование данных сделать из старой в новую таблицу. Так что это не так трудно как тебе кажется. Нужно напедалить код для переноса и уделить пару минут времени. После копирования данных в новую таблицу, старю уже можно удалить. Вот и все дела.

  • @user-dr6rj4zp7b
    @user-dr6rj4zp7b 8 лет назад +9

    кто такая Анна?

  • @Gorun1936
    @Gorun1936 6 лет назад

    Забыл как называют людей которые доставляют)) Доставщики,ахах) А за урок респект!

  • @Rice0987
    @Rice0987 4 года назад

    Первичный ключ, это поле, по которому потом можно будет вытянуть любое значение vlookpом. :)

  • @bpospanov
    @bpospanov 6 лет назад

    вижу видос СМТВ, ставлю лукас

  • @alexeybelousov5896
    @alexeybelousov5896 9 лет назад +1

    На самом деле форм нормализации 7 в том числе Бойса Кода, но распространены только первые 3, так как во многих случаях очтальными можно принебречь

    • @user-me4yc4xk5w
      @user-me4yc4xk5w 8 лет назад

      +Alexey Belousov Потому что остальные 4-ре мало кто может понять)))

  • @w.t.2905
    @w.t.2905 5 лет назад

    Здарова мужик! Спасибо за ролики! Можешь подсказать такой момент - создал таблицу, теперь хочу создать первое поле, с автоинкрементом и в качестве первичного ключа. Но не могу понять, как составить комманду. пробовал типа ALTER TABLE таблица ADD (id INT AUTO_INCREMENT, PRIMARY KEY(id))FIRST; и ничего не выходит. По-разному словами играл. В интернетах ответ не нашёл - на форумах подобные вопросы ламерские - и как обычно посылают в гугл, видимо, сами не знают что ответить, но обосраться при всех не могут - иди в гугл.

  • @crazy_snegir_ua4431
    @crazy_snegir_ua4431 5 лет назад +1

    Парень молодчинка! Вот только в стрелку вверх для перемотки уже написанного текста походу не знает(

  • @Noname-ww2lv
    @Noname-ww2lv 4 года назад

    хмм, а в MySQL нельзя сразу в одну строку задать столбцу что он будет первичным ключом
    ( например ADD COLUMN id INT AUTO_INCREMENT PRIMARY KEY FIRST; )?

    • @huccisanchez2976
      @huccisanchez2976 4 года назад

      попробуй, по моему можно

  • @Kurama.00
    @Kurama.00 3 года назад

    25:53 А не проще было сделать поле email первичным ключом? ...

  • @SeresHotes25
    @SeresHotes25 10 лет назад

    14:40 лучше было сказать не id, а int.(и малые шалости: целые числа - это натуральные, то есть те, что используются при счёте, противоположные им числа и нуль;;; ну или это недробные числа, то есть те, у которых нет запятой)

  • @WEJUSTLAZY
    @WEJUSTLAZY 7 лет назад +25

    Путин играющий в доту - топ

  • @ekaterinachernoles1568
    @ekaterinachernoles1568 8 лет назад +25

    пожалуйста, не создавай каждый раз новые БД. Мы ведь вместе с тобой все делаем, пошагово...

    • @incorcadit8615
      @incorcadit8615 7 лет назад +6

      лучше свои создавай , так лучше поймёшь.

    • @ramazanusen3323
      @ramazanusen3323 6 лет назад +6

      для тебя же лучше, лучше усвоишь

  • @just0110
    @just0110 7 лет назад

    20:20 будто прерываешься и начинаешь совершенно о другом. Клик на время. Перескакивает вперед на 8 урок по теме)

  • @SeresHotes25
    @SeresHotes25 10 лет назад +1

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

    • @markersx
      @markersx 10 лет назад +9

      Animator Геморрой с SQL? Этот язык специально создавался для интуитивно понятного и простого составления запросов к БД и универсальный. Собственно, проще некуда.

    • @SeresHotes25
      @SeresHotes25 10 лет назад

      markers геморойный - это значит сверхнеудобный

    • @markersx
      @markersx 10 лет назад +1

      Очень удобный.

    • @SeresHotes25
      @SeresHotes25 10 лет назад

      markers то есть, в случае ошибки в команде приходится всё переписывать - это удобно?

    • @CMTV_official
      @CMTV_official  10 лет назад +1

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

  • @Dvoini
    @Dvoini 7 лет назад

    для чего все эти пол часа???? просто впустую
    почему не записывать "огурцы, помидоры, картошка" в один столбец, если это устраивает, а потом уже из этой ячейки сделать массив, где запятая разбивает ячейку на части массива. т.е в итоге $array[0] = 'огурцы' $array[1] = 'помидоры' и т.д

  • @DobleFun
    @DobleFun 10 лет назад +1

    Почему-то мало просмотров и лайков..
    Похоже подписчикам были нужны только уроки по модингу -_-

    • @DobleFun
      @DobleFun 10 лет назад +3

      Я надеюсь ты продолжишь записывать уроки для тех кто тебя смотрит
      ;D

    • @GMByteJavaTM
      @GMByteJavaTM 9 лет назад

      Блин я не понимаю, как они делают моды без знаний java, наверное стоит посмотреть один урок для чисто для интереса)))

    • @GMByteJavaTM
      @GMByteJavaTM 9 лет назад

      Вася Васильев Поясняю: я имею ввиду посмотреть урок по созданию модов для майнкрафта)

  • @AndreyDelay
    @AndreyDelay 3 года назад

    Проверил , он там и правда не живёт

  • @krrr56ll69
    @krrr56ll69 5 лет назад

    уфф , хватит ошибаться 😂

  • @hotdog75rus
    @hotdog75rus 9 лет назад

    не хило так, для каждого дома улицу хранить.

    • @mercurial6480
      @mercurial6480 9 лет назад

      Око Сибири тебе для того и объясняют, зачем нужен вторичный ключ.

  • @user-hs3vx9og5o
    @user-hs3vx9og5o 6 лет назад

    Дружище, монтируй видео, удаляй косяки, чесслово, итак в консоли без автодополнения все это долго делается, а тут еще команды по 3 раза переписываешь)

  • @666saturation9
    @666saturation9 3 года назад

    штош

  • @yaroslav1469
    @yaroslav1469 5 лет назад

    Пока обьясняешь, не уходи от темы и не тяни букву Э. Смотреть невозможно