Этот урок набрал набрал достаточно большое количество комментариев и дальнейшее его комментирование отключено. Если вы хотели убедиться в правильности выполнения ДЗ или у вас возник вопрос по уроку, посмотрите ранее добавленные комментарии, кликнув по кнопке ниже. Скорее всего вы найдете там то, что искали. Если это не помогло - задайте вопрос в чате в телеграме - https://t.me/php_zone
Pavel-Tonk 15.12.2018 в 00:49

Спасибо=)

ivashkevich 16.12.2018 в 10:26

Пожалуйста :D

[email protected] 26.12.2018 в 14:34

Спасибо за урок! На сколько актуально уметь работать с помощью этих команд? Ведь все это можно сделать в админ-интерфейсе.

ivashkevich 26.12.2018 в 23:39

Если вы разработчик, то вам нужно будет писать код, вызывающий эти команды.

[email protected] 16.03.2019 в 16:36

на что-то должен опираться данный курс?)просто я прошел курс по HTML,php для начинающих,и в продвинутом курсе наткнулся на MySQL.Что-то ничего не понятно

ivashkevich 17.03.2019 в 23:49

Что именно непонятно? Этот курс не требует какой-либо предварительной подготовки.

[email protected] 17.03.2019 в 23:51

Спасибо,уже разобрался)До этого в php долго залипал,мозги перегрелись,тупанул))

ivashkevich 18.03.2019 в 00:04

Хорошо) Делайте перерывы

[email protected] 19.09.2019 в 23:02

При добавлении данные пишет #1366 - Incorrect string value: '\xD0\x90\xD0\xBB\xD0\xB5...' for column 'name' at row 1

Всё норм,дальше по уроку сделал норм кодировку и всё зашло)

ivashkevich 21.09.2019 в 07:15

Отлично)

VadimG 01.10.2019 в 09:26

У меня валятся ошибки в MySQL ввожу команду:
GRANT priv_type [(column1, column2, column3)]
ON database.[table]
TO 'user@host' IDENTIFIED BY 'new_password';

получаю

1064 - У вас ошибка в запросе. Изучите документацию по используемой версии MySQL на предмет корректного синтаксиса около '[(column1, column2, column3)]

ON database.[table]
TO 'user@host' IDENTIFIED BY' на строке 1


ввожу

GRANT ALL PRIVILEGES ON users.* TO superuser@localhost IDENTIFIED BY '12345';
Получаю

1064 - У вас ошибка в запросе. Изучите документацию по используемой версии MySQL на предмет корректного синтаксиса около 'IDENTIFIED BY '12345'' на строке 1

Артем, что не так, подскажи пожалуйста?

ivashkevich 03.10.2019 в 00:11

Ну так данные-то свои надо подставить в запрос! Колонки, бд, данные юзера

[email protected] 09.04.2020 в 13:02

Не совсем понял зачем нам нужен INSERT INTO TABLE COLUMNS если любой столбец аналогично мы можем добавить в таблицу через ALTER TABLE ADD, или это для добавления нескольких столбцов сразу ? Спасибо за курс SQL.

ivashkevich 09.04.2020 в 17:29

Это для добавления записей в таблицу. ALTER - для изменения структуры таблицы

OLEG-M 12.04.2020 в 10:24

Спасибо за урок.
Написал такой запрос

CREATE TABLE `news` ( 
`id` INT NOT NULL AUTO_INCREMENT , 
`author_id` INT NOT NULL , 
`author_name` VARCHAR(255) NOT NULL , 
`title` VARCHAR(255) NOT NULL , 
`content` TEXT NOT NULL , 
`date` DATETIME NOT NULL , 
PRIMARY KEY (`id`), 
UNIQUE (`author_id`,`author_name`) 
);
ivashkevich 13.04.2020 в 12:58

Ок, только имя автора здесь хранить не нужно, для этого у нас есть табличка users

