Difference between revisions of "PostgreSQL Adapter"
(→Project Phases) |
(→Project Phases) |
||
Line 38: | Line 38: | ||
=== Phase 2: Connect to PostgreSQL=== | === Phase 2: Connect to PostgreSQL=== | ||
* [[PostgreSQL_Adapter-nexj/test-env | Create Test Environment]] | * [[PostgreSQL_Adapter-nexj/test-env | Create Test Environment]] | ||
+ | |||
+ | === Phase 3: Test first design === | ||
+ | * 1- Create a PostgreSQL database through some scripts | ||
+ | : Through the process in postgresql_setup.sql, the database was created, initialized and tested: | ||
+ | :: A database called 'test is created in PostgreSQL : <code> CREATE DATABASE test </code> | ||
+ | :: To create a <code>user</code> along with <code>password</code>: <code> CREATE USER test WITH PASSWORD 'test'; </code> | ||
+ | :: Login to the database 'test' with username 'test': <code> psql -U test test </code> | ||
+ | :: Create a <code> Schema </code> called 'test' inside the database 'test' with particular owner 'test': <code> CREATE SCHEMA test AUTHORIZATION test;</code> | ||
+ | :: Create a <code>table</code> called 'Mutex' with primary key: <code> CREATE TABLE test.Mutex(id INT PRIMARY KEY); </code> | ||
+ | :: Insert a value into the primary key: <code> INSERT INTO test.Mutex(id) VALUES (1); </code> | ||
+ | |||
+ | * 3- Working inside Schema 'test' | ||
+ | |||
+ | : <code> CREATE TABLE test.xxx </code> | ||
+ | :: data types are changed in <code> appendColumnType() </code> in ''PostgreSQLSchemaManager.java'' based on each jdbc type's equivalent in PostgreSQL. | ||
+ | :: The implementation in <code> crateTextTable </code> in file ''PostgreSQLSchemaManager.java'' is removed for now (base class's version is being called). | ||
+ | : <code>CREATE INDEX test.xxx </code> | ||
+ | : <code> CREATE Trigger test.xxx // if it's needed for PostgreSQL as well as MySQL</code> | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
===Phase 2: Coding === | ===Phase 2: Coding === |
Revision as of 20:59, 9 December 2010
PostgreSQL Adapter for NexJ
Contents
Project Goal
Develope an adapter to enable NexJ Express model to interact with PostgreSQL database
Current Status
Dec 2010 |
---|
|
Nov 2010 |
---|
|
Project Phases
Phase 1: Investigation
- Get requirements from NexJ (Meeting on Friday Nov 5th)
- Walk-through the code
- Familiarization with PostgreSQL
Phase 2: Connect to PostgreSQL
Phase 3: Test first design
- 1- Create a PostgreSQL database through some scripts
- Through the process in postgresql_setup.sql, the database was created, initialized and tested:
- A database called 'test is created in PostgreSQL :
CREATE DATABASE test
- To create a
user
along withpassword
:CREATE USER test WITH PASSWORD 'test';
- Login to the database 'test' with username 'test':
psql -U test test
- Create a
Schema
called 'test' inside the database 'test' with particular owner 'test':CREATE SCHEMA test AUTHORIZATION test;
- Create a
table
called 'Mutex' with primary key:CREATE TABLE test.Mutex(id INT PRIMARY KEY);
- Insert a value into the primary key:
INSERT INTO test.Mutex(id) VALUES (1);
- A database called 'test is created in PostgreSQL :
- 3- Working inside Schema 'test'
-
CREATE TABLE test.xxx
- data types are changed in
appendColumnType()
in PostgreSQLSchemaManager.java based on each jdbc type's equivalent in PostgreSQL. - The implementation in
crateTextTable
in file PostgreSQLSchemaManager.java is removed for now (base class's version is being called).
- data types are changed in
-
CREATE INDEX test.xxx
-
CREATE Trigger test.xxx // if it's needed for PostgreSQL as well as MySQL
Phase 2: Coding
- List of Tasks
- implementation of PostgreSQLAdapter.java
- implementation of PostgreSQLAdapterTest.java
- implementation of PostgreSQLSchemaManager.java
- implementation of main.upgrade
Resources
- Intro
- Concept of Adapter [1]
- FOSSLC PostgreSQL