2013-07-02 3 views
12

Ich verwende Datastax als Client für die Verbindung mit Cassandra. Ich habe erfolgreich eine Verbindung zu Cassandra Cluster/Schlüssel/Spaltenfamilien über Java hergestellt. Ich versuche, einige Abfragen auf Cassandra-Spalte Familie Thriugh Java. Für mich ist es funktioniert für einfache Abfragen wieÜbergabe des Parameters an die Cassandra-CQL-Abfrage mit dem DataStax-Client

ResultSet results = session.execute("select * from demodb.customer where id = 1"); 

Jetzt möchte ich id-Parameter von Benutzer nehmen und es zu session.execute() übergeben; Aussage. Wie soll ich vorgehen?

Antwort

18

Hier ist ein Codebeispiel zum Einfügen von Daten zu einem Bild mithilfe vorbereiteter Anweisungen.

PreparedStatement statement = getSession().prepare(
           "INSERT INTO pixelstore.image " + 
           "(image_name, " + 
           " upload_time, " + 
           " upload_by, " + 
           " file_type, " + 
           " file_size" + 
           ") VALUES (?, ?, ?, ?, ?);"); 

// create the bound statement and initialise it with your prepared statement 
BoundStatement boundStatement = new BoundStatement(statement); 

session.execute(// this is where the query is executed 
    boundStatement.bind(// here you are binding the 'boundStatement' 
    "background", TimeUtil.getTimeUUID(), "lyubent", "png", "130527")); 

Es wurden zwei neue Blog-Posts auf dem Planeten cassandra mit einer Demo von dem, was der Fahrer tun kann, sie enthalten Codebeispiele so check them out:

  1. Materialized View with Cassandra and DataStax Java Driver
  2. Small Java Application using DataStax Java Driver and Cassandra 1.2 working
+0

Vielen Dank !! –

0

Sie müssen eine vorbereitete Anweisung erstellen. Dann müssen Sie diese Anweisung mit dem ID-Wert binden, den Sie vom Benutzer erhalten haben. Dann können Sie die gebundene Anweisung ausführen.

+0

Ok .... danke! –

Verwandte Themen