首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Neo4j和cypher新手

Neo4j和cypher新手
EN

Stack Overflow用户
提问于 2015-11-11 04:14:26
回答 1查看 63关注 0票数 0

我正在尝试用php学习neo4j,但我在使用查询语句时遇到了困难。如何使用cypher遍历我创建的节点并分配一个abv、ibu、srm和brewery关系。

代码语言:javascript
复制
    require_once 'vendor/autoload.php';

use Neoxygen\NeoClient\ClientBuilder;

$client = ClientBuilder::create()->addConnection('default','http','localhost',7474, true, 'neo4j', '123')->setDefaultTimeout(20)->build();

$version = $client->getNeo4jVersion();

$conn = mysqli_connect("localhost","root","","sample data");

if(!$conn){
    mysqli_connect_error();
}
$db_selected = mysqli_select_db($conn, 'sample data');
if(!$db_selected){
  die();
}
$sql="SELECT * FROM `beers` ";

$result=mysqli_query($conn, $sql);
if(!$result){
    die(); 
}
$beer = array();
while($row = mysqli_fetch_array($result,MYSQLI_BOTH)){
    $temp = array();
    array_push($temp, $row['name']);
    array_push($temp, $row['abv']);
    array_push($temp, $row['ibu']);
    array_push($temp, $row['srm']);
    array_push($temp, $row['brewery_id']);
    array_push($beer,$temp);
}   
$i =0;
foreach ($beer as $name) {
    $temp = $name;
    if($i == 500){break;}else{$i++;}
    $q = "CREATE ( n {beer_name:"."\"".$name[0]."\","."ABV:".$name[1].","."IBU:".$name[2].","."SRM:".$name[3].","."brewey:".$name[4]."})";
    $client->sendCypherQuery($q);
    $result = $client->getRows();
}

任何帮助都是很好的,我被困在该做什么

EN

回答 1

Stack Overflow用户

发布于 2015-11-11 11:53:36

这可能对你有用:

代码语言:javascript
复制
require_once 'vendor/autoload.php';

use Neoxygen\NeoClient\ClientBuilder;

$client = ClientBuilder::create()->addConnection('default','http','localhost',7474, true, 'neo4j', '123')->setDefaultTimeout(20)->build();

$version = $client->getNeo4jVersion();

$conn = mysqli_connect("localhost","root","","sample data");

if(!$conn){
    mysqli_connect_error();
}
$db_selected = mysqli_select_db($conn, 'sample data');
if(!$db_selected){
  die();
}
$sql="SELECT * FROM `beers` ";

$result=mysqli_query($conn, $sql);
if(!$result){
    die(); 
}

$q =
  "CREATE (beer:Beer   {name: {name}})
   MERGE  (abv:Abv     {name: {abv}})
   MERGE  (ibu:Ibu     {name: {ibu}})
   MERGE  (srm:Srm     {name: {srm}})
   MERGE  (brw:Brewery {name: {brewery_id}})
   CREATE (beer)-[:ABV]->(abv),(beer)-[:IBU]->(ibu),(beer)-[:SRM]->(srm),(beer)-[:BREWERY]->(brw);";

while($row = mysqli_fetch_array($result,MYSQLI_BOTH)){
  $client->sendCypherQuery($q, $row);
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33638715

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档