Про реляционные база данных
Как связать таблицы?
Какой программой пользоваться(нужно работать с БД MySQL) InnoDB?
Как в дальнейшем работать с такой БД?
Как вывести ответ на запрос так, чтобы у столбцов были подписаны названия?
А вы не пробовали мануал почитать? Книгу какую-нибудь по теории реляционных баз данных? Мануал по MySQL на родном сайте?
Теорию реляционных баз данных я читал. Может что и упустил.
Да и практики небыло?
Какой программой пользоваться(нужно работать с БД MySQL) InnoDB?
- мне нужно работать с БД в связке с PHP. Прочитал, что Денвер не работает с движком InnoDB. Позже попробовал, работает (может есть какие-то моменты которые я упустил)
Как связать таблицы?
- почитал. Таблицы MyISAM, я понял как делать из них выборку, и как с ними работать, но вот к сожалению связи они не поддерживают :(
Как вывести ответ на запрос так, чтобы у столбцов были подписаны названия?
- Выводить содержимое таблицы с помощью PHP я знаю как, в интернете примеры есть, вот только как подписать столбцы которые у меня в запросе указываются не увидел.
Как в дальнейшем работать с такой БД?
- В таблицах с движком MyISAM можно использовать JOIN ...
- Как добавить данные в связанные таблицы, (по отдельности или воспользоваться тем что они связаны...)
Подскажите ответы на эти вопросы, если возможно с ссылкой или с примером? Заранее спасибо...
Цитата:
Какой программой пользоваться (нужно работать с БД MySQL) InnoDB?
Так же, как и с MyISAM. Возможно, даже phpMyAdmin работает с ней.
Цитата:
Как связать таблицы?
- почитал. Таблицы MyISAM, я понял как делать из них выборку, и как с ними работать, но вот к сожалению связи они не поддерживают
- почитал. Таблицы MyISAM, я понял как делать из них выборку, и как с ними работать, но вот к сожалению связи они не поддерживают
Связи есть только в InnoDB. Лучше всего найти книжку, про которую я писал выше, и прочитать там несколько глав про foreign keys.
Цитата:
Как вывести ответ на запрос так, чтобы у столбцов были подписаны названия?
Столбцы придётся выводить самому. Скажем, так:
Код:
$rows = array();
$query = mysql_qyery('SELECT * FROM a_table');
while ($row = mysql_fetch_assoc($query)) {
$rows[] = $row;
}
if (!empty($rows)) {
$header = array_keys($rows[0]);
array_unshift($rows, $header);
}
$query = mysql_qyery('SELECT * FROM a_table');
while ($row = mysql_fetch_assoc($query)) {
$rows[] = $row;
}
if (!empty($rows)) {
$header = array_keys($rows[0]);
array_unshift($rows, $header);
}
Цитата:
Как в дальнейшем работать с такой БД?
Работа с InnoDB не отличается от работы с MySQL, если не использовать специфичные для одного из движков функции. Вставка, удаление, выборка записей - стандартный SQL.
Связность поддерживается самим движком таблицы.
Спасибо большое!:)
как получить разницу двух ячеек формата datetime?
в этом случае можно использовать вариант работы с функциями RIGTH() LEFT()?
Цитата:
Возжможно сделать так, чтобы значения записывались в поле автоматически по заданной формуле, или такое поле можно не делать, а обойтись только запросом на вывод нужного значения.
В MySQL нет формул, которые бы считались для поля по другим полям. Что делать зависит от твоего желания - лишнее поле может быть полезно:
- если ты часто смотришь таблицу не через какой-то свой PHP-скрипт, который считает это поле для тебя на лету, а через phpMyAdmin, mysql.exe и прочие средства.
- если это поле гораздо чаще требуется прочитать, чем записать. Например, по такому полю можно сделать индекс что сильно увеличит время доступа к таблице по этому условию.
- ну, и если таблица небольшая и/или тебе не жалко места для хранения ещё одного поля.
Цитата:
как получить разницу двух ячеек формата datetime?
Доки MySQL тебе в помощь.
Пишу:
delete from user where name = NULL
пока ничего не помогает (???) даже поиск значения NULL, результатов не дает.
По определению, ничто, даже другой NULL, не равен NULL. Короче говоря, NULL != NULL. Для проверки на него используется функция ISNULL(), см. доки.
Цитата: Craz-z-zy
Возникла проблема с удаленим значения NULL.
Пишу:
delete from user where name = NULL
пока ничего не помогает (???) даже поиск значения NULL, результатов не дает.
Пишу:
delete from user where name = NULL
пока ничего не помогает (???) даже поиск значения NULL, результатов не дает.
http://ru.wikipedia.org/wiki/NULL_(SQL)
я не очень понял, тут форум программистов или детский садик? =//
детский садик видимо - раз сразу за подобную тему автора сразу не наказали.