Subject | Re: [Firebird-Architect] Change NULL / NOT NULL |
---|---|
Author | Adriano dos Santos Fernandes |
Post date | 2009-05-07T15:56:07Z |
Alexander peshkoff escreveu:
this practice deprecated and disable it in 3.0. It then would only be
allowed in restore, for obviously reasons.
In packages commands, I completely ignored fact that user may change
system tables. It just works different, so it's much more simple to
implement and maintain. If that would not be true, at least some
non-system updates involving packages would need to be blocked.
Adriano
> On Thursday 07 May 2009 19:37:29 Adriano dos Santos Fernandes wrote:We may consider absence of this command a bug. :-D
>
>> All,
>>
>> As we should prevent users from doing direct (and unsafe) system table
>> updates, I propose (hoping to be in v2.5) creation of DDL command to
>> change [NOT] NULL field constraint.
>>
>> The syntax would be:
>> alter table <table> alter <field> not null;
>> alter table <table> alter <field> null;
>>
>> It's semantics would be:
>> When putting "NOT NULL", in DFW (commit time) the table is locked
>> and a BLR dynamic query is constructed to inspect for NULL values. If
>> there are, we throw an error.
>>
>
> Good suggestion, but not for 2.5 - it's feature-closed after beta1.
>
> Ideally we should prepare a list of other tasks, that currently require directI do not know any other well used... So I want it in v2.5 to declare
> system tables updates. And may be implement them all together, and after it
> disable such updates.
this practice deprecated and disable it in 3.0. It then would only be
allowed in restore, for obviously reasons.
In packages commands, I completely ignored fact that user may change
system tables. It just works different, so it's much more simple to
implement and maintain. If that would not be true, at least some
non-system updates involving packages would need to be blocked.
Adriano