NIKI 12.04.2020 в 22:49

Артем, спасибо большое за курс, очень все доступно изложено, информация разжеванная Вами заходит отлично, даже для такого нулевого новичка как я.

Обратите внимание, в разделе 'Создание таблиц' наверное опечатка. В примере фигурируют id, email, name. А в предложении ниже, сразу после примера, уже указан year вместо email: В нашем примере id, name, year - это имена столбцов.
Не подумайте, я не придираюсь, уверенна это опечатка, обратила Ваше внимание лишь для того, чтоб при возможности устранили чтоб не путаться.

ivashkevich 13.04.2020 в 14:48

Спасибо! Исправил

Fill 17.04.2020 в 12:18
CREATE TABLE `news` (
 `id` INT NOT NULL AUTO_INCREMENT ,
 `author_id` INT NOT NULL ,
 `title` VARCHAR(255) NOT NULL ,
 `text` TEXT NOT NULL ,
 `pub_date` DATE NOT NULL ,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ivashkevich 18.04.2020 в 05:17

Отлично!

studentDev 17.04.2020 в 16:26
CREATE TABLE `news` (
    `USER_ID` INT NOT NULL AUTO_INCREMENT ,
    `TITLE` VARCHAR(255) NOT NULL ,
    `TEXT` VARCHAR(255) NOT NULL ,
    `DATE` DATETIME NOT NULL ,
    PRIMARY KEY(`USER_ID`) ,
    UNIQUE(`TITLE`)
) ENGINE=InnoDB DEFAULT CHARSET=UTF8;
ivashkevich 18.04.2020 в 05:29

А чего все поля КАПСом-то? Для новостей лучше сделать первичным ключом числовой идентификатор. К ним будет обращение выполняться на сайте и в админке через него, и тайтл совсем не удобный вариант для этого.

studentDev 18.04.2020 в 06:25
CREATE TABLE `news` (
    `id` INT NOT NULL AUTO_INCREMENT ,
    `user_id` INT NOT NULL ,
    `title` VARCHAR(255) NOT NULL ,
    `text` TEXT NOT NULL ,
    `date` DATETIME NOT NULL ,
    PRIMARY KEY(`id`)
) ENGINE = InnoDB DEFAULT CHARSET=utf8;
ivashkevich 18.04.2020 в 06:28

Поле text лучше смотрелось.

UNIQUE(`title`, `user_id`)

Это для чего? Почему именно в таком сочетании?

studentDev 18.04.2020 в 07:22

В принципе можно оставить только user_id... )

ivashkevich 18.04.2020 в 07:45

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

studentDev 18.04.2020 в 07:49

Воу, исправил... В след. раз постараюсь быть внимательнее)

ivashkevich 18.04.2020 в 08:02

Теперь норм!

YuraG 17.04.2020 в 20:52
CREATE TABLE `news` (
  `id_news` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
  `author_id` INT UNSIGNED NOT NULL REFERENCES `users`(`id`),
  `title` VARCHAR(150) NOT NULL UNIQUE,
  `content` TEXT NOT NULL,
  `news_date` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
);
ivashkevich 18.04.2020 в 06:00

id_news, news_date - не нужно добавлять _news, табличка так называется, и без того понятно, чьи это id и дата публикации.

