Heim > Datenbank > MySQL-Tutorial > Hauptteil

Wie generiert man programmgesteuert Zufallsdaten in einer MySQL-Tabelle?

DDD
Freigeben: 2024-10-25 01:48:02
Original
383 Leute haben es durchsucht

How to Programmatically Generate Random Data in a MySQL Table?

Programmgesteuertes Generieren von Zufallsdaten in einer MySQL-Tabelle

Bei der Arbeit mit MySQL ist es oft notwendig, Zufallsdaten zu Test- oder anderen Zwecken zu generieren. Dies kann durch eine Kombination aus Tabellenerstellung und Dateneinfügungsabfragen erreicht werden.

Betrachten wir ein Szenario, in dem wir eine Tabelle namens „rand_numbers“ mit einer Spalte namens „number“ erstellen müssen, die zufällige ganze Zahlen zwischen 2222 und enthält 5555. Die Tabelle sollte 1111 Zeilen enthalten.

Erstellen der Tabelle

Um die Tabelle zu erstellen, verwenden Sie die folgende Abfrage:

<code class="mysql">CREATE TABLE rand_numbers (
    number INT NOT NULL
) ENGINE = MYISAM;</code>
Nach dem Login kopieren

Einfügen von Zufallsdaten

Um die Tabelle mit Zufallswerten zu füllen, können wir eine gespeicherte Prozedur verwenden, die Schleifen unterstützt. Hier ist der Code für die Prozedur:

<code class="mysql">DELIMITER $$
CREATE PROCEDURE InsertRand(IN NumRows INT, IN MinVal INT, IN MaxVal INT)
    BEGIN
        DECLARE i INT;
        SET i = 1;
        START TRANSACTION;
        WHILE i <= NumRows DO
            INSERT INTO rand_numbers VALUES (MinVal + CEIL(RAND() * (MaxVal - MinVal)));
            SET i = i + 1;
        END WHILE;
        COMMIT;
    END$$
DELIMITER ;</code>
Nach dem Login kopieren

Um die Daten einzufügen, rufen Sie die Prozedur mit den entsprechenden Parametern auf:

<code class="mysql">CALL InsertRand(1111, 2222, 5555);</code>
Nach dem Login kopieren

Dadurch werden 1111 Zeilen mit Zufallszahlen zwischen 2222 und 5555 eingefügt in die Tabelle „rand_numbers“.

Wiederverwendung der Prozedur

Die gespeicherte Prozedur kann wiederverwendet werden, um weitere Zufallswerte basierend auf verschiedenen Parametern einzufügen. Um beispielsweise 600 Zeilen mit Zufallswerten zwischen 1200 und 8500 einzufügen, rufen Sie die Prozedur wie folgt auf:

<code class="mysql">CALL InsertRand(600, 1200, 8500);</code>
Nach dem Login kopieren

Durch die Verwendung des Ansatzes der gespeicherten Prozedur ist es möglich, Tabellen effizient zu generieren und mit Zufallsdaten in einem zu füllen MySQL-Datenbank direkt über die Eingabeaufforderung.

Das obige ist der detaillierte Inhalt vonWie generiert man programmgesteuert Zufallsdaten in einer MySQL-Tabelle?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!