Browse Source

Added Schema::DOUBLE to represent ANSI SQL Double Precision

tags/2.0.3
Alexander Makarov 10 years ago
parent
commit
5870a74672
  1. 2
      extensions/gii/generators/crud/Generator.php
  2. 1
      extensions/gii/generators/model/Generator.php
  3. 1
      framework/db/Schema.php
  4. 1
      framework/db/cubrid/QueryBuilder.php
  5. 4
      framework/db/cubrid/Schema.php
  6. 1
      framework/db/mssql/QueryBuilder.php
  7. 1
      framework/db/mssql/Schema.php
  8. 1
      framework/db/mysql/QueryBuilder.php
  9. 2
      framework/db/mysql/Schema.php
  10. 1
      framework/db/oci/QueryBuilder.php
  11. 1
      framework/db/pgsql/QueryBuilder.php
  12. 4
      framework/db/pgsql/Schema.php
  13. 1
      framework/db/sqlite/QueryBuilder.php
  14. 2
      framework/db/sqlite/Schema.php
  15. 5
      tests/unit/framework/db/QueryBuilderTest.php

2
extensions/gii/generators/crud/Generator.php

@ -317,6 +317,7 @@ class Generator extends \yii\gii\Generator
$types['boolean'][] = $column->name;
break;
case Schema::TYPE_FLOAT:
case Schema::TYPE_DOUBLE:
case Schema::TYPE_DECIMAL:
case Schema::TYPE_MONEY:
$types['number'][] = $column->name;
@ -405,6 +406,7 @@ class Generator extends \yii\gii\Generator
case Schema::TYPE_BIGINT:
case Schema::TYPE_BOOLEAN:
case Schema::TYPE_FLOAT:
case Schema::TYPE_DOUBLE:
case Schema::TYPE_DECIMAL:
case Schema::TYPE_MONEY:
case Schema::TYPE_DATE:

1
extensions/gii/generators/model/Generator.php

@ -233,6 +233,7 @@ class Generator extends \yii\gii\Generator
$types['boolean'][] = $column->name;
break;
case Schema::TYPE_FLOAT:
case Schema::TYPE_DOUBLE:
case Schema::TYPE_DECIMAL:
case Schema::TYPE_MONEY:
$types['number'][] = $column->name;

1
framework/db/Schema.php

@ -46,6 +46,7 @@ abstract class Schema extends Object
const TYPE_INTEGER = 'integer';
const TYPE_BIGINT = 'bigint';
const TYPE_FLOAT = 'float';
const TYPE_DOUBLE = 'double';
const TYPE_DECIMAL = 'decimal';
const TYPE_DATETIME = 'datetime';
const TYPE_TIMESTAMP = 'timestamp';

1
framework/db/cubrid/QueryBuilder.php

@ -29,6 +29,7 @@ class QueryBuilder extends \yii\db\QueryBuilder
Schema::TYPE_INTEGER => 'int',
Schema::TYPE_BIGINT => 'bigint',
Schema::TYPE_FLOAT => 'float(7)',
Schema::TYPE_DOUBLE => 'double(7)',
Schema::TYPE_DECIMAL => 'decimal(10,0)',
Schema::TYPE_DATETIME => 'datetime',
Schema::TYPE_TIMESTAMP => 'timestamp',

4
framework/db/cubrid/Schema.php

@ -36,8 +36,8 @@ class Schema extends \yii\db\Schema
'decimal' => self::TYPE_DECIMAL,
'float' => self::TYPE_FLOAT,
'real' => self::TYPE_FLOAT,
'double' => self::TYPE_FLOAT,
'double precision' => self::TYPE_FLOAT,
'double' => self::TYPE_DOUBLE,
'double precision' => self::TYPE_DOUBLE,
'monetary' => self::TYPE_MONEY,
// Date/Time data types
'date' => self::TYPE_DATE,

1
framework/db/mssql/QueryBuilder.php

@ -29,6 +29,7 @@ class QueryBuilder extends \yii\db\QueryBuilder
Schema::TYPE_INTEGER => 'int',
Schema::TYPE_BIGINT => 'bigint',
Schema::TYPE_FLOAT => 'float',
Schema::TYPE_DOUBLE => 'float',
Schema::TYPE_DECIMAL => 'decimal',
Schema::TYPE_DATETIME => 'datetime',
Schema::TYPE_TIMESTAMP => 'timestamp',

1
framework/db/mssql/Schema.php

@ -37,6 +37,7 @@ class Schema extends \yii\db\Schema
'money' => self::TYPE_MONEY,
// approximate numbers
'float' => self::TYPE_FLOAT,
'double' => self::TYPE_DOUBLE,
'real' => self::TYPE_FLOAT,
// date and time
'date' => self::TYPE_DATE,

1
framework/db/mysql/QueryBuilder.php

