cancel
Showing results for 
Search instead for 
Did you mean: 

Advantages and Limitations of using HDBDD to create tables

former_member182302
Active Contributor
0 Kudos

Hi Folks,

We are planning to develop the objects using HDBDD and trying to understand the limitations in the version we are using Rev 68.

These are the Pros and Cons, we have identified as of now:

Advantages:

1)  Version Management

2)  Transport Management of the objects via change manager

3)  Adding the new columns in the table ( It can be added at any place )

Limitations:

1) Partitioning syntax is not available (

2) Adding the primary key to a table if the table is already created with the field set as "nullable" ( )

So before creating the schema and tables using HDBDD would want to asses if we have missed any potential limitation. So request your help to know the same.

Regards,

Krishna Tangudu

Accepted Solutions (1)

Accepted Solutions (1)

former_member182500
Contributor
0 Kudos

Hi Krishna,

Before I proceed, just to clarify your point 3 "Adding the new columns in the table ( It can be added at any place )" - yes columns can be added at any place within the CDS as you are just editing the definition file, but unless you effectively drop the entity (table) by removing entity definition, activate and then restore to rebuild table, any newly added columns will be added to end of table irrespective of position in CDS entity.

I would also only consider productive CDS with SPS07  - CDS was introduced with SPS06 and no doubt some issues were resolved with introduction of SPS07.

The CDS gives a wonderfully rich semantic view of your definitions - right click the .HDBDD artifact and select graphical view, especially if associations are implemented (SPS07).

Coming from an ABAP background I adore the concept of a data dictionary-like central repository, where you can specify types and structures later referred to in entities (tables) for consistency and ease of maintenance.

Have a go at setting up a few types and entities, change keys, add, remove and change columns (name and type), use those definitions in procedures and attribute views (later consumed by analytic and on to calculation views) for checking of dependencies.  I have had issues with dependencies where I have not been able to activate .HDBDD, see .  Transport changes from dev to qa and check.  Do you need to define entities with spatial-type columns?  You cannot (ST_GEOMETRY not recognized as valid type as of 70).

You are putting all of your "eggs" in one basket.  I wouldn't choose to do that with a project of any significant sizing unless a thorough P.O.C. was carried out.

Hope that helps.

former_member182302
Active Contributor
0 Kudos

Hi Former Member,

With .HDBDD file creation, am able to create a table under any schema.

For example:

My user name is X and have access to only "X" schema. But I was able to create a table under "Y" schema as well. (Although I don have "CREATE ANY" access under "Y" schema )

Did you find this behavior as well? Is there a way to control this?

Regards,

Krishna Tangudu

former_member182500
Contributor
0 Kudos

So you simply changed the @SCHEMA directive to point to schema Y which you know you should not have authorisation to?  Interesting.  It may be worth creating a specific question thread for that alone.

former_member182302
Active Contributor
0 Kudos

Agreed created a separate thread so that we can discuss there and post the results here in this thread.

Did you try this are you able to create tables like this? Is the behavior is similar for you?

Regards,

Krishna Tangudu

former_member182500
Contributor
0 Kudos

I only have access to an AWS "sandbox" where I use SYSTEM.  It was a good find and a good question to ask.  In your new thread best to specify your release version, this issue may or may not exist in SPS07.

former_member182302
Active Contributor
0 Kudos

Aah yes.. Updated the post.

Answers (5)

Answers (5)

Former Member
0 Kudos

I have created HDBTI file that loads the CSV file to a HDBDD table but Is it possible to create HDTI for an ordinary table (Created using SQL statement)?

Former Member
0 Kudos

Hi,

Yes, it is possible. Please have a look at Table-Import Configuration - SAP HANA Developer Guide - SAP Library You can use table/hdbtable/cdstable. In your ordinary table case, just use table = ...

Best regards,

Wenjun

former_member182302
Active Contributor
0 Kudos

Thanks Wenjun for sharing it here.

Regards,

Krishna Tangudu

Former Member
0 Kudos

Another limitation which I found is that there is no "GENERATED ALWAYS AS" in HDBDD or HDBTABLE. However, you can do this when create a table using SQL.

Former Member
0 Kudos

Hi Krishna,

Here is another limitation. Currently HDBDD does not support TEXT and spatial data types, but will support in the future. Have a look at this thread

Best regards,

Wenjun

Former Member
0 Kudos

Hi Krishna,

Good to see the pros and cons of the HDBDD artifact.

Is there a way to define a default value to a column that is created in the HDBDD table?

Eg.,

a column's default value should be the current timestamp.

Thanks

Srivatsan

former_member182302
Active Contributor
0 Kudos

Hi Srivatsan,

Have a look on this thread:

Regards,

Krishna Tangudu