2017-10-15 3 views
1

Comment créer une nouvelle base de données sqlite en utilisant Crystal?Crystal sqlite3 créer une nouvelle base de données

Lorsque vous essayez:

DB.open "sqlite3://.data.db" do |db| 
end 

Je reçois aucune erreur.
Mais quand je tente de le faire dans le répertoire:

DB.open "sqlite3://~/.data.db" do |db| 
end 

Je reçois une exception DB::ConnectionRefused.

Comment puis-je ouvrir une base de données dans le répertoire personnel?

Répondre

4

Lorsque vous

DB.open "sqlite3://.data.db" do |db| 
end 

vous créez data.db dans le répertoire courant. Essayez d'exécuter usage example et vous obtiendrez une sortie.

Pour créer/ouvrir db dans un répertoire, il vous suffit d'étendre le chemin (~ ne fonctionne pas dans l'URI sqlite):

db_path = File.expand_path "~/data.db" 
DB.open "sqlite3://#{db_path}" do |db| 
end