Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 7 of 7 total
Thread Required Fields
Wed, Apr 12 2017 1:25 PMPermanent Link

Jose Eduardo Helminsky

HPro Informatica

Hi

I am new to ElevateDB coming from DBISAM and realize the property Required for Fields is not populated when I open the table. Is this by design ? The only way I have to check if the field is required is using "information.tablecolumns" database ?

José Eduardo Helminsky
Wed, Apr 12 2017 1:26 PMPermanent Link

Jose Eduardo Helminsky

HPro Informatica

I mean "information.tablecolumns" table
Thu, Apr 13 2017 2:18 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Jose


>I am new to ElevateDB coming from DBISAM and realize the property Required for Fields is not populated when I open the table. Is this by design ? The only way I have to check if the field is required is using "information.tablecolumns" database ?


I think your problem is the different terminology used - look for nullable. In the alter table dialog the column heading is "nulla..." and there's a "nullable" tick box. Its also viable as NOT NULL in the columns definition sql

Then again I could be totally misunderstanding what you want.

Roy Lambert

---
This email has been checked for viruses by AVG.
http://www.avg.com
Thu, Apr 13 2017 6:08 AMPermanent Link

Jose Eduardo Helminsky

HPro Informatica

Roy

Sorry if I was not clear.

At database level there are no problems. I know about "nullable" in ElevateDB Manager and how to create a table defining non null values.

The behaviour I am talking about is for property "Fields" at table component level. Like I said, I came from DBISAM and there when the table is opened the Fields.Required properties are populated with True when the fields can not be null and this does not happen in ElevateDB.

José Eduardo Helminsky
Thu, Apr 13 2017 6:49 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Jose


Now you say that you're dead right. My memory says this was spotted a few years ago but I can't find the right search terms to find the post and I can't remember the result.

Roy Lambert
Thu, Apr 13 2017 1:29 PMPermanent Link

Adam Brett

Orixa Systems

Jose

I am not sure I understand the question exactly: Are you saying that you need to access the Required property of a TEDBTable TField in Delphi?

The thing is that in Delphi the "Required" property is actually a property of all TFields, so it should show up as a Delphi property in both EDB and DBISAM.

i.e. you can write:
var
 IsRequired: Boolean;
begin
 IsRequired:= MyEDBTable.FIeldByName('Something').Required;

...

I think I am not understanding your question very well.
Fri, Apr 14 2017 10:46 AMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Eduardo,

<< I am new to ElevateDB coming from DBISAM and realize the property Required for Fields is not populated when I open the table. Is this by design ? >>

Yes, we stopped populating that property in ElevateDB because, prior to ElevateDB, it confused DBISAM developers when they would see a generic, non-DBISAM error for missing column values, but a native DBISAM error for other types of constraint checks. Basically, it prevented them performing proper exception checks for database engine errors and error codes.

Tim Young
Elevate Software
www.elevatesoft.com
Image