n.yurasheva 22.04.2020 в 01:13
CREATE TABLE `news` (
 `id` INT NOT NULL AUTO_INCREMENT ,
 `id_author` INT NOT NULL ,
 `title_news` VARCHAR(255) NOT NULL ,
 `text_news` TEXT NOT NULL ,
 `date_news` DATE NOT NULL ,
 PRIMARY KEY (`id`),
 UNIQUE (`title_news`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ivashkevich 22.04.2020 в 06:08

Привычнее author_id.

Не нужно добавлять к именам полей постфикс _news. Табличка так называется, и так понятно к чему это поле относится.

[email protected] 22.04.2020 в 22:07

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

ivashkevich 23.04.2020 в 10:43

Спасибо за замечание, обновил команду.

[email protected] 16.04.2021 в 10:39

По-моему, не обновил. Команда без типа данных

ivashkevich 17.04.2021 в 20:56

Я обновил саму команду, для rename не требуется тип

Timurik 26.04.2020 в 18:30

Создавал с помощью панели phpMyAdmin
предпросмотр SQL показал:

CREATE TABLE `my_db`.`news` (
 `news` INT NOT NULL AUTO_INCREMENT ,
 `id` INT NOT NULL ,
 `title` VARCHAR(255) NOT NULL ,
 `text` TEXT NOT NULL ,
 `date` DATE NOT NULL ,
 UNIQUE (`news`)
) ENGINE = InnoDB DEFAULT CHARSET=utf8;
ivashkevich 26.04.2020 в 19:40
`news` INT NOT NULL AUTO_INCREMENT ,
 `id` INT NOT NULL ,

Почему так? И почему вручную не составил запрос?

Timurik 26.04.2020 в 19:52

Я считаю, что news(идентификатор новости) и id(id автора) лучше задавать целыми числами.
Я заблуждаюсь?
Мне кажется вручную дольше и менее наглядно. Принцип написание мне понятен.

ivashkevich 26.04.2020 в 20:18

К тому что целые числа никаких вопросов нет. Вопрос в том, почему поле с первичным ключём называется news, а какое-то левое - id? Я думал в уроке довольно явно показано что id - это идентификатор сущности в таблице.

Timurik 26.04.2020 в 20:23

если я правильно понял нужно сделать вот так:

CREATE TABLE `my_db`.`news` (
 `id` INT NOT NULL AUTO_INCREMENT ,
 `author` INT NOT NULL ,
 `title` VARCHAR(255) NOT NULL ,
 `text` TEXT NOT NULL ,
 `date` DATE NOT NULL ,
 UNIQUE (`id`)
) ENGINE = InnoDB DEFAULT CHARSET=utf8;
ivashkevich 27.04.2020 в 12:59

Гораздо лучше, только author_id нужно сделать.

Timurik 27.04.2020 в 13:02

исправил:

CREATE TABLE `my_db`.`news` (
 `id` INT NOT NULL AUTO_INCREMENT ,
 `author_id` INT NOT NULL ,
 `title` VARCHAR(255) NOT NULL ,
 `text` TEXT NOT NULL ,
 `date` DATE NOT NULL ,
 UNIQUE (`id`)
) ENGINE = InnoDB DEFAULT CHARSET=utf8;

спасибо

ivashkevich 27.04.2020 в 20:03

Теперь ок

titelivus 05.05.2020 в 05:13
CREATE TABLE `news` (
 `id` INT NOT NULL AUTO_INCREMENT ,
 `articleName` VARCHAR(255) NOT NULL ,
 `text` TEXT NOT NULL ,
 `date` DATE NOT NULL ,
 PRIMARY KEY (`id`),
 UNIQUE (`articleName`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ivashkevich 06.05.2020 в 13:41

id автора потеряли

колонки именуются через подчеркивания, а не camelCase-ом

titelivus 07.05.2020 в 05:54
CREATE TABLE `news` (
 `id` INT NOT NULL AUTO_INCREMENT ,
 `author_id` INT NOT NULL ,
 `article_name` VARCHAR(255) NOT NULL ,
 `text` TEXT NOT NULL ,
 `date` DATE NOT NULL ,
 PRIMARY KEY (`id`),
 UNIQUE (`article_name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Исправил

ivashkevich 08.05.2020 в 19:53

Теперь отлично

nersesyan.sargis 21.05.2020 в 16:53
CREATE TABLE `news` (
    `id` INT NOT NULL AUTO_INCREMENT,
    `author_id` INT NOT NULL,
    `title` VARCHAR(255) NOT NULL, 
    `text` TEXT NOT NULL,
    `YEAR` DATE NOT NULL,
    PRIMARY KEY (`id`)
 ) ENGINE = INNODB DEFAULT CHARSET=utf8;
ivashkevich 22.05.2020 в 08:08

Отлично!

[email protected] 24.05.2020 в 14:35

CREATE TABLE News (
id INT NOT NULL AUTO_INCREMENT,
autor_id INT NOT NULL,
title VARCHAR(255) NOT NULL,
text TEXT NOT NULL,
date DATE NOT NULL,
PRIMARY KEY(id)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;

ivashkevich 24.05.2020 в 19:48

Всё отлично, только таблицу нужно назвать с маленькой буквы

superbobr 28.05.2020 в 11:49
CREATE TABLE `news` (
 `id` INT NOT NULL AUTO_INCREMENT ,
 `news_id` INT NOT NULL,
 `news_name` VARCHAR(255) NOT NULL ,
 `news_text` MEDIUMTEXT NOT NULL,
 `date_news` DATETIME NOT NULL,
 PRIMARY KEY (`id`),
 UNIQUE (`news_name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
ivashkevich 28.05.2020 в 20:37

Зачем везде приписка news? Это и так понятно по названию таблицы. Нужно убрать. Отсутствует id автора

superbobr 31.05.2020 в 09:01

Подправил

CREATE TABLE `news` (
`id` INT NOT NULL AUTO_INCREMENT ,
 `author_id` INT NOT NULL,
 `title` VARCHAR(255) NOT NULL ,
 `text` MEDIUMTEXT NOT NULL,
 `date` DATETIME NOT NULL,
 PRIMARY KEY (`id`),
 UNIQUE (`title`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
ivashkevich 01.06.2020 в 07:39

Теперь отлично

Sviatoslav 28.05.2020 в 15:58

Д/З

CREATE TABLE `news` (
 `id` INT NOT NULL AUTO_INCREMENT ,
 `author_id` INT NOT NULL ,
 `title` VARCHAR(255) NOT NULL ,
 `text` TEXT NOT NULL ,
 `date` DATE NOT NULL ,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ivashkevich 28.05.2020 в 20:39

Супер

[email protected] 28.05.2020 в 21:48
CREATE TABLE `news` (
    `id` INT NOT NULL AUTO_INCREMENT,
    `author` VARCHAR(255) NOT NULL,
    `title` VARCHAR(255) NOT NULL,
    `text` TEXT NOT NULL,
    `data` DATE NOT NULL,
    PRIMARY KEY (`id`)
    ) ENGINE=INNODB DEFAULT CHARSET=utf8;
ivashkevich 29.05.2020 в 05:28

Всё отлично, только вместо author нужно написать author_id, так как это ключ другой таблицы

[email protected] 29.05.2020 в 08:26

Поняла.

IePyton 03.06.2020 в 17:25
CREATE TABLE `news` (
`id_news` INT NOT NULL AUTO_INCREMENT ,
    `id_author` INT NOT NULL,
    `title_news` VARCHAR(255) NOT NULL,
    `text_news` TEXT(64) NOT NULL,
     `date_news` DATE NOT NULL,
    PRIMARY KEY (`id_news`)
) ENGINE=INNODB DEFAULT CHARSET=utf8;
ivashkevich 03.06.2020 в 19:10

id_news - зачем приписка _news везде? Это и так понятно по названию таблицы.
id_author - лучше author_id. Сначала указываем имя таблицы, по которой делаем связь, затем имя столбца.

IePyton 04.06.2020 в 11:04

Исправил командами через командную строку,
НО
команды, приведенные в уроке не работают:
Вот так не сработало:
ALTER TABLE имя_таблицы RENAME COLUMN старое_имя_столбца TO новое_имя_столбца; - пишет что не хватает какой-то запятой

Сработало вот так
ALTER TABLE news CHANGE date_news date DATE NOT NULL

ivashkevich 04.06.2020 в 11:12

Команда появилась в MySQL 8

[email protected] 11.06.2020 в 23:16
CREATE TABLE `news` (
 `id` INT NOT NULL AUTO_INCREMENT ,
 `avtor_id` VARCHAR(255) NOT NULL ,
 `news_name` VARCHAR(255) NOT NULL ,
 `news_text` TEXT NOT NULL;
`news_date` DATE,
 PRIMARY KEY (`news_name`),
 UNIQUE (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ivashkevich 13.06.2020 в 08:45

Зачем везде приписка news? Это и так понятно по названию таблицы. Нужно убрать.

Не avtor_id, а author_id, привыкайте использовать английские выражения.

В качестве ПК должен быть ID.

NR 16.06.2020 в 01:41

Спасибо большое за урок

CREATE TABLE `news` (
    `news_id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
    `author_id` INT NOT NULL UNIQUE ,
    `title` VARCHAR(50) NOT NULL ,
    `text` TEXT NOT NULL ,
    `date` DATETIME NOT NULL 
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ivashkevich 17.06.2020 в 07:32

news_id - зачем добавили news? Так таблица называется, и так понятно, для чего это поле.

    `author_id` INT NOT NULL UNIQUE ,

Один человек может написать только одну статью? Зачем такое ограничение?

NR 17.06.2020 в 23:59
CREATE TABLE `news` (
    `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
    `author_id` INT NOT NULL ,
    `title` VARCHAR(50) NOT NULL ,
    `text` TEXT NOT NULL ,
    `date` DATETIME NOT NULL 
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Разобралась с UNIQUE, это ограничение не нужно

ivashkevich 18.06.2020 в 09:39

Отлично!

[email protected] 24.06.2020 в 21:18

Скажите, пж, а зачем при создании таблицы указывать кодировку, если мы ее указали при создании самой БД?

ENGINE=InnoDB DEFAULT CHARSET=utf8;
ivashkevich 25.06.2020 в 11:23

Приветствую. Ответ в документации https://dev.mysql.com/doc/refman/8.0/en/charset-table.html

Hellbound 03.07.2020 в 22:19
CREATE TABLE `news` (
    `id` INT NOT NULL AUTO_INCREMENT,
    `author_id` INT NOT NULL,
    `name` VARCHAR(255) NOT NULL,
    `text` TEXT NOT NULL,
    `date` DATETIME NOT NULL,
    PRIMARY KEY (`id`)
    ) ENGINE=INNODB DEFAULT CHARSET=utf8;
ivashkevich 06.07.2020 в 06:58

Отлично

[email protected] 04.07.2020 в 14:16
CREATE TABLE news(
    id INT PRIMARY KEY AUTO_INCREMENT NOT NULL,
    author_id INT,
    title VARCHAR(100),
    news_text TEXT,
    dates DATE;
ivashkevich 06.07.2020 в 07:03

Запрос падает с ошибкой.
Почему все поля кроме id - nullable?

[email protected] 17.08.2020 в 11:08
Create table `News` (
`id` Int not Null auto_increment,
`Author_id` varchar(255) not Null,
`News_title` varchar(255) not null,
`News_text`Text not null,
`News_date` Datetime not null,
Primary Key (`id`),
unique (`News_title`)
) engine=InnoDB Default CHARSET = utf8;
ivashkevich 19.08.2020 в 17:04

Почему имена столбцов и таблицы с большой буквы? Да и вообще всех слов, почему всё пляшет? Приведите к единому формату.

Для чего к полям добавили префикс News_? Это таблица новостей, и без него понятно.

[email protected] 26.08.2020 в 16:02
CREATE TABLE 'news' (
'id' INT NOT NULL AUTO_INCERMENT,
'news_name' VARCHAR(255) NOT NULL,
'news_text' LONGTEXT NOT NULL,
'data of publication' DATE NOT NULL,
PRIMARY KEY (`id`),
 UNIQUE (`email`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ivashkevich 27.08.2020 в 08:41

Зачем везде приписка news? Это и так понятно по названию таблицы. Нужно убрать.

data of publication - должны быть подчеркивания вместо пробелов. И не data, а date. Data - это данные. Рекомендую пользоваться на первых порах google translate, если нет уверенных знаний в английском)

Thenona 04.09.2020 в 17:31

Добрый день. При создании таблицы использую кавычки ' ( буква Э) - sql выдает синтаксическую ошибку.Но когда копирую ваши кавычки и вставляю в свою таблицу -все ок. Что не так с моими кавычками?

ivashkevich 06.09.2020 в 14:32

Это наклонные кавычки, рядом с тильдой обычно расположены

Thenona 05.09.2020 в 14:52

Все , разобралась со своими кавычками. Я нажимала букву Э , а надо было Ё.Нужная кавычка была под буквой Ё.Спасибо всем кто помог)

maksim.kaz 28.10.2020 в 22:36
CREATE TABLE news
('id' INT NOT NULL AUTO_INCREMENT ,
'author_id' INT NOT NULL ,
'name_news' VARCHAR(255) NOT NULL ,
'text_news' MEDIUMTEXT,
'date_news' DATE,
PRIMARY KEY ('id'),
UNIQUE ('name_news')
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
maksim.kaz 28.10.2020 в 22:47

Подскажите, пожалуйста, почему на уроке мы задаём имя таблицы и название полей в кавычках, а в OpenServer это считается ошибкой и нужно писать без?
И еще один вопрос) Я имя своего профиля поменял на нормальное, а в комментариях пока ещё вижу своё старое имя. Подскажите, мне уже ни как не избавиться от ошибочно внесенного имени?)))

ivashkevich 30.10.2020 в 20:43

А где в опенсервере вы нашли редактор SQL-запросов?)

Имя в комментариях обновляется со временем.

maksim.kaz 30.10.2020 в 22:32

Здесь, принскрин во вложении, опенсервер ругается на кавычки

maksim.kaz 30.10.2020 в 22:36

А тут, где в названиях полей нет кавычек, опенсервис не выдает ошибку и создаёт таблицуописание картинки

ivashkevich 31.10.2020 в 06:49

Это не опенсервер, это phpMyAdmin)
У вас не те кавычки используются. Нужны ` а у вас '

maksim.kaz 31.10.2020 в 12:03

Спасибо большое за комментарий! Понял свою ошибку)

ivashkevich 30.10.2020 в 20:42

Зачем везде приписка news? То, что поле относится к новостям понятно по названию таблицы. Приписку _news нужно убрать.

maksim.kaz 30.10.2020 в 22:42

Спасибо, на будущее буду убирать!)

MikeSiebel 07.11.2020 в 20:58

Добрый день! Спасибо!

CREATE TABLE `news` (
 `id` INT NOT NULL AUTO_INCREMENT ,
 `creator_id` INT NOT NULL ,
 `title` VARCHAR(255) NOT NULL ,
 `text` MEDIUMBLOB NOT NULL ,
 `create_date` DATE NOT NULL ,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ivashkevich 08.11.2020 в 15:34

Нужно оформлять код в комментарии (в редакторе комментариев самая первая кнопка).

В остальном всё хорошо

[email protected] 20.11.2020 в 12:39
CREATE TABLE `news` (
    `id` INT PRIMARY KEY AUTO_INCREMENT,
    `author` VARCHAR(55) NOT NULL,
    `title` VARCHAR(255) NOT NULL,
    `content` TEXT NOT NULL,
    `date` DATETIME NOT NULL,
UNIQUE (`title`)
)
ivashkevich 23.11.2020 в 17:22

Нужно сохранять id автора, будьте повнимательнее

Larisa 21.11.2020 в 19:56
CREATE TABLE `news`(
    `id` INT NOT NULL AUTO_INCREMENT,
    `author_id` INT NOT NULL,
    `name_publ` VARCHAR(500) NOT NULL,
    `text` TEXT NOT NULL,
    `date_publ` DATE NOT NULL,
    PRIMARY KEY(`id`),
    UNIQUE(`name_publ`)
) ENGINE = InnoDB DEFAULT CHARSET = utf8;
DESCRIBE news;
ivashkevich 23.11.2020 в 17:33

Отлично! Можно просто name, даже нужно. И с датой тоже. Потому что и так понятно к чему эти поля относятся - табличка называется news

Larisa 23.11.2020 в 20:28

Спасибо!

[email protected] 01.12.2020 в 10:41
Задание 1. Таблица news для хранения новостей

CREATE table news (
id int auto_increment,
id_author varchar(255) not null,
news_title varchar(255) not null,
news_text text not null,
create_date date not null,
primary key (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

ivashkevich 01.12.2020 в 19:37

Нужно оформить код в комментарии (в редакторе комментариев самая первая кнопка).
Нажмите на карандашик и поправьте ваш комментарий, пожалуйста. А потом ответьте мне на этот комментарий. После этого проверю вашу домашнюю работу и отвечу на вопросы.

[email protected] 01.12.2020 в 20:46

Задание 1. Таблица news для хранения новостей

CREATE TABLE `news` (
    `id` int auto_increment,
    `id_author` varchar(255) not null,
    `news_title` varchar(255) not null,
    `news_text` text not null,
    `create_date` date not null,
    primary key (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ivashkevich 04.12.2020 в 20:35
`news_title`

Для чего префикс news?

[email protected] 05.12.2020 в 11:05

Потом почитал комменты и понял, что не нужен. По названию таблицы и так ясно. 
ivashkevich 06.12.2020 в 07:10

Ага)

[email protected] 09.12.2020 в 23:22

CREATE TABLE news (
id INT NOT NULL AUTO_INCREMENT ,
name VARCHAR(255) NOT NULL ,
text TEXT NOT NULL ,
PRIMARY KEY (id),
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

ivashkevich 13.12.2020 в 07:29

Нужно оформить код в комментарии (в редакторе комментариев самая первая кнопка).
Нажмите на карандашик и поправьте ваш комментарий, пожалуйста. А потом ответьте мне на этот комментарий. После этого проверю вашу домашнюю работу и отвечу на вопросы.

Ruslan2207 15.12.2020 в 21:56

Задание 1. Создать таблицу news.

CREATE TABLE `news` (
    `id` INT NOT NULL AUTO_INCREMENT ,
    `author_id` INT NOT NULL ,
    `title` VARCHAR(255) NOT NULL ,
    `text` TEXT NOT NULL ,
    `date` DATE NOT NULL ,
    PRIMARY KEY (`id`) ,
    UNIQUE (`author_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ivashkevich 17.12.2020 в 17:49

Для чего сделали ограничение чтобы у одного автора могла быть только одна статья?

Ruslan2207 19.12.2020 в 15:39

Понял свою ошибку, спасибо за поправку)

ivashkevich 21.12.2020 в 06:38

Пожалуйста

kan22 19.12.2020 в 16:26
CREATE TABLE `news` (
 `id` INT NOT NULL AUTO_INCREMENT ,
 `author_id` INT NOT NULL ,
 `title` VARCHAR(255) NOT NULL ,
 `text` TEXT NOT NULL ,
 `data` DATETIME NOT NULL ,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ivashkevich 21.12.2020 в 06:39

Отлично

[email protected] 21.12.2020 в 19:42

CREATE TABLE news(
idINT NOT NULL AUTO_INCREMENT,
Avtor_id INT NOT NULL,
Nazv VARCHAR(255) NOT NULL,
Text BLOB(2000) NOT NULL,
Date DATE NOT NULL,
PRIMARY KEY (id),
UNIQUE (id))
ENGINE=InnoDB DEFAULT CHARSET=utf8;```
пишите здесь ваш код

ivashkevich 23.12.2020 в 05:46

Нужно оформить код в комментарии (в редакторе комментариев самая первая кнопка).
Нажмите на карандашик и поправьте ваш комментарий, пожалуйста. А потом ответьте мне на этот комментарий. После этого проверю вашу домашнюю работу и отвечу на вопросы.

[email protected] 29.12.2020 в 16:43
CREATE TABLE news (
    id INT NOT NULL AUTO_INCREMENT,
    Avtor_id INT NOT NULL,
    Nazv VARCHAR ( 255 ) NOT NULL,
    Text BLOB ( 2000 ) NOT NULL,
    Date
    DATE NOT NULL,
PRIMARY KEY ( id ),
UNIQUE ( id )) ENGINE = INNODB DEFAULT CHARSET = utf8
ivashkevich 29.12.2020 в 19:44

Почему имена столбцов с большой буквы?

    Date
    DATE NOT NULL,

Зачем разнесли на 2 строки?

Используйте английский язык для нейминга, вот так:

  • Avtor_id
  • Nazv

не пишут

Alexandr92 14.01.2021 в 22:12
CREATE TABLE `news` ( 
`id` INT NOT NULL AUTO_INCREMENT , 
`id_writer` INT NOT NULL , 
`name` VARCHAR(255) NOT NULL , 
`text` MEDIUMTEXT NOT NULL , 
`date` DATE NOT NULL , 
PRIMARY KEY (`id`) , 
UNIQUE (`name`) 
) ENGINE=INNODB DEFAULT CHARSET=UTF8;
ivashkevich 15.01.2021 в 19:23

id_writer нужно заменить на writer_id, сначала пишется к чему id относится

Bulat 20.01.2021 в 21:43
CREATE TABLE `news` (
 `id` INT NOT NULL AUTO_INCREMENT ,
 `authorid` VARCHAR(100) NOT NULL ,
 `theme` VARCHAR(255) NOT NULL ,
 `content` VARCHAR(1024) NOT NULL ,
 `date` DATE NOT NULL ,
 PRIMARY KEY (`id`),
 UNIQUE (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ivashkevich 21.01.2021 в 06:21

authorid - разделяйте слова с помощью подчеркушек - author_id

Egor.Ka 10.03.2021 в 18:21

Вот сделал, а можно посмотреть код, с помощью которого я уже создал таблицу?

CREATE TABLE `news`(
    `news_id` INT NOT NULL AUTO_INCREMENT,
    `auth_id` INT NOT NULL ,
    `name_news` VARCHAR(255) NOT NULL,
    `text_news` VARCHAR(255) NOT NULL,
    `date_news` DATETIME NOT NULL,
    PRIMARY KEY(`news_id`)
) ENGINE = INNODB DEFAULT CHARSET = utf8;
ivashkevich 10.03.2021 в 19:02
SHOW CREATE TABLE `thetable`;
dimadima 30.04.2021 в 15:32
CREATE TABLE `news` (
 `id` INT NOT NULL AUTO_INCREMENT ,
 `title` VARCHAR(255) NOT NULL ,
 `text` VARCHAR(255) NOT NULL ,
 `id_author`INT NOT NULL,
 `data` DATE NOT NULL,
 PRIMARY KEY (`id`)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
dimadima 30.04.2021 в 15:37

И такой вопрос, всегда при входе в вкладку "SQL" в поле "Выполнить SQL-запрос(ы) к таблице" такая строка "SELECT * FROM "users" WHERE 1". Так и должно быть всегда или она как убирается? для чего она?

ivashkevich 01.05.2021 в 17:43

Просто дефолтный запрос для выборки данных

Логические задачи с собеседований