2017 © Pedro Peláez
 

spryprovider spry-db

Database Provider for Spry

image

ggedde/spry-db

Database Provider for Spry

  • Wednesday, July 4, 2018
  • by ggedde
  • Repository
  • 1 Watchers
  • 0 Stars
  • 77 Installations
  • PHP
  • 1 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 25 Versions
  • 8 % Grown

The README.md

spry-db

Default Database Class for Spry, (*1)

Spry's default Provider uses "Medoo" and you can find all the Documentation here: https://medoo.in/doc, (*2)

Example Usage:, (*3)

$item = Spry::db()->get('items', '*', ['id' => 123]);

$items = Spry::db()->select('items', '*', ['date[>]' => '2020-01-01']);

$insertResponse = Spry::db()->insert('items', ['name' => 'test', 'date' => '2020-01-01']);

$updateResponse = Spry::db()->update('items', ['name' => 'newtest'], ['id' => 123]);

$deleteResponse = Spry::db()->delete('items', ['id' => 123]);

See Full Documentation

, (*4)

Spry Config Settings

$config->dbProvider = 'Spry\\SpryProvider\\SpryDB';
$config->db = [
    'database_type' => 'mysql',
    'database_name' => '',
    'server' => 'localhost',
    'username' => '',
    'password' => '',
    'charset' => 'utf8',
    'port' => 3306,
    'prefix' => 'api_x_', // Should change this to be someting Unique
    'schema' => [
        'tables' => [
            'users' => [
                'columns' => [
                    'name' => [
                        'type' => 'string'
                    ],
                    'email' => [
                        'type' => 'string'
                    ],
                ]
            ]
        ]
    ]
];

Schema

You can use this to build out or Modify your Database Schema., (*5)

Using Spry CLI your can run, (*6)

spry migrate
spry migrate --dryrun     (Show what changes will be made without running anything)
spry migrate --force      (Run Destructively. Will delete and change fields. You could loose precious data)

Scheme Settings, (*7)

'schema' => [
    'tables' => [
        'users' => [
            'columns' => [
                'name' => [
                    'type' => 'string'
                ],
                'email' => [
                    'type' => 'string',
                    'unique' => true
                ],
                'amount' => [
                    'type' => 'number',
                    'default' => 0
                ],
                'status' => [
                    'type' => 'enum',
                    'options' => ['pending','active','completed','archived',''],
                ],
                'start_date' => [
                    'type' => 'datetime',
                    'default' => 'CURRENT_TIMESTAMP'
                ],
            ]
        ]
    ]
]

Various Column Types

- bigint             BIGINT   21
- bigstring          VARCHAR  255
- bigtext            LONGTEXT
- bool               TINYINT  1
- date               DATE
- datetime           DATETIME
- decimal            DECIMAL  10,2
- enum               ENUM
- int                INT      10
- number             FLOAT
- string             VARCHAR  64
- text               TEXT
- time               TIME
- tinyint            TINYINT  3
- tinystring         VARCHAR  10

Default Fields

By default the scheme will create an 'id', 'updated_at' and 'created_at' fields., (*8)

You can remove these by using 'use_id' and 'timestamps' in the table schema settings., (*9)

'schema' => [
    'tables' => [
        'users' => [
            'use_id' => false,
            'timestamps' => false
        ]
    ]
]

Unique Key

You can make any column 'unique' by adding the attribute:, (*10)

'email' => [
    'type' => 'string',
    'unique' => true
]

If you need to combine columns then use an array with the additional fields to be included in the unique key, (*11)

'email' => [
    'type' => 'string',
    'unique' => [
        'name',
        'phone'
    ]
]

The Versions

04/07 2018

dev-master

9999999-dev

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

04/07 2018

0.9.23

0.9.23.0

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

03/07 2018

0.9.22

0.9.22.0

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

03/07 2018

0.9.21

0.9.21.0

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

02/07 2018

0.9.20

0.9.20.0

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

02/07 2018

0.9.19

0.9.19.0

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

02/07 2018

0.9.18

0.9.18.0

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

02/01 2018

0.9.17

0.9.17.0

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

02/01 2018

0.9.16

0.9.16.0

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

12/12 2017

0.9.15

0.9.15.0

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

12/12 2017

0.9.14

0.9.14.0

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

25/10 2017

0.9.13

0.9.13.0

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

24/10 2017

0.9.12

0.9.12.0

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

24/10 2017

0.9.11

0.9.11.0

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

20/10 2017

0.9.10

0.9.10.0

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

12/10 2017

0.9.9

0.9.9.0

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

11/10 2017

0.9.8

0.9.8.0

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

11/10 2017

0.9.7

0.9.7.0

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

07/09 2017

0.9.6

0.9.6.0

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

07/09 2017

0.9.5

0.9.5.0

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

21/08 2017

0.9.4

0.9.4.0

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

18/08 2017

0.9.3

0.9.3.0

Database Provider for Spry

  Sources   Download

MIT

The Requires

 

by Avatar ggedde

15/07 2017

0.9.2

0.9.2.0

Provider for Spry

  Sources   Download

MIT

The Requires

  • php >=5.4.0

 

by Avatar ggedde

15/07 2017

0.9.1

0.9.1.0

Provider for Spry

  Sources   Download

MIT

The Requires

  • php >=5.4.0

 

by Avatar ggedde

11/07 2017

0.9.0

0.9.0.0

Provider for Spry

  Sources   Download

MIT

The Requires

  • php >=5.4.0

 

by Avatar ggedde