Archive for

януари 5th, 2011

Добавяне на множество безразборно генерирани низове към база от данни

Днес случайно се натъкнах на парче код, написано от мен доста отдавна, което много ме изнедада и му се зарадвах някакси. Сътворил съм странно решение на интересна задача. Представете си, че трябва да добавите определено количество от редове в таблица, например промо кодове, които реално са безразборно генерирани низове. Тези низове трябва да са уникални разбира се, така че имаме unique key в базата! И така вместо генериране на кодовете, проверка дали вече ги има в таблицата и ако не-> добавяне в таблицата, аз просто съм направил следното:

$j = 0;
for($i=0; $i<$count; $i++)
{
	while(true)
	{
		try
		{
			$code = str_makerand();
			$codeID = $this->addItem(
				$this->tableNameCodes,
				array('code'),
				array($code)
			);

			break;
		}
		catch(Exception $e){
			break;
		}
	}
}