How do you insert a string or text as a blob in Cassandra (specifically CQLSH)?

后端 未结 1 2065
爱一瞬间的悲伤
爱一瞬间的悲伤 2021-02-19 07:21

I was trying to insert text or some string as a blob for testing purposes in CQLSH

insert into test_by_score (commit, delta, test, score)
       values (textAsBl         


        
1条回答
  •  广开言路
    2021-02-19 07:49

    The following seems to be working. Your WHERE condition in your SELECT statement may be trying to access the incorrect hex 0x0b5db8b91bfdeb0a304b372dd8dda123b3fd1ab6.

    DROP KEYSPACE example;
    CREATE KEYSPACE example WITH replication = {'class':'SimpleStrategy', 'replication_factor':1};
    USE example;
    
    CREATE TABLE IF NOT EXISTS test_by_score (
        commit blob, -- blob representing the commit hash
        delta int, -- how much the scores have changed
        score int, -- the test score, which is determined by the client
        test blob, -- blob for the test
        PRIMARY KEY(commit, delta, test)
    );
    
    INSERT INTO test_by_score  (commit, delta, test, score) VALUES 
      (textAsBlob('bdb14fbe076f6b94444c660e36a400151f26fc6f'), 0, textAsBlob('{"prefix": "enwiki", "title": "\"Aghnadarragh\""}'), 100
    );
    
    INSERT INTO test_by_score (commit, delta, test, score) VALUES (
      textAsBlob('cdb14fbe076f6b94444c660e36a400151f26fc6f'), 0, textAsBlob('{"prefix": "enwiki", "title": "\"Aghnadarragh\""}'), 100
    );
    
    INSERT INTO test_by_score (commit, delta, test, score) VALUES (
      textAsBlob('adb14fbe076f6b94444c660e36a400151f26fc6f'), 0, textAsBlob('{"prefix": "enwiki", "title": "\"Aghnadarragh\""}'), 100
    );
    

    To grab all the rows

    SELECT * FROM example.test_by_score 
    

    To select a specific row.

    SELECT * FROM example.test_by_score 
      WHERE commit = 0x62646231346662653037366636623934343434633636306533366134303031353166323666633666;
    

    0 讨论(0)
提交回复
热议问题