@ -30,6 +30,7 @@ class QueryBuilder extends \yii\db\QueryBuilder
Schema::TYPE_INTEGER => 'int(11)',
Schema::TYPE_BIGINT => 'bigint(20)',
Schema::TYPE_FLOAT => 'float',
Schema::TYPE_DOUBLE => 'double',
Schema::TYPE_DECIMAL => 'decimal(10,0)',
Schema::TYPE_DATETIME => 'datetime',
Schema::TYPE_TIMESTAMP => 'timestamp',

2
framework/db/mysql/Schema.php

@ -31,7 +31,7 @@ class Schema extends \yii\db\Schema
'integer' => self::TYPE_INTEGER,
'bigint' => self::TYPE_BIGINT,
'float' => self::TYPE_FLOAT,
'double' => self::TYPE_FLOAT,
'double' => self::TYPE_DOUBLE,
'real' => self::TYPE_FLOAT,
'decimal' => self::TYPE_DECIMAL,
'numeric' => self::TYPE_DECIMAL,

1
framework/db/oci/QueryBuilder.php

@ -31,6 +31,7 @@ class QueryBuilder extends \yii\db\QueryBuilder
Schema::TYPE_INTEGER => 'NUMBER(10)',
Schema::TYPE_BIGINT => 'NUMBER(20)',
Schema::TYPE_FLOAT => 'NUMBER',
Schema::TYPE_DOUBLE => 'NUMBER',
Schema::TYPE_DECIMAL => 'NUMBER',
Schema::TYPE_DATETIME => 'TIMESTAMP',
Schema::TYPE_TIMESTAMP => 'TIMESTAMP',

1
framework/db/pgsql/QueryBuilder.php

@ -29,6 +29,7 @@ class QueryBuilder extends \yii\db\QueryBuilder
Schema::TYPE_INTEGER => 'integer',
Schema::TYPE_BIGINT => 'bigint',
Schema::TYPE_FLOAT => 'double precision',
Schema::TYPE_DOUBLE => 'double precision',
Schema::TYPE_DECIMAL => 'numeric(10,0)',
Schema::TYPE_DATETIME => 'timestamp(0)',
Schema::TYPE_TIMESTAMP => 'timestamp(0)',

4
framework/db/pgsql/Schema.php

@ -59,8 +59,8 @@ class Schema extends \yii\db\Schema
'real' => self::TYPE_FLOAT,
'float4' => self::TYPE_FLOAT,
'double precision' => self::TYPE_FLOAT,
'float8' => self::TYPE_FLOAT,
'double precision' => self::TYPE_DOUBLE,
'float8' => self::TYPE_DOUBLE,
'decimal' => self::TYPE_DECIMAL,
'numeric' => self::TYPE_DECIMAL,

1
framework/db/sqlite/QueryBuilder.php

@ -32,6 +32,7 @@ class QueryBuilder extends \yii\db\QueryBuilder
Schema::TYPE_INTEGER => 'integer',
Schema::TYPE_BIGINT => 'bigint',
Schema::TYPE_FLOAT => 'float',
Schema::TYPE_DOUBLE => 'double',
Schema::TYPE_DECIMAL => 'decimal(10,0)',
Schema::TYPE_DATETIME => 'datetime',
Schema::TYPE_TIMESTAMP => 'timestamp',

2
framework/db/sqlite/Schema.php

@ -38,7 +38,7 @@ class Schema extends \yii\db\Schema
'integer' => self::TYPE_INTEGER,
'bigint' => self::TYPE_BIGINT,
'float' => self::TYPE_FLOAT,
'double' => self::TYPE_FLOAT,
'double' => self::TYPE_DOUBLE,
'real' => self::TYPE_FLOAT,
'decimal' => self::TYPE_DECIMAL,
'numeric' => self::TYPE_DECIMAL,

5
tests/unit/framework/db/QueryBuilderTest.php

@ -91,6 +91,11 @@ class QueryBuilderTest extends DatabaseTestCase
[Schema::TYPE_FLOAT . ' CHECK (value > 5.6)', 'float CHECK (value > 5.6)'],
[Schema::TYPE_FLOAT . '(16,5) CHECK (value > 5.6)', 'float CHECK (value > 5.6)'],
[Schema::TYPE_FLOAT . ' NOT NULL', 'float NOT NULL'],
[Schema::TYPE_DOUBLE, 'double'],
[Schema::TYPE_DOUBLE . '(16,5)', 'double'],
[Schema::TYPE_DOUBLE . ' CHECK (value > 5.6)', 'double CHECK (value > 5.6)'],
[Schema::TYPE_DOUBLE . '(16,5) CHECK (value > 5.6)', 'double CHECK (value > 5.6)'],
[Schema::TYPE_DOUBLE . ' NOT NULL', 'double NOT NULL'],
[Schema::TYPE_DECIMAL, 'decimal(10,0)'],
[Schema::TYPE_DECIMAL . '(12,4)', 'decimal(12,4)'],
[Schema::TYPE_DECIMAL . ' CHECK (value > 5.6)', 'decimal(10,0) CHECK (value > 5.6)'],

Loading…
Cancel
Save