运行Laravel';时出错;s手工会话:使用pgSQL的表


Error when running Laravel's artisan session:table with pgSQL

我刚刚从Laravel repo中进行了git克隆,并设置了pgSQL数据库的详细信息。接下来,我尝试使用artisan来创建session表。

php artisan session:table

然而,这给了我以下错误:

X-Powered-By: PHP/5.3.16
Content-type: text/html
<br />
<b>Fatal error</b>:  Uncaught exception 'Laravel'Database'Exception' with message 'SQLSTATE[42P01]: Undefined table: 7 ERROR:  relation &quot;sessions&quot; does not exist
LINE 1: SELECT * FROM &quot;sessions&quot; WHERE &quot;id&quot; = $1 LIMIT 1
                      ^
SQL: SELECT * FROM &quot;sessions&quot; WHERE &quot;id&quot; = ? LIMIT 1
Bindings: array (
  0 =&gt; 'i8qwmexP1joUkSLDH7naRayJDiSrLFGQa4xeubgz',
)' in /home/dev/public_html/laravel/database/connection.php:263
Stack trace:
#0 /home/dev/public_html/laravel/database/connection.php(183): Laravel'Database'Connection-&gt;execute('SELECT * FROM &quot;...', Array)
#1 /home/dev/public_html/laravel/database/query.php(648): Laravel'Database'Connection-&gt;query('SELECT * FROM &quot;...', Array)
#2 /home/dev/public_html/laravel/database/query.php(592): Laravel'Database'Query-&gt;get(Array)
#3 /home/dev/public_html/laravel/database/query.php(563): Laravel'Database'Query-&gt;first(Array)
#4 /home/dev/public_html/laravel/session/drivers/database.php(36): Laravel'Database'Query-&gt;find('i8qwmexP1joUkSL...')
#5 /home/dev/public_html/laravel/session/dri in <b>/home/dev/public_html/laravel/database/connection.php</b> on line <b>263</b><br />

当我将数据库驱动程序切换到mysql时,我得到以下消息:

X-Powered-By: PHP/5.3.16
Content-type: text/html
You forgot to provide the task name.

不过,执行SQL查询是可行的,而artisan则不然。

CREATE TABLE `sessions` (
     `id` VARCHAR(40) NOT NULL,
     `last_activity` INT(10) NOT NULL,
     `data` TEXT NOT NULL,
     PRIMARY KEY (`id`)
);

使用pgSQL驱动程序时,应该如何解决此错误?不确定这里出了什么问题。

尝试从查询中删除单引号:

CREATE TABLE sessions (
    id VARCHAR(40) NOT NULL,
    last_activity INT(10) NOT NULL,
    data TEXT NOT NULL,
    PRIMARY KEY (id)
);