NULL and missing are two different concepts.  Null means unknown, not missing.  
The data structure should have an ability to store NULL to be compatible with 
RDBMS semantics.  While a dynamic column is similar to a NoSQL document store 
it is not one, and should support SQL semantics.  

IMHO

--Justin

Sent from my iPhone

> On Feb 3, 2015, at 7:58 AM, Tom Worster <f...@thefsb.org> wrote:
> 
> Hi Sergei, 
> 
> On 2/3/15, 7:13 AM, "Sergei Golubchik" <s...@mariadb.org> wrote:
> 
>>> A dynamic column cannot be NULL, so using a JSON null (a different kind
>>> of
>>> null) to express "dynamic column exists but cannot be represented as
>>> requested" should work. The ORM would then have the names and positions
>>> in
>>> the structure of all the BINARY dynamic columns. With that it can send a
>>> SELECT with one or more COLUMN_GET(dyncol_blob, "name" AS BINARY)
>>> expressions. I could live with that.
>> 
>> Hmm. May be a dynamic column cannot be NULL now, but this is not a
>> conceptual limitation, there is no logical reason why it coldn't be.
> 
> There may be no *technical* reason why it couldn't be but I see no
> *logical* reason why it would be. I can understand how tables (be they
> schema, temp or select) need NULL to say "it's not here" but a dynamic
> column existing and having a "value" of NULL is a non-sequitur. Writing a
> NULL to a dynamic column currently deletes it and I think that makes
> perfect sense. (I think we see know how the word "column" in "dynamic
> columns" can be misleading.)
> 
> 
>> So I'd rather keep JSON null for that. What I mean was that the whole
>> COLUMN_GET should fail and return NULL, just as any function does when
>> it gets invalid input:
>> 
>> MariaDB [test]> select uncompress("foobar"), 1/0, sqrt(-2);
>> +----------------------+------+----------+
>> | uncompress("foobar") | 1/0  | sqrt(-2) |
>> +----------------------+------+----------+
>> | NULL                 | NULL |     NULL |
>> +----------------------+------+----------+
>> 
>> (it can also throw a warning, like uncompress does).
> 
> I see what you mean but it's not a very useful answer. Much more useful to
> get the names, datatypes and structure plus all the values that aren't
> non-unicode strings.
> 
> Tom
> 
> 
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~maria-discuss
> Post to     : maria-discuss@lists.launchpad.net
> Unsubscribe : https://launchpad.net/~maria-discuss
> More help   : https://help.launchpad.net/ListHelp

_______________________________________________
Mailing list: https://launchpad.net/~maria-discuss
Post to     : maria-discuss@lists.launchpad.net
Unsubscribe : https://launchpad.net/~maria-discuss
More help   : https://help.launchpad.net/ListHelp

Reply via email to