Folgender Code:
Soweit so gut. 
Der Code läuft, aber seltsam ist:
Wenn ich die Zählvariable $k ändere, bspw. auf 100, 1000, oder 10.000 etc., dann werden dementsprechend viele Datensätze in die Tabelle eingefügt, aber bei der Ausgabe mit php erscheinen dann nur 437, oder 35, oder 765 Datensätze.
Ganz willkürlich!
Erst wenn ich in phpmyadmin kurz die Datenbank wechsle und dann wieder die ursprüngliche DB und darin die entsprechende Tabelle anklicke und danach den php-Code ausführe werden alle Datensätze ausgegeben, also meinetwegen 100, 1000 oder 10.000.
Könnt ihr mir sagen woran das liegt?
Eine weitere Sache:
Zwischendrin schließe und öffne ich die DB-Verbindung.
Wenn ich es nicht mache gibt es eine Fehlermeldung. Könnt ihr mir sagen warum das so ist?
Oder habt ihr vlt. sogar noch eine elegantere Lösung?
Für jeden Tipp dankbar
lg
CarterGaines
PHP-Code:
// Verbindung zur Datenbank
$db = new mysqli('localhost','root','','dbname');
if($db->connect_errno){
echo "<p>"."Fehler beim Aufbau der Datenbankverbindung!"
."<br/>Fehlernummer: ".$db->connect_errno."</p>";
}else{
echo "<p>"."Aufbau Datenbankverbindung zu 'dbname' hat geklappt!"."</p>";
}
// Daten einfügen in test
$tbname = 'test';
$sql = "DELETE FROM test;";
for($k=1;$k<1000;$k++){
$sql .= "INSERT INTO "
.$tbname." (Wert, Sonstiges)
VALUES (".$k.", 'bla');";
}
$result = $db->multi_query($sql);
// DB-Verbindung schließen und wieder öffnen
unset($result);
$db->store_result();
$db->close();
$db->connect('localhost','root','','dbname');
// Ausgabe aller Datensätze
$sql = "SELECT * FROM test;";
$result = $db->query($sql);
if(!$result){
echo "Fehlerhafte SQL-Abfrage. ".$db->error;
exit();
}else{
while($row=$result->fetch_assoc()){
echo
"Id: ".$row['Id'].", Wert: ".$row['Wert']
.", Sonstiges: ".$row['Sonstiges']."<br/>";
}
}
// DB-Verbidnung schließen
$db->close();
Der Code läuft, aber seltsam ist:
Wenn ich die Zählvariable $k ändere, bspw. auf 100, 1000, oder 10.000 etc., dann werden dementsprechend viele Datensätze in die Tabelle eingefügt, aber bei der Ausgabe mit php erscheinen dann nur 437, oder 35, oder 765 Datensätze.
Ganz willkürlich!
Erst wenn ich in phpmyadmin kurz die Datenbank wechsle und dann wieder die ursprüngliche DB und darin die entsprechende Tabelle anklicke und danach den php-Code ausführe werden alle Datensätze ausgegeben, also meinetwegen 100, 1000 oder 10.000.
Könnt ihr mir sagen woran das liegt?
Eine weitere Sache:
Zwischendrin schließe und öffne ich die DB-Verbindung.
Wenn ich es nicht mache gibt es eine Fehlermeldung. Könnt ihr mir sagen warum das so ist?
Oder habt ihr vlt. sogar noch eine elegantere Lösung?
Für jeden Tipp dankbar
lg
CarterGaines

Das ganze dient erstmal nur zum Testen was mit php und mysql geht und was eben nicht geht.
Kommentar