2016-02-19 31 views
1

我試着去創建一個表,但得到這個錯誤 -卡桑德拉無法創建表KeyError異常

keyspace = cluster.metadata.keyspaces[ks_name] 
KeyError: 'cqlengine' 

型號:

import uuid 
from cqlengine import columns 
from cqlengine.models import Model 
from datetime import datetime 
from cqlengine.management import sync_table 


class Tickets(Model): 
    ticket_id = columns.UUID(primary_key=True, default=uuid.uuid4) 
    created_dt = columns.DateTime(default=datetime.now()) 
    division = columns.Text() 
    pg = columns.Text() 
    duration = columns.Text() 
    error_count = columns.Text() 
    outage_caused = columns.Text() 
    system_caused = columns.Text() 
    addt_notes = columns.Text() 
    ticket_num = columns.Text() 
    ticket_type = columns.Text() 
    row_create_ts = columns.DateTime(default=datetime.now()) 
    row_end_ts = columns.DateTime(
     default='9999-12-31 00:00:00.00000-00') 


#connection.setup(['127.0.0.1'], "cqlengine", protocol_version=3) 
# sync_table(Tickets) 
from cqlengine import connection 
connection.setup(["localhost"], "cqlengine") 
sync_table(Tickets) 

回答

1

這個錯誤是因爲你還沒有創建一個密鑰空間稱爲cqlengine。在使用它之前,您需要創建一個密鑰空間。在這種情況下,您需要使用cqlsh創建一個名爲cqlengine的密鑰空間,然後運行sync_table