mirror of
https://github.com/yiisoft/yii2.git
synced 2025-11-28 13:09:14 +08:00
Fixed Oracle DB type mapping. (Fixes #4)
This commit is contained in:
@@ -18,6 +18,28 @@ use yii\db\Connection;
|
||||
*/
|
||||
class QueryBuilder extends \yii\db\QueryBuilder
|
||||
{
|
||||
/**
|
||||
* @var array mapping from abstract column types (keys) to physical column types (values).
|
||||
*/
|
||||
public $typeMap = [
|
||||
Schema::TYPE_PK => 'NUMBER(10) NOT NULL PRIMARY KEY',
|
||||
Schema::TYPE_BIGPK => 'NUMBER(20) NOT NULL PRIMARY KEY',
|
||||
Schema::TYPE_STRING => 'VARCHAR2(255)',
|
||||
Schema::TYPE_TEXT => 'CLOB',
|
||||
Schema::TYPE_SMALLINT => 'NUMBER(5)',
|
||||
Schema::TYPE_INTEGER => 'NUMBER(10)',
|
||||
Schema::TYPE_BIGINT => 'NUMBER(20)',
|
||||
Schema::TYPE_FLOAT => 'NUMBER',
|
||||
Schema::TYPE_DECIMAL => 'NUMBER',
|
||||
Schema::TYPE_DATETIME => 'TIMESTAMP',
|
||||
Schema::TYPE_TIMESTAMP => 'TIMESTAMP',
|
||||
Schema::TYPE_TIME => 'TIMESTAMP',
|
||||
Schema::TYPE_DATE => 'DATE',
|
||||
Schema::TYPE_BINARY => 'BLOB',
|
||||
Schema::TYPE_BOOLEAN => 'NUMBER(1)',
|
||||
Schema::TYPE_MONEY => 'NUMBER(19,4)',
|
||||
];
|
||||
|
||||
private $_sql;
|
||||
|
||||
/**
|
||||
|
||||
@@ -15,26 +15,11 @@ use yii\db\ColumnSchema;
|
||||
/**
|
||||
* Schema is the class for retrieving metadata from an Oracle database
|
||||
*
|
||||
* @todo mapping from physical types to abstract types
|
||||
*
|
||||
* @author Qiang Xue <qiang.xue@gmail.com>
|
||||
* @since 2.0
|
||||
*/
|
||||
class Schema extends \yii\db\Schema
|
||||
{
|
||||
const TYPE_PK = 'NUMBER(10) NOT NULL PRIMARY KEY';
|
||||
const TYPE_STRING = 'VARCHAR2(255)';
|
||||
const TYPE_TEXT = 'CLOB';
|
||||
const TYPE_INTEGER = 'NUMBER(10)';
|
||||
const TYPE_FLOAT = 'NUMBER';
|
||||
const TYPE_DECIMAL = 'NUMBER';
|
||||
const TYPE_DATETIME = 'TIMESTAMP';
|
||||
const TYPE_TIMESTAMP = 'TIMESTAMP';
|
||||
const TYPE_TIME = 'TIMESTAMP';
|
||||
const TYPE_DATE = 'DATE';
|
||||
const TYPE_BINARY = 'BLOB';
|
||||
const TYPE_BOOLEAN = 'NUMBER(1)';
|
||||
const TYPE_MONEY = 'NUMBER(19,4)';
|
||||
/**
|
||||
* @inheritdoc
|
||||
*/
|
||||
@@ -172,7 +157,6 @@ EOD;
|
||||
* @internal param \yii\db\TableSchema $table ->name the table schema
|
||||
* @return string whether the sequence exists
|
||||
*/
|
||||
|
||||
protected function getTableSequenceName($tablename){
|
||||
|
||||
$seq_name_sql="select ud.referenced_name as sequence_name
|
||||
|
||||
Reference in New Issue
Block a user