当前位置: 首页 > 知识库问答 >
问题:

Datastax Cassandra PHP驱动程序:如何知道CQL INSERT、UPDATE、DELETE是否成功

微生善
2023-03-14

我用Datastax php-driver在我的cassandra上运行CQL。我使用插入、更新、删除操作。

下面是我为insert运行的示例代码

        $cluster = Cassandra::cluster()
                ->withContactPoints('54.XX.XX.XX', '54.XX.XX.XX','54.XX.XX.XX')
                ->withDefaultConsistency(4)
                ->build();

        $session = $cluster->connect('Sample_Key_Space');
        $statement = new Cassandra\SimpleStatement('insert_query');
        $result = $session->execute($statement);

我的问题是,如何知道插入(或更新、删除)是否成功。我已经阅读了Datastax文档并知道$session-

非常感谢任何帮助或建议...

更新:

根据答案,工作代码示例

try {
$cluster = Cassandra::cluster()
            ->withContactPoints('54.XX.XX.XX')
            ->withDefaultConsistency(4)
            ->build();

    $session = $cluster->connect('school');

    $statement = new Cassandra\SimpleStatement("UPDATE1 activities SET activity_by = 'nagarajan' WHERE master_id = 12 AND activity_type='Hello' AND activity_id=10");
$result = $session->execute($statement);
return true;
} catch (Cassandra\Exception $e $e) {
    return 'failed';
}

共有1个答案

宇文曦
2023-03-14

try catch包围执行方法。如果查询失败,执行方法会抛出异常,您可以在应用程序中检查该异常。

有关更多详细信息,请访问 会话执行 。

 类似资料:
  • 问题内容: 也许这是一个显而易见的问题,但我想确定。 我怎么知道MySQLnd是否是活动驱动程序? 我正在运行PHP 5.3和MySQL 5.1.37。在phpinfo()中,列出了mysqlnd,但是仅凭此我不确定我是使用MySQLnd还是旧驱动程序… 提取phpinfo()输出 我正在使用PDO,并且PDO驱动程序显示mysql … 问题答案: 这应该可以解决问题: 要检测其是否为活动的PDO

  • 问题内容: 即使文件在远程http服务器上不存在,它也会以静默方式返回,它只是将html页面保存到命名文件中。例如: 即使abc.jpg在google.com服务器上不存在,它只是默默返回,生成的不是有效的jpg文件,它实际上是html页面。我猜返回的标头(一个httplib.HTTPMessage实例)可以用来实际上告诉检索是否成功,但是我找不到的任何文档。 有人可以提供有关此问题的一些信息吗?

  • 问题内容: 我正在使用PDO插入记录(mysql和php) 有没有办法知道它是否成功插入,例如,是否由于重复而没有插入记录? 编辑:当然,我可以查看数据库,但是我的意思是程序反馈。 问题答案: 成功返回true。还有,你可以检查错误。

  • 问题内容: 我有一个名为的方法的对象,该方法启动三个线程。 每个线程执行完毕后,如何获得通知? 有没有办法知道一个(或全部)线程是否已完成或仍在执行? 问题答案: 你可以通过多种方式执行此操作: 在主线程中使用以阻塞方式等待每个线程完成,或者 以轮询方式(通常不鼓励使用)检查,等待每个线程完成,或者 非常规的,对于每个有问题的线程,调用来调用对象中的方法,并对每个线程进行编程以在完成时抛出未捕获的

  • 问题内容: 我有一个表格,基本上是上传一个文件。我要提交两次表格,第1次不包含多部分,第二次1次包含多部分。 但是我想先检查一下第一次提交表单是否成功,然后再进行第二次提交 引用@Vern后编辑 这是我的servlet部分。我在哪里确定它是否由多个部分组成。如果未将 resultType 存储到会话变量中,则返回, 现在,我要检查此“已 提交 ”或类似内容,然后第二次提交表格。 第二表单提交:在这

  • 我现在正在阅读日志,试图理解为什么两台设备无法通过蓝牙连接。有没有办法通过读取logcat来知道这两个设备是否成功配对?我没有带设备,只是通过阅读日志来了解情况。 也许我应该寻找。这些状态在某处有定义吗?