Where does Neo4j Desktop look for CSV files - Windows 10? - csv

I'm at a loss, have installed Neo4j Desktop multiple times and cannot get it to load a CSV file. It's hard to know where to begin. None of the online documentation, or examples seem to be even relevant.
Loading from the browser using this code:
USING PERIODIC COMMIT
LOAD CSV WITH HEADERS FROM "file:///GraphElements.nodes.csv" AS row
CREATE (:Type {name: row.Name, uuid: row.UUID});
results in this error:
Neo.ClientError.Statement.ExternalResourceFailed: Couldn't load the
external resource at: file:/GraphElements.nodes.csv
enter image description here
According all the doc I've been able to find Neo4j looks for the file in its import folder, but where's the import folder supposed to be?
Neo4j was installed at: C:\Program Files\Neo4j Desktop
Note: 'Neo4j Desktop.exe' is in this folder, there is no bin folder
I created an import folder immediately below, i.e. C:\Program Files\Neo4j Desktop\import
and put the CSV file there. No luck, same error.
Rummaging around, I find:
C:\Users\CTG\.Neo4jDesktop
with some likely looking subfolders:
C:\Users\CTG\.Neo4jDesktop\neo4jDatabases\database-2c020f68-86a8-439d-937e-b5b46ad7f629
C:\Users\CTG\.Neo4jDesktop\neo4jDatabases\database-0541f039-2dfa-4c4d-85da-2c213b54d0c7
C:\Users\CTG\.Neo4jDesktop\neo4jDatabases\database-35274b1f-3b7b-42d3-83f1-06b881147e90
each of these has a bin folder a couple of levels down.
I've created an import folder under each of these, and copied the CSV file into them. Still get the problem.
Does anybody have any idea what's going on?
FWIW, the Neo4j doc doesn't seem to be up to date vis-a-vis Desktop.
The current Operations manual here only mentions Community and Enterprise editions, nothing about Desktop.
The File Locations reference claims that the default import location is at:
%APPDATA%\Neo4j Community Edition\import
but I cannot find a 'Neo4j Community Edition' folder. And the Community Edition seems to be gone from their site.
At this point Neo4j is only useful to play around with.
Thanks in advance for any clarification or help.

The import folder should be relative to the Neo4j instance in question.
If you Manage an instance in the Desktop app, you will see some buttons near the top. One of them is "Open Folder" with a dropdown menu. The dropdown has the option to open the Import folder for that instance.

This is what worked on Windows 10:
LOAD CSV FROM "file:///c:/Users/joe/Documents/sample.csv/" AS line RETURN count(*);
Go to the configuration file found here:
C:\Users\joe.Neo4jDesktop\neo4jDatabases\database-415cd6e1-0a1b-4973-ab3d-c32280b8a72b\installation-3.4.1\conf
Then change the conf file line 25 by commenting it out
#dbms.directories.import=import

Related

HelpNDoc : Problem to generate CHM format help - Error HHC5010

I would like to generate a CHM help file with HelpNDoc.
But I get an error message:
HHC5010: Error: Cannot open "c:\users\philippeDocuments\HelpNDoc\Output\chm\creabook.chm". Compilation stopped.
I tried to create the CHM folder myself, in the "Output" folder but no result.
I'm running Ubuntu 22.04.1 LTS and using Wine as a Windows emulator.
Maybe it's an authorization issue?
What is surprising is that I was able to generate the Word and html documentation.
Is someone can help me ?
I do not use Ubuntu or Wine as an environment and would like to recommend a machine with Windows for compiling CHM help files.
Despite the close connection of CHM help files with the Windows operating system, I do not want to completely exclude the possibility of compiling in a Wine environment.
My good old compiler Error Message Reference shows the following:
HHC5010: Cannot open ""file name"". Compilation stopped.
Problem: The specified file either doesn't exist, or another program has it open and is denying permission to read the file.
Result: The .chm file is corrupt and cannot be used.
Solution: If another program does have the file open, close the program. Otherwise either correct the name in your project file or remove it.
Please make sure that the CHM help file "c:\users\philippeDocuments\HelpNDoc\Output\chm\creabook.chm" is not open in Wine's HTML help viewer by using e.g. wine hh creabook.chm.
Please also try if you can open another CHM help file in your environment. Maybe you have to specify a windows path, e.g.
wine hh.exe `winepatch -w /some/dir/somefile.chm`
As mentioned above, this is somewhat problematic outside of Windows.
See also some notes at Installing Microsoft HTML Workshop under Wine

