САМОУЧИТЕЛЬ PHP 4



         

Полноценный класс таблицы MySQL - часть 6


// Аналог mysql_num_rows()

function GetNumRows($r) { return mysql_num_rows($r); }

// Аналог mysql_data_seek(). После вызова этой функции указатель на

// дескриптор $r "перескочит" на найденную запись номер $to, после

// чего GetResult() ее и возвратит.

function DataSeek($r,$to) { return mysql_data_seek($r,$to); }

 

// Создает или загружает таблицу по имени $Name.

// $Fields — список полей базы. Именно по ним в дальнейшем можно

// будет вести поиск и строить индекс. Кроме того, в запись можно будет

// добавлять ЛЮБЫЕ другие переменные, но они будут сериализованы, а

// потом восстановлены. Формат списка: массив с ключами — именами

// переменных и значениями — их типами. Если $Fields — не массив, то

// считается, что таблица открывается такой, какой она есть. В противном

// случае производится проверка: не добавились или не удалились ли какие-

// то поля или индексы и, если это так, то выполняется соответствующая

// модификация таблицы (кстати, это процесс довольно длительный).

// ВНИМАНИЕ: если в таблице было какое-то поле, которое сериализуется, то

// в будущем при добавлении этого поля к $Fields оно НЕ будет

// автоматически переведено в ранг несущих, т. е.

попросту

// пропадет (и наоборот).

// РЕКОМЕНДАЦИЯ: перечисляйте в $Fields те поля, для которых вы ТОЧНО

// уверены, что они будут всегда присутствовать в базе, а также те,

// по которым нужно будет вести поиск, строить индекс и использовать

// distinct.

// $Index — по каким полям нужно строить индекс. Индекс несколько

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

// (точнее, по тем полям, для которых используется индекс). Ключи — имена

// столбцов, значения — "размер" индекса (0, если по умолчанию, что чаще

// всего наиболее разумно)

function MysqlTable($Name,$Fields="",$Index="")

{ $this->TableName=$Name; $this->Error="";

 if(is_array($Fields)) {

 foreach($Fields as $k=>$v)




Содержание  Назад  Вперед