SQL. 7. Нормализация (1 форма)
HTML-код
- Опубликовано: 11 сен 2024
- 7 урок курса по SQL - языку программирования для оперирования реляционными базами данных.
В этом уроке вы узнаете, что такое атомарность данных, а также научитесь создавать первичные ключи, что в итоге даст вам нормализованную таблицу. .
JOIN QUIZGROUP PARTNER PROGRAM: join.quizgroup.... .
Красавчик единственный, кого я нашел, который может нормально объяснить про БД
Огромное тебе спасибо. Благодаря тебе научился с нуля работать с тем, с чем раньше вообще никогда не сталкивался и даже не имел представления, что такие вещи существуют в мире)))
толково обьясняет парень. Сделай курс по основам Git пожалуйста!!
Поправка: 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) Т.е. пропустить ключевое поле.
Ну и как решить проблему со свойством AUTO_INCREMENT ?!
AndreY xxx О чем вы?
лол)
О том, как сделать так, чтобы при добавлении новой записи, её id был не 11, а 8.
помоги пожалуйста. у меня айди добавился столбец в конец таблицы. как теперь его переместить в начало?
Ваш труд неоценим. Спасибо!
Спасибо за классные уроки! Мне, как начинающему, все предельно понятно и даже иногда проматываю :)
xi
Прям супер-классно и очень понятно объясняете, в отличие от многих других.
Красава, очень хорошо объяснил 👍
Ты лучший ! Спасибо за урок !
Большое спасибо, потрудился много))
супер !рекомендую!для початківця те що треба..
Борщец, Бутер, СалатИК )) улыбнуло
Анна с "щелковского шоссе" конечно повеселила, ну а если серьезно,то спасибо за видео!
Лайк за Mass Effect)
а возможно ли добавить столбец на второе или третье место? пишу ALTER TABLE ADD COLUMN Old int THIRD; не получается
Спасибо, очень круто!
как одним запросом добавить сразу 2 продукта и более?
Thank u
Благодарю!
Спасибо бро за такие класнные видео уроки продолжай снимать такие видео, у меня есть вопрос, почему в курсе ни слова про CONSTRAINT, INDEX, unique Где используется почему и как они работает?
При вводе данных в таблицу - не обязательно каждую строку вводить сначала! Можно просто ставить запятые между скобками каждой строки, а потом ; и enter!
Ну молодець же)))
интересно было про FIRST узнать
с помощью JavaEE можно копирование данных сделать из старой в новую таблицу. Так что это не так трудно как тебе кажется. Нужно напедалить код для переноса и уделить пару минут времени. После копирования данных в новую таблицу, старю уже можно удалить. Вот и все дела.
кто такая Анна?
Забыл как называют людей которые доставляют)) Доставщики,ахах) А за урок респект!
Первичный ключ, это поле, по которому потом можно будет вытянуть любое значение vlookpом. :)
вижу видос СМТВ, ставлю лукас
На самом деле форм нормализации 7 в том числе Бойса Кода, но распространены только первые 3, так как во многих случаях очтальными можно принебречь
+Alexey Belousov Потому что остальные 4-ре мало кто может понять)))
Здарова мужик! Спасибо за ролики! Можешь подсказать такой момент - создал таблицу, теперь хочу создать первое поле, с автоинкрементом и в качестве первичного ключа. Но не могу понять, как составить комманду. пробовал типа ALTER TABLE таблица ADD (id INT AUTO_INCREMENT, PRIMARY KEY(id))FIRST; и ничего не выходит. По-разному словами играл. В интернетах ответ не нашёл - на форумах подобные вопросы ламерские - и как обычно посылают в гугл, видимо, сами не знают что ответить, но обосраться при всех не могут - иди в гугл.
Парень молодчинка! Вот только в стрелку вверх для перемотки уже написанного текста походу не знает(
хмм, а в MySQL нельзя сразу в одну строку задать столбцу что он будет первичным ключом
( например ADD COLUMN id INT AUTO_INCREMENT PRIMARY KEY FIRST; )?
попробуй, по моему можно
25:53 А не проще было сделать поле email первичным ключом? ...
14:40 лучше было сказать не id, а int.(и малые шалости: целые числа - это натуральные, то есть те, что используются при счёте, противоположные им числа и нуль;;; ну или это недробные числа, то есть те, у которых нет запятой)
Путин играющий в доту - топ
7:39
пожалуйста, не создавай каждый раз новые БД. Мы ведь вместе с тобой все делаем, пошагово...
лучше свои создавай , так лучше поймёшь.
для тебя же лучше, лучше усвоишь
20:20 будто прерываешься и начинаешь совершенно о другом. Клик на время. Перескакивает вперед на 8 урок по теме)
кстати, а почему ты начал именно с этого языка, а не с обычных? я, конечно, понимаю, что это работа с базами данными. Но не проще ли сделать свою базу данных без всей этой геморойности с sql? даже в блокноте и то проще сделать.
Animator Геморрой с SQL? Этот язык специально создавался для интуитивно понятного и простого составления запросов к БД и универсальный. Собственно, проще некуда.
markers геморойный - это значит сверхнеудобный
Очень удобный.
markers то есть, в случае ошибки в команде приходится всё переписывать - это удобно?
Animator Есть несколько способов избежать этого: писать команду сначала где-то в блокноте например, а затем, проверив ее правильность, скопировать ее в таблицу. Более того, в случае ошибки можно очень быстро восстановить команду в строке и выполнить необходимые изменения используя клавиши со стрелками.
Ну и в заключение: сейчас я работаю только в консольной среде, без всяких там сред проектирования баз данных, поэтому и различных полезных фич тоже нет.
для чего все эти пол часа???? просто впустую
почему не записывать "огурцы, помидоры, картошка" в один столбец, если это устраивает, а потом уже из этой ячейки сделать массив, где запятая разбивает ячейку на части массива. т.е в итоге $array[0] = 'огурцы' $array[1] = 'помидоры' и т.д
Почему-то мало просмотров и лайков..
Похоже подписчикам были нужны только уроки по модингу -_-
Я надеюсь ты продолжишь записывать уроки для тех кто тебя смотрит
;D
Блин я не понимаю, как они делают моды без знаний java, наверное стоит посмотреть один урок для чисто для интереса)))
Вася Васильев Поясняю: я имею ввиду посмотреть урок по созданию модов для майнкрафта)
Проверил , он там и правда не живёт
уфф , хватит ошибаться 😂
не хило так, для каждого дома улицу хранить.
Око Сибири тебе для того и объясняют, зачем нужен вторичный ключ.
Дружище, монтируй видео, удаляй косяки, чесслово, итак в консоли без автодополнения все это долго делается, а тут еще команды по 3 раза переписываешь)
штош
Пока обьясняешь, не уходи от темы и не тяни букву Э. Смотреть невозможно