sql隨機生成數據


<?php

class Sql
{
    private $db;

    //連接數據庫
    function __construct($char = 'utf8')
    {
        try {
           $dsn = 'mysql:dbname=test;host=127.0.0.1';
           $user = 'root';
           $password = '123123';
            $this->db = new PDO($dsn, $user, $password);
            $this->db->query("set names $char");
        } catch (Exception $e) {
            exit($e->getMessage());
        }
    }

    //獲取信息
    public function getinfo()
    {
        echo "數據庫服務信息:" . $this->db->getAttribute(PDO::ATTR_SERVER_INFO) . "<br>";  //數據庫服務信息
        echo "服務信息:" . $this->db->getAttribute(PDO::ATTR_SERVER_VERSION) . "<br>";  //服務器版本
        echo "客戶端信息:" . $this->db->getAttribute(PDO::ATTR_CLIENT_VERSION) . "<br>";  //客戶端信息
        echo "連接信息:" . $this->db->getAttribute(PDO::ATTR_CONNECTION_STATUS) . "<br>";  //連接信息
    }

    //設置錯誤提示模式
    public function seterr($err = 'EXCEPTION')
    {
        switch ($err) {
            case 'SILENT':
                $this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_SILENT);
                break;//僅設置錯誤代碼。
            case 'WARNING':
                $this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
                break;//引發 E_WARNING 錯誤
            default:
                $this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
//echo '不合法的設置,系統默認設置為ERRMODE_EXCEPTION';
                break;//拋出 exceptions 異常
        }
    }

    public function geterr()
    {
        return $this->db->errorInfo();
    }

    //執行語句
    public function query($sql, $param)
    {
        @$zj = $this->db->prepare($sql);
        @$zid = $zj->execute($param);
        return $zid;
    }

    //查詢
    public function select($sql, $arr)
    {
        // echo $sql.'===='.json_encode($arr).'<br>';
        @$zj = $this->db->prepare($sql);
        @$zid = $zj->execute($arr);
        @$zsd = $zj->fetchAll();
        return $zsd;
    }
    //批次查詢
    //插入
    public function insert($sql, $arr)
    {
        $zj = $this->db->prepare($sql);
        $zid = $zj->execute($arr);
        return $zid;
    }

    //修改
    public function update($sql, $arr)
    {
        $zj = $this->db->prepare($sql);
        @$zid = $zj->execute($arr);
        return $zid;
    }

    //刪除
    public function delete($sql, $arr)
    {
        //$sql = "delete from $tbname where $term";
        $zj = $this->db->prepare($sql);
        @$zid = $zj->execute($arr);
        return $zid;
    }

    //開啟事務
    public function startwork()
    {
        $this->db->setAttribute(PDO::ATTR_AUTOCOMMIT, 0);  ###//關閉自動提交
        $this->db->beginTransaction();  #####//開啟事務
    }

    //執行事務
    public function exwork()
    {
        $this->db->commit();  //執行整個事務
        $this->db->setAttribute(PDO::ATTR_AUTOCOMMIT, 1);  //開啟自動提交
    }

    //回滾事務
    public function rollwork()
    {
        $this->db->rollback();  //撤銷全部事務
        $this->db->setAttribute(PDO::ATTR_AUTOCOMMIT, 1);  //開啟自動提交
    }

    //關閉連接
    public function close()
    {
        $this->db = null;
    }

    function sel()
    {
        $sel = $this->db->query('select * from root where user = "root"');
        $rst = $sel->fetchAll();
    }
}
function createString($len){
	$pattern = '1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLOMNOPQRSTUVWXYZ';
	$key = '';
    for($i=0;$i<$len;$i++)   {   
        $key .= $pattern[mt_rand(0,35)];    //生成php隨機數   
    }   
    return $key;
}

$db = new Sql();
for ($i=0; $i < 100000 ; $i++) { 
	$data = [
		null,
		createString(mt_rand(8,12)),
		md5(createString(8)),
		mt_rand(0,1),
		createString(6).'@'.createString(3).'.'.createString(3),
		mt_rand(3,120),
		mt_rand(50,18888)*mt_rand(50,18888)
	];
	$db->insert('INSERT INTO user VALUES (?,?,?,?,?,?,?)',$data);
}
echo 'ok';

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM