|
Помогите решить задачку
|
|||
---|---|---|---|
#18+
Всем привет)) Помогите решить задачку. Третий день ломаю голову. Создайте таблицу books для хранения данных о книгах. В таблице должны быть следующие поля: id – идентификатор, целое положительное. name – название, строка длиной не более 100 символов. description – описание книги длиной не более 1000 символов. isbn – международный стандартный книжный номер. 10 или 13 знаков. Добавьте 3 записи так, чтобы получалась таблица ниже: Имя таблицы id name description isbn 1 MySQL 5 Хорошая книга. 5941579284 2 Изучаем SQL Полезная книга. 5932860510 3 Изучаем Python. 4-е издание Подробная книга о Python. 9785932861592 Пытался многое но последнее так: CREATE TABLE books ( id INT UNSIGNED, name VARCHAR(100), description TEXT(1000), isbn BIGINT ); INSERT INTO books(id, name, description, isbn) VALUES (1, 'MySQL 5', 'Хорошая книга', 5941579284), (2, 'Изучаем SQL', 'Полезная книга', 5932860510), (3,'Изучаем Python. 4-е издание', 'Подробная книга о Python.', 9785932861592); Что я не так делаю? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2019, 09:35 |
|
Помогите решить задачку
|
|||
---|---|---|---|
#18+
Какие основания считать, что "задачка" решена неверно? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2019, 10:08 |
|
Помогите решить задачку
|
|||
---|---|---|---|
#18+
Akina, Выдаёт ошибку вот такую Wrong tables created Affected rows: 0 Affected rows: 3 ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2019, 10:42 |
|
Помогите решить задачку
|
|||
---|---|---|---|
#18+
Akina, Это задача из онлайн курса на сайте Stepik ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2019, 10:45 |
|
Помогите решить задачку
|
|||
---|---|---|---|
#18+
Не знаю как другие, но у меня лично нет никакого желания догадываться, что там себе придумал составитель вопросов на этом вашем онлайн-курсе. Попробуй сделать ID первичным ключом (и, возможно, автоинкрементом). Если в такой форме ответ будет принят, и задание формулируется ТОЧНО ТАК, как ты указал в вопросе, и нет никаких общих для всех вопросов установок на этот счёт - можешь смело ткнуть автора мордой в то, что он [censored], и его вариант ответа, который считается правильным, не соответствует тексту вопроса. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2019, 11:36 |
|
Помогите решить задачку
|
|||
---|---|---|---|
#18+
Akina, ok понял. То есть по факту SQL запрос составлен верно? Задам автору вопрос. Правда он не быстро отвечает. Ну подождём. Помимо этой у меня впереди ещё 178задач))) эта одна зависла пока из 82 решённых. Спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2019, 11:43 |
|
Помогите решить задачку
|
|||
---|---|---|---|
#18+
Насколько я помню, у поля типа TEXT не задаётся длина. И зачем тут вообще TEXT? Обычного VARCHAR достаточно. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2019, 12:10 |
|
Помогите решить задачку
|
|||
---|---|---|---|
#18+
miksoft, VARCHAR(1000) объясняли в курсе на уроке что это не совсем корректно. И надо заменять на TEXT ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2019, 12:16 |
|
Помогите решить задачку
|
|||
---|---|---|---|
#18+
Lugner32VARCHAR(1000) объясняли в курсе на уроке что это не совсем корректно.Любопытно узнать обоснование. Но больше похоже на глупость. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2019, 12:33 |
|
Помогите решить задачку
|
|||
---|---|---|---|
#18+
miksoft, ну типа можно конечно но лучше использовать тип TEXT. Цитирую препода: можно задать и VARCHAR (10000) но с точки зрения культуры кода, такая запись выглядит некрасиво. Так как говорит о том что вы не сильно задумывались при выборе типа. Для длинных текстов лучше использовать тип TEXT”. Ну я же только учусь и склонен делать по образу и подобию как рассказывает преподаватель :-). Вот.А сюда обратился за помощью как к людям с опытом и бОльшими знаниями чем я))) ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2019, 12:53 |
|
Помогите решить задачку
|
|||
---|---|---|---|
#18+
miksoftНасколько я помню, у поля типа TEXT не задаётся длина.У поля TEXT длина может не задаваться. Но может и задаваться. Вот у VARCHAR длина задаваться обязана. miksoftОбычного VARCHAR достаточно.Нет. Запросто можно нарваться на ограничение длины записи. miksoftЛюбопытно узнать обоснование. Но больше похоже на глупость.Ограничение на длину записи. https://dev.mysql.com/doc/refman/8.0/en/column-count-limit.html The internal representation of a MySQL table has a maximum row size limit of 65,535 bytes, even if the storage engine is capable of supporting larger rows. BLOB and TEXT columns only contribute 9 to 12 bytes toward the row size limit because their contents are stored separately from the rest of the row. The maximum row size for an InnoDB table, which applies to data stored locally within a database page, is slightly less than half a page for 4KB, 8KB, 16KB, and 32KB innodb_page_size settings. For example, the maximum row size is slightly less than 8KB for the default 16KB InnoDB page size. For 64KB pages, the maximum row size is slightly less than 16KB ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2019, 12:55 |
|
Помогите решить задачку
|
|||
---|---|---|---|
#18+
Так что, например, при innodb_page_size=4K поле VARCHAR(1000) в структуру тупо не влезет. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2019, 12:56 |
|
Помогите решить задачку
|
|||
---|---|---|---|
#18+
Lugner32, Надеюсь, попутно вам объяснили чем различаются эти типы данных, в частности, с точки зрения физического хранения и индексирования. Чтобы вы могли самостоятельно сделать выбор, а не пользоваться культом карго. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2019, 13:00 |
|
Помогите решить задачку
|
|||
---|---|---|---|
#18+
AkinaОграничение на длину записитам ключевое слово locally. Но есть ещё off-page. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2019, 13:08 |
|
Помогите решить задачку
|
|||
---|---|---|---|
#18+
miksoft, особо не говорили об этом. Просто сказано было что для более длинных данных нужно использовать TEXT, MRDIUMTEXT, LONGTEXT и разница лишь в допустимом количестве символов ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2019, 13:11 |
|
Помогите решить задачку
|
|||
---|---|---|---|
#18+
AkinaНо может и задаваться.не вижу такого в синтаксисе ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2019, 13:25 |
|
Помогите решить задачку
|
|||
---|---|---|---|
#18+
miksoftне вижу такого в синтаксисеВпрямую это, по-моему, нигде не описывается. Но работает так: на основании указанной максимальной длины выбирается подходящий тип (tinytext, text, mediumtext, longtext), а сам указатель максимальной длины удаляется. Поведение легко проверить, создав таблицу с несколькими полями TEXT с разной длиной, после чего посмотреть SHOW CREATE TABLE созданной таблицы. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2019, 14:50 |
|
|
start [/forum/topic.php?fid=47&fpage=38&tid=1829251]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
47ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
others: | 313ms |
total: | 463ms |
0 / 0 |