Adding New Datatypes

My DBMS supports datatype XYZ, how can I add that datatype to Database Design Studio?

Database Design Studio (DDS) is preconfigured to support 31 different datatypes and provides seven additional datatypes (User1 to User7) that the user can edit to support other types.

To add a new datatype, you should begin by using the tool DbConfig to define a DDS generic name and default type behaviour. Then load the modified datatype template into DDS, and add the specific datatype behaviour mapping. Listed below are the steps to create a new (MySQL) datatype called 'SET':

1.

Open an ERD file or start a new ERD drawing.

2.

Click the Datatypes TAB.

3.

Select Edit DDS Datatypes... from the Datatypes menu to start the DbConfig application.

3.1

Locate the USER1 datatype and rename it to SET

3.2

Change the ODBC Datatype to SQL_VARCHAR

3.3

Change the OleDB Datatype to DBTYPE_STR

3.4

Uncheck Precision, Scale and Serial checkboxes

3.5

Check the List checkbox

3.6

Select Save from the File menu and exit the DbConfig application.

4.

When you are back in DDS, select Load DDS Datatypes from the Datatypes menu.

5.

Click on the MySQL TAB.

5.1

Locate the new SET DDS Datatype, and type SET in the Maps To column

5.2

Check the List checkbox

5.3

Check the Generic checkbox to tell DDS-Pro that this is a generic type (fully supported datatype) in MySQL.

6.

Optionally, repeat step 5 for all other DBMS Targets, if unsupported, make the Maps To either a supported type, such as VARCHAR(200), or type **UNSUPPORTED** in which case it will cause an error to be reported when trying to create the database table.

7.

Save your ERD file.

8.

If you want to make this the default mapping file for DDS, follows these steps:

8.1

Select Save Data Mapping As... from the Datatypes menu.

8.2

Browse to the DDS_INSTALL_DIR\Config folder.

8.3

Replace the existing default.dtm file.

Because you have nominated that the datatype is a List type when you use this type, such as the ENUM type, you will be able to (optionally) add the list values into the Precision field of the attributes properties such as shown in the enum types example.

See also: Enumerated Types