PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (789): В начало « ... 4 5 6 7 [8] 9 10 11 12 ... » В конец

> Найдено сообщений: 11825
Мелкий Отправлено: 10 Февраля, 2019 - 12:19:02 • Тема: Не работает SQL запрос в цикле. Можно ли писать sql запросы в цикле? • Форум: Вопросы новичков

Ответов: 1
Просмотров: 60
Вам не нужен запрос в цикле.
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT `db_jobs`.*, (SELECT COUNT(*) FROM `db_jobs_use` WHERE `id_job` = `db_jobs`.`id`) AS forro FROM `db_jobs` WHERE `accept` = '1'


А по самому вопросу - по показанным используемым методам очевидно что ваш класс реализован в принципе неверно и то поведение что вы наблюдаете является прямым следствием кривого дизайна этого класса..
Результат запроса далеко не случайно всегда делался отдельным объектом относительно класса выполняющего запросы
Мелкий Отправлено: 09 Февраля, 2019 - 13:27:22 • Тема: Проблема с SQLite • Форум: Работа с СУБД

Ответов: 4
Просмотров: 224
Корректный ответ требует упомянуть назвать обе актуальные возможности.
Мелкий Отправлено: 09 Февраля, 2019 - 10:39:20 • Тема: Проблема с SQLite • Форум: Работа с СУБД

Ответов: 4
Просмотров: 224
sqlite и sqlite3 - разные библиотеки. Как mysql и mysqli.
SQLiteDatabase - это из sqlite, который умеет только старый sqlite 2.x. и потому не стоит использовать.
Используйте sqlite3 или pdo
Мелкий Отправлено: 08 Февраля, 2019 - 10:06:54 • Тема: Как вам такой MySQL запрос? • Форум: SQL и Архитектура БД

Ответов: 4
Просмотров: 203
Начиная с 5.5 уже существует
Мелкий Отправлено: 08 Февраля, 2019 - 09:36:52 • Тема: Как вам такой MySQL запрос? • Форум: SQL и Архитектура БД

Ответов: 4
Просмотров: 203
LIME пишет:
и 2 индекса Mysql не умеет

Не совсем так[dot]

А в остальном согласен, для нормальной работы выгоднее продублировать строку для диалога.
Мелкий Отправлено: 05 Февраля, 2019 - 20:30:09 • Тема: Запрос к БД • Форум: Работа с СУБД

Ответов: 6
Просмотров: 244
teleoperator27, в принципе тоже можно. Вряд ли not in тут хороший выбор, впрочем. Хотя проверять надо
Мелкий Отправлено: 05 Февраля, 2019 - 19:30:53 • Тема: Запрос к БД • Форум: Работа с СУБД

Ответов: 6
Просмотров: 244
нормально не умеет.
единственный костыль - собрать через большой подзапрос с union all нужные значения и через not exixts подзапрос выкинуть те что есть в таблице.

CODE (SQL):
скопировать код в буфер обмена
  1. SELECT pt.i FROM (
  2. SELECT 1 AS i
  3. UNION ALL
  4. SELECT 5
  5. /*...*/
  6. ) pt
  7. WHERE NOT EXISTS (SELECT id FROM users WHERE id = pt.i)
Мелкий Отправлено: 05 Февраля, 2019 - 19:02:26 • Тема: Запрос к БД • Форум: Работа с СУБД

Ответов: 6
Просмотров: 244
Зависит от СУБД.
Мелкий Отправлено: 02 Февраля, 2019 - 15:48:28 • Тема: файл ibdata1 растёт в ширину • Форум: SQL и Архитектура БД

Ответов: 10
Просмотров: 330
LIME пишет:
а как насчет table optimize

Я намеренно даже выделил never shrinks.
mysql никогда не обрезает этот файл. Не умеет. Перестроение таблицы каким-либо образом переместит данные в другое место внутри этого файла-tablespace или в другой файл при включенном per file, но файл этот уменьшить не может. Вообще. Штука очень древняя.
https://bugs[dot]mysql[dot]com/bug.php?id=1341

Для btree - да, всё верно, индекс хранит копии индексируемых значений. Поэтому индексы занимают место, но и потому по btree можно сделать index only scan. Специфика кластеризованного innodb - во вторичные индексы всегда неявно входит ещё и значение первичного ключа.
Мелкий Отправлено: 01 Февраля, 2019 - 22:55:13 • Тема: файл ibdata1 растёт в ширину • Форум: SQL и Архитектура БД

Ответов: 10
Просмотров: 330
Что могу однозначно процитировать, так это вот тут: https://dev[dot]mysql[dot]com/doc/refman[dot][dot][dot]ystem_tablespace
Цитата:
keep all InnoDB tables and indexes inside the system tablespace, often causing this file to become very large. Because the system tablespace never shrinks, storage problems could arise if large amounts of temporary data were loaded and then deleted.

То есть два момента:
- в этом файле хранятся все таблицы и индексы созданные при выключенном innodb_file_per_table.
- mysql просто не умеет уменьшать этот файл

Насколько знаю, единственный выход - сдампить всё, удалить все innodb объекты, полностью стопнуть базу, удалить ibdata и ib_log, запустить базу и восстановить таблички. Ну или сдампить всё нужное и полностью переинициализировать инстанс.

