Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wygenerowanie zawartości tabeli
Forum PHP.pl > Forum > Bazy danych > MySQL
SLimiX
Witam, chce stworzyć tabele która będzie miała następujące kolumny

  1. CREATE TABLE `tabela` (
  2. `id` int NOT NULL AUTO_INCREMENT,
  3. `numer` int
  4. PRIMARY KEY (`id`)
  5. )
  6. TYPE=MyISAM AUTO_INCREMENT=3;


Chciałbym wygenerować tabele w której od razu były by:
`id` - od 1 do 99999999 #czy w ogolę mogę wygenerować tak dużą ilość rekordów?
`numer`- od 00000000 do 99999999, #ale tak by nie były poukładane po kolei i się nie powtarzały.

Jestem baardzo początkujący w MySQL, więc proszę o wyrozumiałość. winksmiley.jpg Uczę się z w3schools, a tam odpowiedzi nie znalazłem. Google też nie pomaga. ;/

Da się to zrobić za pomocą MySQL?
Mchl
A może powiedz najpierw po co Ci taka tabela, to się zastanowimy, czy nie ma lepszego rozwiązania.
someone.cool
dobre pytanie Mchl.
może po to, żeby zapchać komuś bazę ? winksmiley.jpg

Cytat(SLimiX @ 10.12.2009, 00:19:14 ) *
#czy w ogolę mogę wygenerować tak dużą ilość rekordów?


- 2 147 483 648 - 2 147 483 648 = to zakres inta -> UNSIGNED to 2x wiecej -> 0- 4 294 967 296. Ty chcesz "tylko" 99 999 999 -> WEJDZIE biggrin.gif


darko
Cytat
`id` - od 1 do 99999999 #czy w ogolę mogę wygenerować tak dużą ilość rekordów?
`numer`- od 00000000 do 99999999,

Nie da rady, bo masz o jeden numer za dużo winksmiley.jpg a tak poważnie. Ja bym sobie wygenerował zapytanie insert w php, np:

  1. $id = range(1,99999999);
  2. $numers = range(1,99999999);
  3. shuffle($numers);
  4. $sql = "insert into tabela values ";
  5. $i = 0;
  6. foreach($id as $v) {
  7. $sql.= "($id".$numers[$i]."),\n";
  8. $i++;
  9. }
  10. $sql = substr($sql,0,strlen($sql)-1);
  11. $sql.=";";
  12. // i teraz query...


Mchl
A policzyłeś jaki rozmiar będzie miało takie zapytanie?
darko
Mchl racja, to nie przejdzie, bo utworzone zapytanie będzie za długie, trzeba podzielić na jakieś sensowne części, albo w ogóle inaczej to zrobić.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.