Warning: Could not find file C:\Users\Harsh Jain\Downloads\com.mysql.jdbc_5.1.5.jar\co

I am getting this error while running the Student Management System project in netbeans Ide project in made in java,jsp,html.Please help me
Your project's build has a dependency on the Java ARchive (.jar file) com.mysql.jdbc_5.1.5
There are two possibilities that I see here, without further details on what you have done so far:
1) You already downloaded the jar, but when you specified the path where your build process is gonna look for that file you had an error in your path ... make sure you have a jar file in C:\Users\Harsh Jain\Downloads\com.mysql.jdbc_5.1.5.jar or C:\Users\Harsh Jain\Downloads\com.mysql.jdbc_5.1.5.jar\com.mysql.jdbc_5.1.5.jar (I'm thinking you might have copied the name of the jar file twice in your path).
2) If you have not manually downloaded that file, then you should do so. You can find that version at http://www.java2s.com/Code/Jar/c/Downloadcommysqljdbc515jar.htm (or elsewhere). Once downloaded, make sure to copy/unzip the actual JAR file to your C:\Users\Harsh Jain\Downloads folder.
Once you have ensured the file is actually on your system AND in the right path, run the build again.

IntelliJ IDEA: Unable to download MySqlDriver

I am using IntelliJ IDEA,and I want to configure MySQL database from the IDE:
then fail:
The error is:
Failed to download 'http://download.jetbrains.com/idea/jdbc-drivers/mysql-connector-java-5.1.40-bin.jar
I don't know why connection will time out.
I can download other things such as plugins from jetbrains, but except jdbc-drivers.
I recommend taking a look in IDEA's log files to see if they may have additional details as to why the download is timing out. From the menu go to Help > Show log.
As a workaround, you can manually download the drivers and place them in the necessary location. Download bo the JAR and the mysql-connector-license.txt license file (from http://download.jetbrains.com/idea/jdbc-drivers/mysql-connector-license.txt of from MySQL directly). Place both files in the path {idea-config-dir}/jdbc-drivers/MySQL Connector/J/5.1.40 (modifying the version number if necessary). The location of the {idea-config-dir} can be looked up in the Directories used by the IDE to store settings, caches, plugins and logs help document. For example, c:\Users\Dilbert\.IntelliJIdea2017\config or ~/Library/Preferences/IntelliJIdea2017
Thus, in the end, that directory should have two files:
mysql-connector-java-5.1.40-bin.jar
mysql-connector-license.txt
put jars in
C:\Users\UUSER\AppData\Roaming\JetBrains\DataGrip2020.1\jdbc-drivers\PostgreSQL\42.2.5
from another install with internet
In 2019, The folder is this >>
C:\Users{YourUser}.DataGrip2019.3\config\jdbc-drivers\MySQL Connector\J 8\8.0.21
Download jar from
https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.21/mysql-connector-java-8.0.21.jar

Cypher Neo4j Couldn't load the external resource

In a Windows environment, I'm trying to load a .csv file with statement:
LOAD CSV WITH HEADERS FROM "file:///E:/Neo4j/customers.csv" AS row
It seems not to work properly and returns:
Couldn't load the external resource at:
file:/E:/Neo4j/Customers.csv
Neo.TransientError.Statement.ExternalResourceFailure
What am I doing wrong? thanks in advance
I was getting this error on Community Edition 3.0.1 on Mac OS X 10.10
It appears that the LOAD CSV file:/// looks for files in a predefined directory. One would think that in the argument that one would give the Cypher statement the full path but that is not the case.
The file:/// - for my situation" meant that neo4j would append the given argument you gave to one that was already predefined and then go look for that combined path
The file:/// pre-defined directory directory did not exist entirely
/Users/User/Documents/Neo4j/default.graphdb/import, in my computers directory structure I was missing the "/import" folder, which was not created at install
To fix on my system, I created an "import" directory, put the file to be read in that directory. I executed the Cypher load statement I ONLY put the name of the file to be read in the file argument i.e.
LOAD CSV file:///data.csv
this worked for me.
It appears to be a security configuration. Here's the original answer I found: https://stackoverflow.com/a/37444571/327004
You can add the following setting in conf/neo4j.conf in order to bypass this :
dbms.security.allow_csv_import_from_file_urls=true
Or change the import directory dbms.directories.import=import
You can find the answer in the file
"C:\Users\Jack\AppData\Roaming\Neo4j Community Edition\neo4j.conf"
(above "dbms.directories.import=import")
For version neo4j-community_windows-x64_3_1_1 you have to comment out this line or you have to create the folder \import (which isn´t created through the installation) and add your file into the folder.
There it´s written that due to security reasons they only allow file load from the \Documents\Neo4j\default.graphdb\import folder
After commenting out on # dbms.directories.import=import , you can execute e.g. from
LOAD CSV FROM "file:///C:/Users/Jack/Documents/products.csv" AS row
In neo4j.conf I didn´t have to add/set
dbms.security.allow_csv_import_from_file_urls=true
On (Arch) Linux + neo4j-community-3.4.0-alpha09, edit $NEO4J_HOME/conf
/neo4j.conf:
uncomment or add: dbms.security.allow_csv_import_from_file_urls=true
comment: #dbms.directories.import=import
Restart neo4j (in terminal: neo4j restart), and reload the Neo4j Browser (http://localhost:7474/browser/) if you are using a web browser as your Neo4j interface/GUI.
Then, you should be able to load a csv from outside your $NEO4J_HOME/... directory
E.g.,
LOAD CSV WITH HEADERS FROM "file:///mnt/Vancouver/Programming/data/metabolism/practice/a.csv" AS ...
where my $NEO4J_HOME/ is /mnt/Vancouver/apps/neo4j/neo4j-community-3.4.0-alpha09/
LOAD CSV WITH HEADERS FROM "file:/mnt/Vancouver/Programming/data/metabolism/practice/a.csv" AS ...
also works, but not
LOAD CSV WITH HEADERS FROM "file://mnt/Vancouver/Programming/data/metabolism/practice/a.csv" AS...
or
LOAD CSV WITH HEADERS FROM "/mnt/Vancouver/Programming/data/metabolism/practice/a.csv" AS...
i.e. use ...file:/... or ...file:///...
It's probably an URL issue, try file:c:/path/to/data.csv
See my blog posts:
http://jexp.de/blog/2014/10/load-cvs-with-success/
http://jexp.de/blog/2014/06/load-csv-into-neo4j-quickly-and-successfully/
For the ubuntu system, I placed the file in /usr/lib/neo4j which helped me solved the issue. On every other location, i tried giving full permissions(777) but the problem remains the same. After going through another stackoverflow post, i realized that the file should be kept in neo4j directory.
In the Neo4j desktop select the database you are using, go to the setting and there you will find the solution... just comment the "dbms.directories.import=import" line
# This setting constrains all LOAD CSV import files to be under the import directory. Remove or comment it out to
# allow files to be loaded from anywhere in the filesystem; this introduces possible security problems. See the
# LOAD CSV section of the manual for details.
dbms.directories.import=import ### COMMENT THIS LINE
For macOS Mojave v 10.14.5
Actually, I had to uncomment dbms.directories.import=import from ~/Library/Application Support/Neo4j Desktop/Application/neo4jDatabases/database-e2dd2a9c-d450-4639-861b-1e7e42b56b31/installation-3.5.5/conf/neo4j.conf and restart the service. Then it worked. All files has to be placed in import directory.
Run command LOAD CSV WITH HEADERS FROM 'FILE:/<yourCSV>.csv' as l return l
I am using the Neo4j Desktop and as others have said, the default graph database has a predefined import location. You can find the location by using the UI. If you put the CSV into the import directory, then you can use the relative path directly from you load csv command
Neo4j version is 3.1.1, OS is win10.
For me, LOAD CSV would read from Neo4j_Database_Location/testDB/import/artists.csv.
At first, I put csv file on the path F:\code\java\helloworld\artists.csv, and my cypher sentence is
LOAD CSV FROM 'file:///F:\\code\\java\\helloworld\\artists.csv' AS line
CREATE(:Artist {name:line[1],year:toInt(line[2])})
Then I get the error message returned as follows:
Couldn't load the external resource at: file:/D:/Neo4j/db/testDB/import/code/java/helloworld/artists.csv
It means neo4j itself concat the file path.
"D:/Neo4j/db/testDB/import/" is the Neo4j database location, and the "code/java/helloworld/artists.csv" is the csv file location.
For example, I install Neo4j on the path D:\Neo4j\Neo4j CE 3.1.1, and database loaction is D:\Neo4j\db. I put the CSV file on the path D:\Neo4j\db\testDB\import\artist.csv. If you don't have the file folder "import" on the path, you should creat it by yourself and put your file in the folder "import".
Then, put your csv file in the path, and input cyper sentence:
LOAD CSV from 'file:///artist.csv' as LINE
CREATE(:Artist {name:line[1],year:toInt(line[2])})
In a word, once you put the CSV file in the right path, the problem can be solved.
Related explaination in the LOAD CSV developer-manal
If dbms.directories.import is set to the default value import, using the above URLs in LOAD CSV would read from /import/myfile.csv and import/myproject/myfile.csv respectively.
If it is set to /data/csv, using the above URLs in LOAD CSV would read from /data/csv/myfile.csv and /data/csv/myproject/myfile.csv respectively.
Set the Property "dbms.directories.import=import"
Create folder 'import' explicitly at "/Users/User/Documents/Neo4j/default.graphdb/" because pre-defined directory did not exist entirely
place the csv data set here in the import folder
then run the code like - LOAD CSV FROM "file:///C:/customers.csv" AS row
In addition after you run the line, you can analyze what is going wrong in the code section to get a better understanding
you put your dataset into the import directory in neo4j-community path.
Then re-run your command.
Add your csv file in the import folder of neo4j installation guide to do this.
open neo4j and start graph of ur project
then in open folders tab open import folders
Copy ur csv file in this folder
Copy that part in ur load syntax as file:///C:/neo4j_module_datasets/test.csv since ur neo4j in running
in C drive
Snapshot for your reference
Use the following syntax:
LOAD CSV WITH HEADERS FROM "file:///my_collection.csv" AS row CREATE (n:myCollection) SET n = row
If you are running a docker then, follow these commands before running above query:
docker run \
-p=7474:7474 \
-p=7687:7687 \
-v=$HOME/neo4j/data:/data \
-v=$HOME/neo4j/logs:/logs \
-v=$HOME/local_import_dir:/var/lib/neo4j/import \
neo4j:3.0
Then,
sudo cp my_collection.csv /home/bajju/local_import_dir/
One of the following should solve the LOAD CSV errors (assuming you have dbms.security.allow_csv_import_from_file_urls=true)
If using Linux check for the permissions for the file. Change it using chmod 777 file_name.csv
Check if the file format/format for the contents within the file is correct.
The easiest way (be ware of security) is to serve you directory over http and use the http import
in the command line go the folder where csv files are lcoated
run the following depending on your python env.
Python 2
$ python -m SimpleHTTPServer 8000
Python 3
$ python3 -m http.server 8000
- Now you can load your files from your local host
LOAD CSV FROM 'http://localhost:8000/mycsvfile.csv' AS row
return row
- you can actually expose files on one host and load them where your DB is running by exposing the folder and replacing localhost with your IP

how to connect mysql databases in weka?

i want to use my mysql databases in weka in order to analysis data.
i download the mysql-connector-java-5.0.8-bin.jar and put that in weka folder in my program Files folder, and add this path to system variable path, but when i open the weka explorer and click the openDB, i don't know what should i write in the url textbox,
i don't know completely what should i do?
the error that i saw is:
problem connecting to database:
no suitable driver found for!
please give me a total guidance, thanks in advance.
add mysql-connector-java-5.1.12-bin.jar to CLASSPATH .
or put it in weka folder, navigate to weka installation folder and run command :
%java_home%/bin/java -Xmx300M -cp ".;weka.jar;mysql-connector-java-5.1.12-bin.jar;" weka.gui.GUIChooser
then click open DB and
fill in the proper user+password
put the url: jdbc:mysql://localhost:3306/DATABASENAME
Click Execute. The result window should show the results now.
For Weka 3.7.10, the classpath system environment variable is not took into account (at leat under Windows 7). The only working approach for me was to modify the RunWeka.ini file from the Weka installation folder as follows: the cp= setting was modified to:
cp=%CLASSPATH%;d:/Programs/jdbc/mysql-connector-java-5.1.26/mysql-connector-java-5.1.26-bin.jar
whereas only the %CLASSPATH%; setting was originally provided. Does not make much sense, but in worked.
find some introduction to WEKA and the environment variable:
http://weka.wikispaces.com/CLASSPATH
Copy mysql-connector-java-X.X.XX-bin.jar to /usr/share/java/
unizip /usr/share/java/weka.jar
edit: /usr/share/java/weka/experiment/DatabaseUtils.props
add:
jdbcDriver=com.mysql.jdbc.Driver
jdbcURL=jdbc:mysql://localhost:3306/test (with your server)
add shell
export CLASSPATH=/usr/share/java/mysql-connector-java-X.X.XX-bin.jar:
export CP=/usr/share/java/mysql-connector-java-X.X.XX-bin.jar::/usr/share/java/:/usr/shared/java/weka.jar
execute weka:
java -cp $CP -Xmx500m weka.gui.explorer.Explorer
Ready