Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/keygenqt/vertica
ActiveRecord for database vertica!!!
https://github.com/keygenqt/vertica
extensions yii2
Last synced: about 11 hours ago
JSON representation
ActiveRecord for database vertica!!!
- Host: GitHub
- URL: https://github.com/keygenqt/vertica
- Owner: keygenqt
- License: apache-2.0
- Created: 2014-11-10T23:42:32.000Z (about 10 years ago)
- Default Branch: master
- Last Pushed: 2022-10-28T07:00:07.000Z (about 2 years ago)
- Last Synced: 2024-07-25T22:56:05.249Z (4 months ago)
- Topics: extensions, yii2
- Language: PHP
- Homepage:
- Size: 4.89 MB
- Stars: 5
- Watchers: 2
- Forks: 11
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.txt
Awesome Lists containing this project
README
Vertica Query and ActiveRecord for Yii 2
==============================================![GitHub](https://img.shields.io/github/license/keygenqt/yii2-vertica)
![Packagist Downloads](https://img.shields.io/packagist/dt/keygenqt/yii2-vertica)This extension provides the [vertica](https://my.vertica.com/vertica-documentation/) integration for the Yii2 framework.
It includes basic querying/search support and also implements the `ActiveRecord` pattern that allows you to store active
records in vertica.Powered by odbc_connect();
To use this extension, you have to configure the Connection class in your application configuration:
```php
return [
//....
'components' => [
'vertica' => [
'class' => 'yii\vertica\Connection',
'dsn' => 'Driver=Vertica;Server=localhost;Database=my-database;',
'username' => 'dbadmin',
'password' => 'password-base',
],
]
];
```and console.php for migrate
```php
return [
'controllerMap' => [
'migrate-vertica' => 'yii\vertica\controllers\MigrateVerticaController',
],
];
```Requirements
------------Performance tested on version 7.1.2
Installation
------------The preferred way to install this extension is through [composer](http://getcomposer.org/download/).
Either add
```json
{
"require": {
"keygenqt/yii2-vertica": "*",
}
}
```to the require section of your composer.json.
Using the ActiveRecord
----------------------The following is an example model called `Admins`:
```php
namespace app\models;use \yii\data\ActiveDataProvider;
use \yii\vertica\ActiveRecord;class Admins extends ActiveRecord
{
public static function tableName()
{
return 'admins';
}/**
* @return array validation rules for model attributes.
*/
public function rules()
{
return [
[['username', 'password_hash', 'blocked_at', 'role', 'created_at', 'updated_at'], 'safe']
];
}//...
public function search($params)
{
$query = Admins::find();
$dataProvider = new ActiveDataProvider([
'query' => $query,
]);if (!($this->load($params) && $this->validate())) {
return $dataProvider;
}$query->andFilterWhere(['like', 'username', $this->username]);
$query->andFilterWhere(['like', 'password_hash', $this->password_hash]);
$query->andFilterWhere(['=', 'created_at', $this->created_at]);
$query->andFilterWhere(['=', 'updated_at', $this->updated_at]);
return $dataProvider;
}
}
```