Chciałbym ograniczyć ilość rekordów w bazie .
Mam w kodzie już ,że jak przekroczy określoną ilość to wywala errora, ale można cały czas dodawać rekordy (rejestrować się ) .
Moja tabela wygląda tak :
Kod
CREATE TABLE `xxx` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`username` VARCHAR( 50 ) NOT NULL ,
`password` VARCHAR( 50 ) NOT NULL ,
`fullname` VARCHAR( 50 ) NOT NULL ,
`email` VARCHAR( 100 ) NOT NULL ,
`active` INT NOT NULL
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`username` VARCHAR( 50 ) NOT NULL ,
`password` VARCHAR( 50 ) NOT NULL ,
`fullname` VARCHAR( 50 ) NOT NULL ,
`email` VARCHAR( 100 ) NOT NULL ,
`active` INT NOT NULL
Znalazłem w necie dwa rozwiązania,tylko nie wiem które jest ok i jak zastosować .
1. Ograniczenie rekordów poprzez max rows .
Na dev. mysql znalazłem to :
Kod
ALTER TABLE tbl_name MAX_ROWS=1000000000 AVG_ROW_LENGTH=nnn;
Czyli coś z max rows, tylko nie wiem jak to zastosować,nie wiem jak musi wyglądać tabela po dodaniu tych max rows.
Spróbowałem tak :
Kod
CREATE TABLE `xxx` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`username` VARCHAR( 50 ) NOT NULL ,
`password` VARCHAR( 50 ) NOT NULL ,
`fullname` VARCHAR( 50 ) NOT NULL ,
`email` VARCHAR( 100 ) NOT NULL ,
`active` INT NOT NULL
) MAX_ROWS=2
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`username` VARCHAR( 50 ) NOT NULL ,
`password` VARCHAR( 50 ) NOT NULL ,
`fullname` VARCHAR( 50 ) NOT NULL ,
`email` VARCHAR( 100 ) NOT NULL ,
`active` INT NOT NULL
) MAX_ROWS=2
Ale nic nie ogranicza :<
Proszę o poradę w tej kwestii .
2. Ograniczenie w PHP
Kod
$db=mysql_query("SELECT count(*) as ilerekordow from tabela LIMIT 1");
$i=mysql_fetch_array($db);
$ilerekordow=$i['ilerekordow'];
$i=mysql_fetch_array($db);
$ilerekordow=$i['ilerekordow'];
Tutaj też nie wiem co zrobić, najpierw trzeba chyba byłoby zrobić counta w mysql i potem ten ^ kod by sczytywał .
Bardzo proszę o poradę .
Chciałbym zrobić tak, aby jak liczba rekordów przekroczy np. 20 to aby strona nie działała,albo po prostu nie dodawało rekordów
