Hello Ann

Well, that was not the case, because without the word CONSTRAINT has failed
and with that word has worked fine and I was the only user of the database
at that moment.

But no problem, I know the solution: always use the word CONSTRAINT.

Greetings.

Walter.




On Sun, Aug 23, 2015 at 12:37 PM, [email protected]
[firebird-support] <[email protected]> wrote:

>
>
> Hi,
>
> have you sample database to reproduce this.
> How you test this difference? Have you some backup of database and restore
> it and then test this two options?
>
> regards,
> Karol Bieniaszewski
>
>
> *From:* mailto:[email protected]
> <[email protected]>
> *Sent:* Sunday, August 23, 2015 5:48 AM
> *To:* [email protected]
> *Subject:* Re: [firebird-support] Re: Differences when adding a Primary
> Key
>
>
>
> Nobody knows the answer?
>
> Well, then I shall add this to the "Firebird's mysteries".
>
> Greetings.
>
> Walter.
>
>
> On Fri, Aug 21, 2015 at 4:47 PM, Walter R. Ojeda Valiente <
> [email protected]> wrote:
>
>> Hello Ann
>>
>> Well, the world has not falled out, nothing so dangerous, the error
>> message is:
>>
>> "Cannot commit transaction:
>> The insert failed because a column definition includes validation 
>> constraints.
>> validation error for column ID, value "*** null ***"."
>>
>> The question is:
>>
>> Why without using CONSTRAINT appears that message but using CONSTRAINT
>> all works fine?
>>
>> And there are not row/s with a NULL value in the column ID.
>>
>> At least, they are not showed with the following query:
>>
>> SELECT
>>    *
>> FROM
>>    MyTable
>> WHERE
>>    ID IS NULL
>>
>> So, it seems very strange to me. The logic for me is: both works or both
>> fails, but why one fails and the other works?
>>
>> Greetings.
>>
>> Walter.
>>
>>
>>
>>
>>
>>
>> On Fri, Aug 21, 2015 at 2:43 PM, Ann Harrison [email protected]
>> [firebird-support] <[email protected]> wrote:
>>
>>>
>>>
>>>
>>> On Aug 21, 2015, at 2:13 PM, 'Walter R. Ojeda Valiente'
>>> [email protected] [firebird-support] <
>>> [email protected]> wrote:
>>>
>>>
>>> Without using CONSTRAINT doesn't work and in such case the name is
>>> choosed by Firebird, not for me.
>>>
>>>>
>>>>>
>>>>>> For add a Primary Key to a table we can write:
>>>>>>
>>>>>> ALTER TABLE MyTable ADD PRIMARY KEY (ID);
>>>>>>
>>>>>> or we can write:
>>>>>>
>>>>>> ALTER TABLE MyTable ADD CONSTRAINT MyPK PRIMARY KEY (ID);
>>>>>>
>>>>>> In the first case, the Firebird puts the name of the Primary Key, in
>>>>>> the second case we choose that name, but...
>>>>>>
>>>>>> Why sometimes the first case fails and the second case always work?
>>>>>>
>>>>>> But (just sometimes) the first case fails.
>>>>>>
>>>>>>
>>>>>
>>> How does it fail?  What's the error message? Or does it kill the
>>> connection?  Crash the server?  Freeze the O/S?  Set the machine on fire?
>>>
>>> Cheers,
>>>
>>> Ann
>>>
>>
>>
>
>
> 
>

Reply via email to