Форум программистов, компьютерный форум, киберфорум
PHP: Фреймворки
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518

Поддержка актуальности структуры базы MySQL

26.07.2016, 23:40. Показов 713. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Гуру, посоветуйте фреймворк/движок для обновления/исправления/поддержки структуры таблиц в MySQL, пожалуйста!

Пишу самописный движок, работающий с набором таблиц MySQL
Куча ПРЯМЫХ запросов к таблицам с указанием реальных названий полей.
Есть 2 сервера - рабочий с кучей РЕАЛЬНЫХ данных (клиенты работают - останавливать нельзя) и отладочная в которой смело можно менять структуру без риска "завалить проект".

НАДО: перенести и мягко обновить структуру из отладочной базы в рабочую. Если в таблице добавилось 2 поля это не значит что надо очистить все таблицы и пересоздать уже с полями - надо просто добавить 2 новых поля! Если в процессе одно поле разделилось на 2 (или 2 обьединились в одно) нужна функция дробления "при переходе от структуры версии 2.001 к 2.003".

Слышал (не приходилось изучать) что подобное встроено во многие фреймворки (от знатока питона). Мне надо БЫСТРО изучить нечто подобное на PHP!! (а значит не советуйте учить тот-же Yii целиком, если подобное в учебнике на 30м уроке/дне изучения). Посоветуйте что-нибудь попроще пожалуйста!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.07.2016, 23:40
Ответы с готовыми решениями:

Поддержка актуальности данных в таблица на стороне клиентов
Задача: С БД работает несколько операторов. Необходимо поддерживать актуальность данных в справочниках, а именно, если 1-й оператор...

Ajax отправка данных из формы в базу mysql и вывод из базы mysql
$(function() { $('#chat_submit').click(function(e) { e.preventDefault(); var chat_name =...

Точка актуальности
Подскажите пожалуйста, бухгалтер хочет чтобы точка актуальности не могла передвинутся дальше чем дата запрета редактирования документа!!!...

6
Диванный эксперт
Эксперт С++
 Аватар для Max Dark
2550 / 2064 / 971
Регистрация: 09.10.2013
Сообщений: 4,793
Записей в блоге: 4
27.07.2016, 00:05
Цитата Сообщение от Tester64 Посмотреть сообщение
надо просто добавить 2 новых поля!
если "просто добавить" то alter table, обернутый в транзакцию
естественно, что перед этим нужно сделать бекап.
0
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
27.07.2016, 00:48  [ТС]
Цитата Сообщение от Cra3y Посмотреть сообщение
если "просто добавить" то alter table, обернутый в транзакцию
Шутишь? Именно поэтому и задал вопрос!
Мне нужен КОМБАЙН! Чтобы я задал структуру в текстовике классами, чтобы я сделал функции перехода между версиями, чтобы одним кликом туда перекинулась новая структура в файлике и одной кнопкой провелись десятки изменений... добавились новые поля, заполнились функцией обязательные поля/таблицы/обработки, удалились лишние, переименовались поля и т.д... я подобное сделал сам, но у меня примитив! Только добрался до индексов. Но еще не научился управлять длиной CHAR'ов и дробностью чисел...

Недавно общался с разработчиком django/питона и мне рассказали что там все это(мной криво-косо написанное) уже изначально встроено в фреймворк! С возможность даже "откатать" на любую версию структуры (даже предыдущую)... Думаю и в Yii должно быть подобное (но он слишком тяжелый в изучении и большой по размеру)! А может быть даже есть фремворк/движок где подобное является основой системы, а не одним из "бонусов/плагинов"...

p.s. много лет пользуюсь этим в 1С - не представляю как без этого обходятся разработки сложных проектов!!!
0
 Аватар для tarasalk
1992 / 1216 / 440
Регистрация: 13.06.2013
Сообщений: 4,115
27.07.2016, 12:10
Это называется "миграция бд".
Я только в laravel их использовал, весьма удобно. Но наверняка есть решения и без фреймворка.
1
 Аватар для php10
146 / 105 / 44
Регистрация: 30.04.2016
Сообщений: 550
27.07.2016, 12:18
Как выше уже написали это называется миграции, есть во всех популярных фреймворках.

Можно навелосипедить свой класс, но есть уже готовый движок для миграций: https://github.com/robmorgan/phinx

Это то, что тебе надо.
1
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
28.07.2016, 02:59  [ТС]
Цитата Сообщение от tarasalk Посмотреть сообщение
Я только в laravel их использовал, весьма удобно. Но наверняка есть решения и без фреймворка.
Цитата Сообщение от php10 Посмотреть сообщение
есть уже готовый движок для миграций: https://github.com/robmorgan/phinx
Я так понял они оба только через консоль работают???
А если у меня бесплатный/ограниченный доступ к серверу?? FTP+PHP+MySQL и все!!!

И еще... в статьях (пока) не нашел ни одного упоминания того "ЧТО МЕНЯЕТСЯ"!
Хотелось бы увидеть мини-отчет "того что было и того что планируется" прежде чем "соглашусь"! Вдруг где-то напортачил и данные потеряю в уже работающей версии...
0
 Аватар для php10
146 / 105 / 44
Регистрация: 30.04.2016
Сообщений: 550
28.07.2016, 08:18
Tester64,
Вот в Yii2 пример миграции с добавлением и удалением (для примера) колонки name, в таблице users:
PHP
1
2
$this->addColumn('users', 'name', $this->string());
$this->dropColumn('users', 'name');
Ну так придумайте свою обертку, чтобы можно было запустить через браузер, вообще странно, делать проект и не иметь доступ к консоли. Я не представляю уже, как это Обычно SSH доступ должен же быть.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.07.2016, 08:18
Помогаю со студенческими работами здесь

Оцените по стоимости и по актуальности
Уважаемые форумчане! Уже не 1 месяц пытаюсь найти подходящий б/у ПК, по приемлемой цене и с достойными комплектующими. Имеется следующий...

Срок актуальности микроконтроллера
Добрый день! Где и как можно узнать срок актуальности какого-либо микроконтроллера? Интересует год начала выпуска и до какого года его...

Оценка актуальности железа
Здравствуйте! подскажите что на данный момент устарело в системе и требует замены , пользование иногда WOT в основном это 3-д программы для...

Структуры и базы данных
Как в С++ сделать базу данных??? Организовать базу данных для поликлиники, содержащий следующую информацию: шифр клиента, фамилия, имя,...

Перенос структуры базы
Привет, All. Подскажите как перенести структуру базы с одного MSSQL сервера на другой. Как сохранить структуру базы в файл знаю...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru