Difference between revisions of "PostgreSQL Adapter Project - Extending SQLSchemaManager"

From CDOT Wiki
Jump to: navigation, search
Line 15: Line 15:
 
| DONE
 
| DONE
 
|-  
 
|-  
| Research and add Maximum column Presision
+
| Research and add Maximum column Precision
 
|
 
|
 
|
 
|
Line 91: Line 91:
 
|
 
|
 
|}
 
|}
 +
 +
== Task Details ==
 +
=== Extend SQLSchemaManager to support PostgreSQL ===
 +
Create a new class PostgreSQLSchemaManager by extending SQLSchemaManager and implementing all necessary abstract classes
 +
 +
=== Research and add Maximum column Precision ===
 +
Following are the Maximum column precisions we might need to establish:
 +
(All constants are defined in PostgreSQLAdapter class)
 +
* DEFAULT_FETCH_SIZE
 +
* MAX_CHAR_PRECISION
 +
* MAX_VARCHAR_PRECISION
 +
* MAX_BINARY_PRECISION
 +
* MAX_VARBINARY_PRECISION
 +
* MAX_REAL_PRECISION
 +
* TIMESTAMP_FORMAT_SQL
 +
* TIMESTAMP_FORMAT
 +
 +
=== Figure out Data Type Mapping ===
 +
* Go over all data types offered in PostgreSQL
 +
* Map types defined in <code>Primitive</code> class
 +
 +
=== Implement <code>appendColumnType()</code> method ===
 +
This method appends a table column type declaration to a string buffer.
 +
* use logic and mapping to append required column data types to incoming string.
 +
* Test it

Revision as of 13:30, 18 January 2011

PostgreSQL Adapter for NexJ - Extending SQL Schema Manager

  • SQLSchemaManager is used in maintaining database schemas (DDL)

Task Summary

Task Status Test Status
Extend SQLSchemaManager to support PostgreSQL DONE DONE
Research and add Maximum column Precision
Figure out Data Type Mapping
Implement appendColumnType() method
Implement appendConcatenate() method
Implement appendPrint() method
Implement appendUpgradeStepEnd() method
Implement appendUpgradeStepStart() method
Implement appendTSExtract() method
Implement appendTSIncrement() method
Implement getCreateEtcScriptName() method
Implement getDefaultIndexspace() method
Implement getDefaultLongspace() method
Implement getDefaultTablespace() method
Implement getDropEtcScriptName() method
Implement getDynamicSQLAppender() method
Implement getGUIDExpr() method
Implement getNowExpr() method
Implement getSeparator() method
Implement getSetupEtcScriptName() method

Task Details

Extend SQLSchemaManager to support PostgreSQL

Create a new class PostgreSQLSchemaManager by extending SQLSchemaManager and implementing all necessary abstract classes

Research and add Maximum column Precision

Following are the Maximum column precisions we might need to establish: (All constants are defined in PostgreSQLAdapter class)

  • DEFAULT_FETCH_SIZE
  • MAX_CHAR_PRECISION
  • MAX_VARCHAR_PRECISION
  • MAX_BINARY_PRECISION
  • MAX_VARBINARY_PRECISION
  • MAX_REAL_PRECISION
  • TIMESTAMP_FORMAT_SQL
  • TIMESTAMP_FORMAT

Figure out Data Type Mapping

  • Go over all data types offered in PostgreSQL
  • Map types defined in Primitive class

Implement appendColumnType() method

This method appends a table column type declaration to a string buffer.

  • use logic and mapping to append required column data types to incoming string.
  • Test it