ФорумПрограммированиеPHP для идиотов → Повторяющиеся данные в БД

Повторяющиеся данные в БД

  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 11 ноября 2010 г. 10:15

    Ну суть такая, добавляем элемент, и если в БД такой уже есть(по названию), то прицепляем в конце его номер.

    кот
    кот-1
    кот-2
    кот-3


    Когда я файлы сохраняю, директорию сканирую, и потом проверяю по шаблону. Но обычно у меня в папке до 100 файлов, а тут БД, и по 1000 и по 100 000 может быть.
    Как лучше такое реализовать? Или только выбирать всю базу и просматривать?
  • Абырвалг

    Сообщения: 6476 Репутация: N Группа: Джедаи

    Spritz 11 ноября 2010 г. 10:41, спустя 26 минут 54 секунды

    как вариант

    table1
    id (int, PK)
    title (varchar, Unique key)

    INSERT INTO table1 SET title='foo' ON DUPLICATE UPDATE id=LAST_INSERT_ID(id)


    но может профи че пореальней скажут,
  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 11 ноября 2010 г. 10:50, спустя 8 минут 37 секунд

    Не, id добавлять нельзя, нужна именно нумерация объектов с точно таким же названием.

    За твой вариант тоже спасибо, не знал что так можно, обходился двумя запросами =) Буду знать =)
  • Абырвалг

    Сообщения: 6476 Репутация: N Группа: Джедаи

    Spritz 11 ноября 2010 г. 11:03, спустя 13 минут 25 секунд

    id остается такой же как и был. Простоты после этого получишь через mysql_insert_id нужный ид

Пожалуйста, авторизуйтесь, чтобы написать комментарий!