我是Cassandra和R的新手。当我使用<div id="edit-modal" class = "modal fade" tabindex="-1" role="dialog" style="padding-top: 150px;" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<!-- Modal content-->
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title" id="myModalLabel">Choose your slots</h4>
</div>
<div class="modal-body">
<p class="edit-content">service id:</p>
<form role="form1" name="loginform" method="post" class="login-form">
<div class="form-group">
<table align="center">
<tr>
<td colspan="2"><center>slot 1</center></td>
</tr>
<tr>
<td><input type="date" id="datePicker" name="slot1_dt"> </td>
<td><input type="time" name="slot1_tm"> </td>
</tr>
<tr>
<td colspan="2"><center>slot 2</center></td>
</tr>
<tr>
<td><input type="date" id="datePicker" name="slot2_dt"> </td>
<td><input type="time" name="slot2_tm"> </td>
</tr>
<tr>
<td colspan="2"><center><button type="submit" name="book" class="btn btn-default" value="book" style="font-size: 14px !important;">Book</button></center></td>
</tr>
</table>
<?php
if(isset($_REQUEST["book"]))
{
if($_REQUEST["book"])
{
$service_id=$_REQUEST["serv_id"];
$customer_id=$_REQUEST["cust_id"];
$slot1_dt=$_REQUEST["slot1_dt"];
$slot2_dt=$_REQUEST["slot2_dt"];
$slot1_tm=$_REQUEST["slot1_tm"];
$slot2_tm=$_REQUEST["slot2_tm"];
$slot1=$slot1_dt." ".$slot1_tm;
$slot1 = date("Y-m-d H:i:s",strtotime($slot1));
$slot2=$slot2_dt." ".$slot2_tm;
$slot2 = date("Y-m-d H:i:s",strtotime($slot2));
$insertqry="INSERT INTO `tblappointments`(`customer_id`, `service_id`, `preferred_slot1_date`, `preferred_slot2_date`) VALUES ('$customer_id','$service_id','$slot1','$slot2')";
mysqli_query($con, $insertqry) or die(mysqli_error($con));
}
}
?>
</div>
</form>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
包连接到Cassandra数据库时,连接正在建立。但是当尝试使用任何键空间时,R没有响应。我使用了以下陈述。
RCassandra
请简要介绍一下如何使用c <- RC.connect('192.168.1.20', 9042)
RC.use(c, 'effesensors')
来避免此问题。
答案 0 :(得分:1)
您是否知道您可能正在使用Cassandra的非默认端口?如果您可以提供Cassandra版本和RStudio版本,我可以更新我的答案。我发现tarkalabs的this tutorial可用作在尝试连接之前要采取的步骤的清单。
从教程
开始现在使用
连接到您的数据库connect.handle <- RC.connect(host="127.0.0.1", port=9160)
Cassandra默认侦听端口9160,但您可以更改它 根据您的配置。要将群集类型显示到您的 提示
RC.cluster.name(connect.handle)
只是为了验证您已连接并且您的Cassandra实例正在运行,请尝试以下命令:
RC.describe.keyspaces(connect.handle)
这应该会返回键空间中的设置列表。如果没有返回,则表示您未连接或未正确安装Cassandra实例。
示例输出
$system_traces$strategy_options
replication_factor
"2"
$system_traces$cf_defs
named list()
$system_traces$durable_writes
[1] TRUE
如果我的答案不起作用,请告诉我你的结果是什么,我会更新我的答案。祝你好运!
答案 1 :(得分:1)
使用RODBC而不是使用RCassandra。我们需要安装Cassandra ODBC驱动程序。
答案 2 :(得分:0)
谢谢@D。 Venkata Naresh,您使用RODBC驱动程序的建议解决了我的问题。
我正在使用R和datastax cassandra社区版。
这是我在windows机器中配置ODBC驱动程序时所遵循的链接。
https://www.datastax.com/dev/blog/using-the-datastax-odbc-driver-for-apache-cassandra
然后,在我的R工作室中,这些是连接和从Cassandra中获取的命令
install.packages("RODBC")
library("RODBC")
require("RODBC")
conn <- odbcConnect(<ODBC datasource name>)
dataframe <- sqlFetch(conn, <column family / table name>)
dataframe
希望,这个答案可以帮助那些面临RCassandra问题的人。
答案 3 :(得分:0)
我在上面看到你的评论,你使用了错误的端口。您应该运行以下命令 c&lt; - RC.connect('192.168.1.20',9160) 这绝对适合你。