Rumah >pangkalan data >tutorial mysql >Bagaimana untuk menggunakan semasa untuk memasukkan data dalam kumpulan dalam storan mysql

Bagaimana untuk menggunakan semasa untuk memasukkan data dalam kumpulan dalam storan mysql

WBOY
WBOYke hadapan
2023-05-27 10:07:451426semak imbas

    Penyerahan kelompok

    semasa menulis penyata:

        while '条件' do
                循环体语句;
        end while;

    Selesaikan penulisan

    rreee

    Lihat dan padam prosedur tersimpan:

    drop procedure if exists test_insert;
    delimiter $$
    create procedure test_insert(n int)
        begin
        declare v int default 0;
        set AUTOCOMMIT = 0;
        while v < n
            do
                    insert into test(second_key, text, field_4,status, create_date)
                    values ((v*10),
                    concat(&#39;t&#39;,v),
                    substring(md5(rand()), 1, 10),
                    &#39;good&#39;,
                    adddate(&#39;1970-01-01&#39;, rand(v) * 10000));
            set v = v + 1;
         end while;
          set AUTOCOMMIT = 1;
    end$$
    delimiter ;

    Buat jadual

    mysql> show procedure status like &#39;test_insert&#39;;
    mysql> show create procedure test_insert\G;
    mysql> drop procedure if exists test_insert;

    Masukkan 1 juta keping data

    CREATE TABLE test (
    id INT NOT NULL AUTO_INCREMENT,
    second_key INT,
    text VARCHAR(20),
    field_4 VARCHAR(20),
    status VARCHAR(10),
    create_date date,
    PRIMARY KEY (id),
    KEY idx_second_key (second_key)
    ) Engine=InnoDB CHARSET=utf8;

    Serahan tunggal

    Kaedah penulisan lengkap

    mysql> call test_insert(1000000);
    Query OK, 0 rows affected (31.86 sec)

    Sisipkan 10 keping data

    drop procedure if exists test_insert;
    delimiter $$
    create procedure test_insert(n int)
        begin
        declare v int default 0;
        while v < n
            do
                    insert into test(second_key, text, field_4,status, create_date)
                    values ((v*10),
                    concat(&#39;t&#39;,v),
                    substring(md5(rand()), 1, 10),
                    &#39;good&#39;,
                    adddate(&#39;1970-01-01&#39;, rand(v) * 10000));
            set v = v + 1;
         end while;
    end$$
    delimiter ;

    Buka tetingkap lain untuk melihat

    mysql> call test_insert(10000);
    Query OK, 1 row affected (1 min 8.52 sec)

    Atas ialah kandungan terperinci Bagaimana untuk menggunakan semasa untuk memasukkan data dalam kumpulan dalam storan mysql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

    Kenyataan:
    Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam