PHP code example of 89bsilva / my-database

1. Go to this page and download the library: Download 89bsilva/my-database library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

89bsilva / my-database example snippets





$primeiroParametro  = Array(
    [0] => "enderecoServidor"  //  Obrigatório
    [1] => "numeroDaPorta"     //  Obrigatório
);
# ou
$primeiroParametro = (string) "enderecoServidor"; //Nesse caso o número da porta será 3306.  


$segundoParametro  = Array(
    [0] => "nomeDoBanco"  //  Obrigatório
    [1] => "usuario"      //  Obrigatório
    [2] => "senha"        //  Opcional - Valor Padrão : ""
    [3] => "charset"      //  Opcional - Valor Padrão : "utf8"
    [4] => "collation"    //  Opcional - Valor Padrão : "general_ci"
    [5] => "engine"       //  Opcional - Valor Padrão : "InnoDB"
);   


$db = new MyDatabase(
    Array(
        "localhost",
        "3308"
    ), 
    Array(
        "loja", 
        "admin",
        "123",
        "utf8mb4",
        "unicode_ci",
        "MyISAM"
    )
);


$db = new MyDatabase(
    "localhost", 
    Array(
        "loja", 
        "admin"
    )
);


// Caso a tabela ou a coluna não exista na tabela um array vazio será retornado
// Se a coluna existir será retornado um array com as informações dessa coluna
array(
    'Field'   =>'nome da coluna',
    'Type'    => 'tipo da coluna',
    'Null'    => 'se a coluna pode receber valor nulo',
    'Key'     => 'indice presente na coluna',
    'Default' => 'valor padro da coluna',
    'Extra'   => 'extra'
);


// Caso não exista a tabela um array vazio será retornado
// Se a tabela existir será retornado um array com as informações de todas as colunas dessa tabela
array(
    0 => array(
        'Field'   => 'nome da coluna',
        'Type'    => 'tipo da coluna',
        'Null'    => 'se a coluna pode receber valor nulo',
        'Key'     => 'indice presente na coluna',
        'Default' => 'valor padro da coluna',
        'Extra'   => 'extra'
    ),
    1 => array(
        'Field'   => 'nome da coluna',
        'Type'    => 'tipo da coluna',
        'Null'    => 'se a coluna pode receber valor nulo',
        'Key'     => 'indice presente na coluna',
        'Default' => 'valor padro da coluna',
        'Extra'   => 'extra'
    ),
    2 => array(
        'Field'   => 'nome da coluna',
        'Type'    => 'tipo da coluna',
        'Null'    => 'se a coluna pode receber valor nulo',
        'Key'     => 'indice presente na coluna',
        'Default' => 'valor padro da coluna',
        'Extra'   => 'extra'
    ),
    ...
);


array (
    // Lista com a(s) tabela(s) que não foi(ram) criada(s)
    'error' => array (
        'nome da tabela com erro' => 'mensagem do erro',
        'nome da tabela com erro' => 'mensagem do erro',
        ...
    ),
    // Lista com a(s) tabela(s) que foi(ram) criada(s)
    'success' => array (
        'nome da tabela criada' => 'mensagem',
        'nome da tabela criada' => 'mensagem',
        ...
    ),
    // Só existirá esse índice se $mostrarDeclaracao = true
    'statement' => array (
        'nome da tabela' => 'declaração SQL',
        'nome da tabela' => 'declaração SQL',
        ...
    ), 
);


array (
    // Lista com a(s) tabela(s) que não foi(ram) criada(s)
    'error' => array (
        'nome da tabela com erro' => array(
                'nome da coluna' => 'mensagem do erro',
                'nome da coluna' => 'mensagem do erro',
                ...
            ),
        'nome da tabela com erro' => array(
                'nome da coluna' => 'mensagem do erro',
                'nome da coluna' => 'mensagem do erro',
                ...
            ),
        ...
    ),
    // Lista com a(s) tabela(s) que foi(ram) criada(s)
    'success' => array (
        'nome da tabela alterada' => array(
                'nome da coluna' => 'mensagem',
                'nome da coluna' => 'mensagem',
                ...
            ),
        'nome da tabela alterada' => array(
                'nome da coluna' => 'mensagem',
                'nome da coluna' => 'mensagem',
                ...
            ),
        ...
    ),
    // Só existirá esse índice se $mostrarDeclaracao = true
    'statement' => array (
        'nome da tabela' => array(
                'nome da coluna' => 'declaração SQL',
                'nome da coluna' => 'declaração SQL',
                ...
            ),
        'nome da tabela' => array(
                'nome da coluna' => 'declaração SQL',
                'nome da coluna' => 'declaração SQL',
                ...
            ),
        ...
    ), 
);


$tbCliente = $db->table("cliente")
                    ->addColumn("id")->int(11)->notNull()->autoIncrement()->primary()
                    ->addColumn("nome")->varchar(25)->notNull()
                    ->addColumn("cidade")->varchar(25)->notNull()
                    ->addColumn("CPF")->varchar(11)->notNull()->unique()
                    ->addColumn("preferencial")->bool()->default(0)
                ->create(true);

// Valor em $tbClientte em caso de sucesso
array (
    'error' => array (),
    'success' => array ('cliente' => "The 'cliente' table was created successfully!!!"),
    'statement' => array (
        'cliente' => "USE `loja`; CREATE TABLE IF NOT EXISTS `loja`.`cliente` (`id` int(11) AUTO_INCREMENT NOT NULL, `nome` varchar(25) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' NOT NULL, `cidade` varchar(25) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' NOT NULL, `CPF` varchar(11) NOT NULL, `preferencial` tinyint(1) DEFAULT '0', PRIMARY KEY (`id`), UNIQUE INDEX `id_UNIQUE` (`id` ASC), UNIQUE INDEX `CPF_UNIQUE` (`CPF` ASC)) ENGINE = InnoDB DEFAULT CHARACTER SET = utf8;",
    ),
);


$criar = $db->table("produto")
                ->addColumn("id")->int(11)->notNull()->autoIncrement()->primary()
                ->addColumn("codigo")->int(11)->notNull()->unique()
                ->addColumn("descricao")->varchar(100)->notNull()
                ->addColumn("preco")->float("7,2")->notNull()
                ->addColumn("quantidade")->int(11)->notNull()
                ->addTimes(true) // TRUE passado para criar as colunas criado_em e atualizado_em
            ->table("usuario")
                ->addColumn("id")->int(11)->notNull()->autoIncrement()->primary()
                ->addColumn("nome")->varchar(25)->notNull()
                ->addColumn("emil")->varchar(50)->notNull()->unique()
                ->addColumn("ativo")->bool()->default(1)
            ->create();

// Valor em $criar em caso de sucesso
array (
    'error' => array (),
    'success' => array (
        'produto' => "The 'produto' table was created successfully!!!",
        'usuario' => "The 'usuario' table was created successfully!!!",
    )
);

$alteracao = $db->table("usuario")->changeColumn("emil", "email")->varchar(100)
                                  ->addColumn("senha")->varchar(10)->notNull()->after("email")
                ->alter(true);

// Valor em $alteracao em caso de sucesso
array (
    'error' => array (),
    'success' => array (
            'usuario' => array(
                "email" => "The 'email' column was changed  successfully!!!",
                "senha" => "The 'senha' column was added successfully!!!"
            ) 
        ),
    'statement' => array (
            'usuario' => array(
                "email" => "ALTER TABLE `usuario` CHANGE `emil` `email` varchar(100) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' NOT NULL, DROP INDEX `emil_UNIQUE`, ADD UNIQUE INDEX `email_UNIQUE` (`email` ASC)",
                "senha" => "ALTER TABLE `usuario` ADD `senha` varchar(10) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci' NOT NULL AFTER `email`"
            ) 
        ),
);


$deletado = $db->table("usuario")->drop();
// Valor em $deletado em caso de sucesso
true


$cliente  = Array(
        "nome"   => "Nome do Vendedor",
        "cidade" => "São Paulo",
        "CPF"    => "12345678900"
);
$resposta = $db->insert($cliente)->into("cliente")->execute(); // Valor em $resposta em caso de sucesso
1


$produtos  = Array(
    Array(
        "codigo"     => 123456,
        "descricao"  => "Teclado",
        "preco"      => 59.99,
        "quantidade" => 5
    ),
    Array(
        "codigo"     => 234567,
        "descricao"  => "Monitor",
        "preco"      => 199.90,
        "quantidade" => 2
    ),
    Array(
        "codigo"     => 890123,
        "descricao"  => "Mouse",
        "preco"      => 45.50,
        "quantidade" => 5
    )
);
$resposta = $db->insert($produtos)->into("produto")->execute(); // Valor em $resposta em caso de sucesso
2


$produtos = $db->select("*")->from("produto")->where("quantidade")->biggerEqual(1)->and("preco")->less(60)->order("preco")->limit(0)->execute();
// Valor em $produtos em caso de sucesso
Array(
    0 => Array(
        "id"            => "2",
        "codigo"        => "890123",
        "descricao"     => "Mouse",
        "preco"         => "45.50",
        "quantidade"    => "5",
        "criado_em"     => "2020-05-19 11:02:53",
        "atualizado_em" => "2020-05-19 11:02:53",
    ),
    0 => Array(
        "id"            => "1",
        "codigo"        => "123456",
        "descricao"     => "Teclado",
        "preco"         => "59.99",
        "quantidade"    => "5",
        "criado_em"     => "2020-05-19 11:02:53",
        "atualizado_em" => "2020-05-19 11:02:53",
    )
);


$clientes = $db->select("nome")->from("cliente")->where("cidade")->equals("São Paulo")->execute();
// Valor em $clientes em caso de sucesso
Array(
    0 => Array("nome" => "Nome do Vendedor")
);


$novoValor   = Array("quantidade" => 4);
$atualizacao = $db->update("produto")->set($novoValor)->where("codigo")->equals(123456)->execute();
// Valor em $atualizacao em caso de sucesso
1


$exclusao = $db->delete("produto")->where("codigo")->equals(234567)->execute();
// Valor em $exclusao em caso de sucesso
1