1. PHP / Говнокод #7218

    +150

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    function keySave($key, $url)
    	{
    		$db = 'i_keys';
    		$this->keyDelete($key, $url);
    		$insert['key'] = $key;
    		$insert['url'] = $url;
    		$this->db->insert($db, $insert);
    	}
    
    	function keyDelete($key, $url)
    	{
    		$db = 'i_keys';
    		$this->db->where('url', $url);
    		$this->db->where('key', $key);
    		$this->db->delete($db);
    	}

    Можно ли так делать для предотвращения полных дублей в базе? Чем это не очень хорошо?

    Запостил: increazon, 10 Июля 2011

    Комментарии (24) RSS

    • показать все, что скрытоСмотреть на 04 строку.
      Ответить
    • нубов не кормить
      Ответить
      • это же инкрезон.

        з.ы. каптча 8228 подтвердила.
        Ответить
        • внезапно
          http://tinyurl.com/6dazpva

          пруф
          http://tinyurl.com/5vzszqj
          Ответить
          • похож на робота
            Ответить
            • похоже на работу не берут, да
              Ответить
            • а мне кажется вот на кого похож
              http://cache.ohinternet.com/images/b/b2/Slowpoke.gif
              Ответить
              • правильнее так:
                http://encyclopediadramatica.ch/images/2/24/Slowpoke_original.png
                ohinternet это типа lolcats
                Ответить
          • > so i SEO specialist too.
            > http://apokalipsis-2012.ru/
            Грёбаные ГСовцы, скоро уже по запросу "синхрофазотрон" будет вылазить "сайт, целиком посвящённый синхрофазотронам, синхрофазотрон недорого, синхрофазотрон скачать бесплатно". Заебали.
            Ответить
    • 1. mysql: есть replace
      2. есть индексы (в т.ч. первичные ключи) и (не mysql) констрейнты

      а вообще, как бы никто не запрещал.

      + разница в том, что в случае констрейнтов и ключей мы сохраним старую запись, а в остальных случаях, включая сабжевый, обновим на новую
      Ответить
      • В MySQL тоже есть констрейнты. Надо только нормальные движки вроде InnoDB юзать.
        Ответить
    • google->insert ignore
      Ответить
      • не слышал, но это полезность его зависит есть ли обёртка CodeIgniter. Я с чистым уже давно не работал.
        Ответить
    • Просто если добавлять одну и ту же запись, то поле первичного ключа id_keys постоянно растет на единицу.
      Ответить
      • Потер. Нечего кормить, да. Не справочный сайт.
        Ответить
      • >>кококок первичного ключа кококо
        Автор, здесь вам не stackoverflow
        Ответить
    • Юзать ON DUPLICATE KEY UPDATE
      Ответить
    • Если к записи привязаны другие по foreign key on delete cascade - то капец им.
      Но, думаю, что такое foreign key, вы не знаете.
      Ответить
      • Слышал, но практического применения у меня оно не нашло. Мы используем принцип KISS (http://ru.wikipedia.org/wiki/KISS_%28%D0%BF%D1%80%D0%B8%D0%BD%D1%86%D 0%B8%D0%BF%29), по этому foreign key не популярен.
        Ответить

    Добавить комментарий