Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
33 / 34 / 13
Регистрация: 06.04.2012
Сообщений: 264
MySQL

Правильно ли я создал таблицу?

21.02.2015, 20:33. Показов 796. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Спустя 4 года практики создания сайтов на основе Вордпресса решил возобновить создание сайтов со своими решениями. И понял, что я очень сильно забыл множество очевидных вещей. Помогите вспомнить!)
Сейчас пишу простую задачу: данные их формы аяксом отправляются в обработчик, который записывает их в таблицу (заказы) и отправляет администратору на почту. Под заказы создал табличку пока что с такими полями:
  • id int(6) -ИД, все понятно
  • name varchar(255) - имя в поле заказа
  • email varchar(255) - мейл в поле заказа
  • phone varchar(255) - телефон в поле заказа
  • time timestamp - вот тут вопрос, правильно ли тип поля задал? Судя по статьям он должен был при создании строки, автоматом ставить время в unix секундах, а он ставит дату и время в полном формате. Это поле мне нужно для того, чтобы удаленные заявки физически удалялись через месяц из корзины. Т.е. при заходе в админку каждый раз будет делаться выборка WHERE status = 'trash' и проверятся, где прошло больше 3600*24*30 секунд. Все подходящие данные - дропаться.
  • status varchar(255) - статус заявки. new,trash,client и т.д., пока не придумал
  • comment text - произвольный комментарий менеджера
  • hash varchar(255) - md5 уникальны хеш. Для создания быстрых ссылок администрирования, ,
  • чтобы можно было пометить заявку прозвоненной по ссылке прямо из письма.

Правильно ли я назначил типы полей? Что можно почитать для начала из лаконичных руководств (тему в разделе уже изучил сверху)
Миниатюры
Правильно ли я создал таблицу?  
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.02.2015, 20:33
Ответы с готовыми решениями:

Создал новую таблицу и данные тоже дублируются
Вот код новой таблицы $t==$i++; echo "<table border='1' cellspacing='0' width='100%' cellpadding='3'><tr>\n"; ...

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

Правильно ли я создал таблицу?
В Erwin у меня есть такая связь: Правильно ли я создал таблицу Заказ_Товар? Create Table ProductsInOrder(OrderId Int Foreign...

4
53 / 44 / 10
Регистрация: 10.12.2013
Сообщений: 197
Записей в блоге: 1
23.02.2015, 07:06
id int(6) -ИД, все понятно
name varchar(255) - имя в поле заказа
email varchar(255) - мейл в поле заказа
phone varchar(255) - телефон в поле заказа
time timestamp - вот тут вопрос, правильно ли тип поля задал? Судя по статьям он должен был при создании строки, автоматом ставить время в unix секундах, а он ставит дату и время в полном формате. Это поле мне нужно для того, чтобы удаленные заявки физически удалялись через месяц из корзины. Т.е. при заходе в админку каждый раз будет делаться выборка WHERE status = 'trash' и проверятся, где прошло больше 3600*24*30 секунд. Все подходящие данные - дропаться.
status varchar(255) - статус заявки. new,trash,client и т.д., пока не придумал
comment text - произвольный комментарий менеджера
hash varchar(255) - md5 уникальны хеш. Для создания быстрых ссылок администрирования, ,
чтобы можно было пометить заявку прозвоненной по ссылке прямо из письма.

Я раньше задумывался над этим, а потом перестал. Разве что к id добавляю unsigned. Там где можно varchar сделать меньше 255, делаю меньше 255.

e-mail, name и phone по 50 хватает вполне.
time timestamp... varchar 50 тоже подойдёт. можно int поставить, тоже unsigned, там 0 … 4294967295 будет, только что посмотрел, а размер метки времени вроде меньше, точно не помню. а выбирая из базы на почту использовать функцию date(), для нужного отображения метки времени, в удобном для чтения формате.
status varchar(10)
hash varchar тут вроде должно хватить 30.

Поправьте, если где ошибаюсь.
0
33 / 34 / 13
Регистрация: 06.04.2012
Сообщений: 264
23.02.2015, 07:08  [ТС]
а что за параметр unsigned?
0
53 / 44 / 10
Регистрация: 10.12.2013
Сообщений: 197
Записей в блоге: 1
23.02.2015, 07:20
Цитата Сообщение от Jackky Посмотреть сообщение
Что можно почитать для начала из лаконичных руководств
Прочитай про типы данных в базах данных и руководство по созданию таблиц в MySQL.
Формулируешь задачу, думаешь какие функции нужны для реализации, ищешь их в справочнике.
Справочники есть в первой десятке по запросу в любом поисковике, причём обычно на первых позициях.

Добавлено через 6 минут
Цитата Сообщение от Jackky Посмотреть сообщение
а что за параметр unsigned?
Он выставляется на той же странице где и типы данных, только в одной из колонок правее, либо ниже, в зависимости от версии mysql. Означает беззнаковый. т.е. те биты которые резервируются для отрицательной части числа теперь доступны в положительной части.
0
33 / 34 / 13
Регистрация: 06.04.2012
Сообщений: 264
23.02.2015, 07:32  [ТС]
Спасибо! Вот сейчас обновил поля, так лучше стало? (добавились новые столбцы)
Миниатюры
Правильно ли я создал таблицу?  
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.02.2015, 07:32
Помогаю со студенческими работами здесь

Подскажите, правильно ли я создал связи?

Создал таблицу, записал на диск-ошибка
создал аксесс БД в делфи на флешки работает(путь указал не полный), записываю на дис - ошибка, что делать??

Как проверить правильно ли ты создал дистрактор
сабжж ???

Правильно ли создал запрос с внешними ключами MYSQL
Приветствую, правильно ли я сделал .Если нет , объясните что не так address_id из таблицы Users- должен быть внешним ключем таблицы...

Создал шаблон сайта в photoshope. Как теперь его правильно сверстать?
Имееться множество картинок, их придется резать на части? Так? И потом по отдельности верстать?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru