Ответы пользователя по тегу MySQL
  • Как упорядочить id записей в MySQL?

    Варианты:
    1) Перед удалением записи узнать её id. Вставить новую запись с указанным id.
    2) Удаляя запись, записывать её id в другую таблицу - отдельную таблицу для id.
    При вставке новой записи, смотреть есть ли в таблице для id айди.
    Если есть - вставлять новую запись с указанным id (и удалить этот id из таблицы для id). Иначе вставлять запись с автоинкрементным айди.

    PS
    Id обычно первичный ключ. Нельзя вот так просто сдвинуть ключи т.к. одна запись удалилась.
    Поэтому и создается новый id, например 4, когда до этого удалили 3.
    По идее в бд сейчас айди 1 и 2 и 3 свободен. Но не известно на что ссылался этот ключ, на какие таблицы.
    Ответ написан
    Комментировать
  • В базу данных не отправляются данные которые введены в форме, что делать?

    а другие строки не появляются

    Возможно потому что
    $mysql->close();
    Вы закрыли соединение с БД после же первого запроса.
    А у вас цикл.
    Закрывать соединение почти никогда не надо (оно закроется само когда выполнится скрипт).
    Ну или вынесете закрытие за цикл.

    Соединение с БД
    $mysqli = new mysqli($hostname, $username, $password, $base);
    // Если ошибка - сообщаем что не можем соединиться с БД.
    if ($mysqli->connect_errno){echo 'Error. System can not connect to the database.'; exit();}
    // Настройки
    $mysqli->query("set character_set_client='utf8'");
    $mysqli->query("set character_set_results='utf8'");
    $mysqli->query("set collation_connection='utf8_general_ci'");


    Ваш запрос

    $mysql->query("INSERT INTO `users` (`login`, `password`, `name`) VALUES('$login', '$password', '$name')") or die ($mysqli->error);
    
    // Не закрываем соединение с БД!
    // $mysql->close(); // Не надо!
    Ответ написан
    2 комментария
  • Как загрузить большую БД 23гб?

    Не очень понимаю, зачем грузить БД по ftp.
    Файлы - ясно. Базу - зачем? Чтобы лежала мертвым грузом? Ну так разбить архиватором на файлы по 100 мб и загрузить.

    Если нет сервера БД - например sqlite, то почему такой размер?
    Если есть сервер БД, то открываем его для внешних подключений, запускаем Navicat или его аналог и импортируем базу.
    Ответ написан
    Комментировать
  • Почему сбивается кодировка?

    Как сказали выше.
    head пропиши


    Соединение с БД
    $mysqli = new mysqli($hostname, $username, $password, $first_base);
    //Настройки соединения
    $mysqli->query("set character_set_client='utf8'");
    $mysqli->query("set character_set_results='utf8'");
    $mysqli->query("set collation_connection='utf8_general_ci'");


    Мне кажется или у тебя база в кодировке cp1251, а таблица Users в utf8?
    Выбери одну кодировку и всё делай в ней.
    Ответ написан
    Комментировать
  • Как лучше организовать систему поиска и вывода пользователя?

    logpol32
    @logpol32 Автор вопроса
    "дыц" - понравился. Все просто, но
    $query ="SELECT * FROM country WHERE country_name like '" . $_POST["keyword"] . "%' ORDER BY country_name LIMIT 0,6";

    в случае 10.000 записей как себя поведет?
    Ответ написан
    1 комментарий