mysql插入ip地址范围

时间:2016-07-05 02:46:29

标签: mysql unix

我有奇怪的情况,我必须在一定范围内插入IP地址,有没有任何简单的方法来做它而不是手动插入100的IP地址

例如

ip地址范围 - 33.44.0.1至33.44.0.254

表结构

id, IP,        timestamp,  timestamp,  assigned, not_assigned
1   33.44.0.1  2016-07-04  2016-07-04    0            1

有没有办法做到这一点?

2 个答案:

答案 0 :(得分:1)

试试这个(假设您使用的是PHP)。
这个概念是使用一种循环来生成1到254之间的数字,并将其附加到IP地址的最后一部分,然后每次将生成的IP插入数据库。

<?php
   for($n = 1; n < 255; n++) {
     $ip = '33.44.0.'.$n;
     //code to insert into database here
   }
?>

答案 1 :(得分:1)

您可以创建一个程序来执行此操作:

CREATE PROCEDURE `insert_ips`()
BEGIN

    DECLARE suffix INT DEFAULT 1;

    WHILE suffix < 255 DO
        INSERT INTO table1 VALUES (suffix, CONCAT('33.44.0.', suffix), NOW(), NOW(), 0, 1);
        SET suffix = suffix + 1;
    END WHILE;

END

并按CALL insert_ips()运行此程序。