summaryrefslogtreecommitdiff
path: root/framework/Data/ActiveRecord/Vendor/TSqliteMetaDataInspector.php
diff options
context:
space:
mode:
Diffstat (limited to 'framework/Data/ActiveRecord/Vendor/TSqliteMetaDataInspector.php')
-rw-r--r--framework/Data/ActiveRecord/Vendor/TSqliteMetaDataInspector.php89
1 files changed, 0 insertions, 89 deletions
diff --git a/framework/Data/ActiveRecord/Vendor/TSqliteMetaDataInspector.php b/framework/Data/ActiveRecord/Vendor/TSqliteMetaDataInspector.php
deleted file mode 100644
index 94f0bb72..00000000
--- a/framework/Data/ActiveRecord/Vendor/TSqliteMetaDataInspector.php
+++ /dev/null
@@ -1,89 +0,0 @@
-<?php
-/**
- * TSqliteMetaDataInspector class file.
- *
- * @author Wei Zhuo <weizhuo[at]gmail[dot]com>
- * @link http://www.pradosoft.com/
- * @copyright Copyright &copy; 2005-2007 PradoSoft
- * @license http://www.pradosoft.com/license/
- * @version $Id$
- * @package System.Data.ActiveRecord.Vendor
- */
-
-Prado::using('System.Data.ActiveRecord.Vendor.TDbMetaDataInspector');
-Prado::using('System.Data.ActiveRecord.Vendor.TSqliteColumnMetaData');
-Prado::using('System.Data.ActiveRecord.Vendor.TSqliteMetaData');
-
-/**
- * Table meta data inspector for Sqlite database.
- *
- * @author Wei Zhuo <weizho[at]gmail[dot]com>
- * @version $Id$
- * @package System.Data.ActiveRecord.Vendor
- * @since 3.1
- */
-class TSqliteMetaDataInspector extends TDbMetaDataInspector
-{
- /**
- * Create a new instance of meta data.
- * @param string table name
- * @param array column meta data
- * @param array primary key meta data
- * @param array foreign key meta data.
- * @return TDbMetaData table meta data.
- */
- protected function createMetaData($table, $columns, $primary, $foreign)
- {
- $pks = array();
- foreach($columns as $name=>$column)
- if($column->getIsPrimaryKey())
- $pks[] = $name;
- return new TSqliteMetaData($table,$columns,$pks);
- }
-
- /**
- * Get the column definitions for given table.
- * @param string table name.
- * @return array column name value pairs of column meta data.
- */
- protected function getColumnDefinitions($table)
- {
- $conn=$this->getDbConnection();
- $conn->setActive(true);
- $table = $conn->quoteString($table);
- $command = $conn->createCommand("PRAGMA table_info({$table})");
- $command->prepare();
- $cols = array();
- foreach($command->query() as $col)
- $cols[$col['name']] = $this->getColumnMetaData($col);
- return $cols;
- }
-
- /**
- * Returns the column details.
- * @param array column details.
- * @return TPgsqlColumnMetaData column meta data.
- */
- protected function getColumnMetaData($col)
- {
- $name = '"'.$col['name'].'"'; //quote the column names!
- $type = $col['type'];
-
- $notNull = $col['notnull']==='99';
- $primary = $col['pk']==='1';
- $autoIncrement = strtolower($type)==='integer' && $primary;
- $default = $col['dflt_value'];
- return new TSqliteColumnMetaData($col['name'],$name,$type,
- $notNull,$autoIncrement,$default,$primary);
- }
-
- /**
- * Not implemented, sqlite does not have foreign key constraints.
- */
- protected function getConstraintKeys($table)
- {
- return array('primary'=>array(), 'foreign'=>array());
- }
-}
-
-?> \ No newline at end of file