|
|
|
| Здравствуйте, ув.Программисты!
Я обращаюсь к вам по поводу автоматического удаления столбцов из таблицы при отсутсвии каталога с таким именем.
Как можно получить массив с именами столбцов в таблице? Функция mysql_list_fields(); выдает пустой результат.
Противоположная функция
<?PHP
public function create_moduls()
{
$query_chmod="SELECT ({$this->file}) FROM {$this->tablename}"; // SQL запрос
$result_chmod=@mysql_query($query_chmod);
if(!$result_chmod)
{
$query_create="ALTER TABLE {$this->tablename} ADD {$this->file} VARCHAR(100)";
@mysql_query($query_create);
}
}
?>
|
| |
|
|
|
|
|
|
|
для: Даниэль
(27.07.2008 в 16:27)
| | Не надо так делать.
Не надо добавлять столбцы, когда добавляются модули.
Добавляйте строки. | |
|
|
|
|
|
|
|
для: Trianon
(27.07.2008 в 16:53)
| | Вы не так поняли, добавляются столбцы в таблицу с правами доступа, там просто у меня по группам распределено. | |
|
|
|
|
|
|
|
для: Даниэль
(27.07.2008 в 17:16)
| | Кроме случаев с установкой и обновлением скрипта до какой-то более новой версии, Вы не должны ничего со столбцами делать. | |
|
|
|
|
|
|
|
для: Даниэль
(27.07.2008 в 17:16)
| | Я всё хорошо понял.
Еще раз.
Не надо добавлять столбцы. Надо добавлять строки.
Операторы изменения строк и операторы изменения столбцов вообще принадлежат разным разделам языка SQL Первые - операторы DML (data manipulation language) , вторые - операторы
DDL (data definition language) .
Так вот - в раздел DDL скрипт, по хорошему, не должен залезать вообще . Это дело DBA.
Скрипт должен укладываться в рамки SQL (SELECT) и DML (INSERT, DELETE, UPDATE)
>там просто у меня по группам распределено.
вот и распределите по группам правильно. | |
|
|
|
|
|
|
|
для: Trianon
(27.07.2008 в 17:44)
| | В строках группы (Администраторы, модераторы, пользователи и т.д).
В столбцах (Гостевая книга, Форум, Фотогалерея и т.д) | |
|
|
|
|
|
|
|
для: Даниэль
(28.07.2008 в 10:09)
| | Вот такого быть и не должно.
Классическое отношение N:N
Три столбца groups, modules, permissions
Если сильно хотите - добавьте общий суррогатный первичный ключ (id).
Создавая очередную строку, записываете в поле groups идентификатор группы,
в поле modules идентификатор модуля,
в поле permissions уровень прав доступа. | |
|
|
|