Как именно он переиспользует свободное место - не знаю.
Мелкий Отправлено: 01 Февраля, 2019 - 09:04:28 • Тема: Достать все целые числа из подстроки • Форум: Регулярные выражения

Ответов: 5
Просмотров: 275
idiot3000 пишет:
Можно ли как то одним выражением все это достать?

нет.
Подмасок должно быть фиксированное число.
Или регулярка, выхватывающая аттрибут id с дальнейшей обработкой до массива (explode, в частности)
Или один цикл. Но без регулярки, а пишете свой парсер строки на конечном автомате.
Мелкий Отправлено: 29 Января, 2019 - 14:49:45 • Тема: Зациклилась кнопка, нужна консультация • Форум: Вопросы новичков

Ответов: 6
Просмотров: 190
difight, во время которого из запусков скриптов?
Если не поняли, почему я спрашиваю именно так - вы просто не понимаете, как работает shared nothing архитектура PHP. Между разными запусками одного скрипта нет совершенно никакой связи. Кроме той, что запрограммируете самостоятельно.
Да, вы можете сделать unset($_POST); Он выполнится, удалит эту переменную, затем скрипт завершится, браузер пришлёт новый запрос, PHP инициализирует окружение заново. Почему здесь не должно быть $_POST, если клиент его прислал?

difight пишет:
а unset случайно не после header("Refresh:0"); вставляли ?

Кстати сюда тоже прокомментирую: не имеет значения. header не прерывает поток выполнения скрипта и как правило не будет отправлен клиенту до начала вывода страницы (или завершения скрипта).
Мелкий Отправлено: 29 Января, 2019 - 14:30:58 • Тема: Зациклилась кнопка, нужна консультация • Форум: Вопросы новичков

Ответов: 6
Просмотров: 190
Сделайте редирект как в 4 строке.
unset для любых $_POST, $_GET, $_COOKIE, $_SERVER делать бесполезно, их присылает клиент и если клиент их опять пришлёт - конечно они никуда не пропадут.
Мелкий Отправлено: 27 Января, 2019 - 18:10:02 • Тема: Не получается установить composer через curl • Форум: Apache и другие веб-серверы

Ответов: 2
Просмотров: 163
Команда странная. Скорей всего где-то должны быть кавычки.
Мелкий Отправлено: 23 Января, 2019 - 10:37:12 • Тема: Уменьшение кол-ва подключений к mysql из php • Форум: Обсуждение статей

Ответов: 4
Просмотров: 768
clawham пишет:
Ну и конечно же самый главный вопрос - а как можно более правильно написать код получения картинки? он является какбы рабочей лошадкой.

Повторюсь: зачем вам вовсе писать картинку в базу если заведомо известно что читать будут только последнюю?
Зачем вам вообще какой-то код для получения картинки?
Раздавать картинку напрямую файлом на порядок-другой дешевле чем из базы и ещё на пару порядков дешевле если не дёргать PHP. А та задача что вы пока что описали именно что не требует ни чтения базы ни даже вызова PHP для показа картинки.

clawham пишет:
По поводу persistent sqli я ничего не понял - просто вместо localhost надо написать p:localhost?

Согласно документации да. Редко mysqli вижу. В сравнении с PDO неудобный API для prepared statements.

clawham пишет:
а с данными - штук 400 датчиков раз в 3 секунды должны будут делать запрос как на передачу картинки только там будут числовые данные и вот эти данные надо складировать в базу данных а потом опять же выдавать в графики и прочее и там уже рабочей лошадкой будет загрузка данных на сервер. и тоже надо как-то красиво это делать чтоб не насиловать sql

Начать с того, что реляционная база вообще не очень подходящий выбор для откровенно time-series данных, для которых есть специальные time series database.
400 датчиков по 3 секунды, 4млрд событий в год. Ну такое. Пробовали сгенерировать фиктивных данных за пару месяцев? Для начинающего 350млн строк в месяц и попытка представить выборку из них на графике могут оказаться сюрпризом. Сильно зависит от того как именно строить графики, впрочем.

clawham пишет:
почему отдельно выделил платные? да потому что даже если взять самый дорогой план на https://thehost[dot]ua - то там всего 36000 соединений максимум... это ж всего 10 клиентов с обновлением раз в секунду наклоцать могут! Как не на нем порталы целые предлагается хостить с 10-ком сайтов?

А что, вот это - единственный вариант?
Ну хрень какая-то. Дешёвая. 7 долларов в месяц всего. Да даже топовый сервер всего на 32гб ram и с 4 ядрами предлагают. Что за ужас там ставят вместо SSD боюсь представлять. В общем компания явно специализируется на низкобюджетных клиентах с визитками и другой мелочёвкой. Что с другой стороны тоже неплохо, лучше чем пытаться угодить всем и не угодить никому в итоге.
Кому надо что-то приличнее - пойдут к другим. Лично мне привычна картина из нескольких серверов на 100-200ГБ RAM и нескольких десятков ядер CPU только под нужды базы обслуживающей всего один сайт.

Страниц (789): В начало « ... 4 5 6 7 [8] 9 10 11 12 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB