diff --git a/Command/AbstractPropelCommand.php b/Command/AbstractPropelCommand.php
index 2cc79d9..5f3837f 100644
--- a/Command/AbstractPropelCommand.php
+++ b/Command/AbstractPropelCommand.php
@@ -388,7 +388,12 @@ EOT;
{
preg_match('#dbname=([a-zA-Z0-9\_]+)#', $dsn, $matches);
- return $matches[1];
+ if (isset($matches[1])) {
+ return $matches[1];
+ }
+
+ // e.g. SQLite
+ return null;
}
/**
diff --git a/Command/DatabaseCreateCommand.php b/Command/DatabaseCreateCommand.php
index 973e53c..7ed38fb 100644
--- a/Command/DatabaseCreateCommand.php
+++ b/Command/DatabaseCreateCommand.php
@@ -45,7 +45,12 @@ class DatabaseCreateCommand extends AbstractPropelCommand
list($name, $config) = $this->getConnection($input, $output);
$dbName = $this->parseDbName($config['connection']['dsn']);
- $query = 'CREATE DATABASE '. $dbName .';';
+
+ if (null === $dbName) {
+ return $output->writeln('No database name found.');
+ } else {
+ $query = 'CREATE DATABASE '. $dbName .';';
+ }
try {
\Propel::setConfiguration($this->getTemporaryConfiguration($name, $config));
diff --git a/Command/DatabaseDropCommand.php b/Command/DatabaseDropCommand.php
index 6bd12cd..ae2930a 100644
--- a/Command/DatabaseDropCommand.php
+++ b/Command/DatabaseDropCommand.php
@@ -67,7 +67,12 @@ EOT
list($name, $config) = $this->getConnection($input, $output);
$dbName = $this->parseDbName($config['connection']['dsn']);
- $query = 'DROP DATABASE '. $dbName .';';
+
+ if (null === $dbName) {
+ return $output->writeln('No database name found.');
+ } else {
+ $query = 'DROP DATABASE '. $dbName .';';
+ }
try {
$connection = \Propel::getConnection($name);