Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Yii与sqlite 3_Sql_Model_Yii - Fatal编程技术网

Yii与sqlite 3

Yii与sqlite 3,sql,model,yii,Sql,Model,Yii,在console.php和main.php的config文件夹中 我正在使用: 'db'=>array( 'connectionString' => 'sqlite:protected/data/qdr.sqlite', ), sqlite数据库位于数据文件夹中 现在,当我尝试创建模型用户时(有一个名为users的表) 用命令 易拉罐 模型用户 它显示了错误: >> model users exception 'CDbException' with messag

在console.php和main.php的config文件夹中

我正在使用:

'db'=>array(
    'connectionString' => 'sqlite:protected/data/qdr.sqlite',
),
sqlite数据库位于数据文件夹中

现在,当我尝试创建模型用户时(有一个名为users的表)

用命令 易拉罐 模型用户

它显示了错误:

>> model users
exception 'CDbException' with message 'CDbConnection failed to open the DB conne
ction: SQLSTATE[HY000] [14] unable to open database file' in F:\wamp\www\qdr\fra
mework\db\CDbConnection.php:381
Stack trace:
#0 F:\wamp\www\qdr\framework\db\CDbConnection.php(330): CDbConnection->open()
#1 F:\wamp\www\qdr\framework\db\CDbConnection.php(308): CDbConnection->setActive
(true)
#2 F:\wamp\www\qdr\framework\base\CModule.php(387): CDbConnection->init()
#3 F:\wamp\www\qdr\framework\base\CApplication.php(438): CModule->getComponent('
db')
#4 F:\wamp\www\qdr\framework\cli\commands\shell\ModelCommand.php(259): CApplicat
ion->getDb()
#5 F:\wamp\www\qdr\framework\cli\commands\ShellCommand.php(128): ModelCommand->r
un(Array)
#6 F:\wamp\www\qdr\framework\cli\commands\ShellCommand.php(99): ShellCommand->ru
nShell()
#7 F:\wamp\www\qdr\framework\console\CConsoleCommandRunner.php(67): ShellCommand
->run(Array)
#8 F:\wamp\www\qdr\framework\console\CConsoleApplication.php(91): CConsoleComman
dRunner->run(Array)
#9 F:\wamp\www\qdr\framework\base\CApplication.php(169): CConsoleApplication->pr
ocessRequest()
#10 F:\wamp\www\qdr\framework\yiic.php(33): CApplication->run()
#11 F:\wamp\www\qdr\framework\yiic(14): require_once('F:\wamp\www\qdr...')
#12 {main}
>> model users
exception 'CDbException' with message 'CDbConnection failed to open the DB conne
ction: SQLSTATE[HY000] [14] unable to open database file' in F:\wamp\www\qdr\fra
mework\db\CDbConnection.php:381
Stack trace:
#0 F:\wamp\www\qdr\framework\db\CDbConnection.php(330): CDbConnection->open()
#1 F:\wamp\www\qdr\framework\db\CDbConnection.php(308): CDbConnection->setActive
(true)
#2 F:\wamp\www\qdr\framework\base\CModule.php(387): CDbConnection->init()
#3 F:\wamp\www\qdr\framework\base\CApplication.php(438): CModule->getComponent('
db')
#4 F:\wamp\www\qdr\framework\cli\commands\shell\ModelCommand.php(259): CApplicat
ion->getDb()
#5 F:\wamp\www\qdr\framework\cli\commands\ShellCommand.php(128): ModelCommand->r
un(Array)
#6 F:\wamp\www\qdr\framework\cli\commands\ShellCommand.php(99): ShellCommand->ru
nShell()
#7 F:\wamp\www\qdr\framework\console\CConsoleCommandRunner.php(67): ShellCommand
->run(Array)
#8 F:\wamp\www\qdr\framework\console\CConsoleApplication.php(91): CConsoleComman
dRunner->run(Array)
#9 F:\wamp\www\qdr\framework\base\CApplication.php(169): CConsoleApplication->pr
ocessRequest()
#10 F:\wamp\www\qdr\framework\yiic.php(33): CApplication->run()
#11 F:\wamp\www\qdr\framework\yiic(14): require_once('F:\wamp\www\qdr...')
#12 {main}
>> model users
exception 'CDbException' with message 'CDbConnection failed to open the DB conne
ction: SQLSTATE[HY000] [14] unable to open database file' in F:\wamp\www\qdr\fra
mework\db\CDbConnection.php:381
Stack trace:
#0 F:\wamp\www\qdr\framework\db\CDbConnection.php(330): CDbConnection->open()
#1 F:\wamp\www\qdr\framework\db\CDbConnection.php(308): CDbConnection->setActive
(true)
#2 F:\wamp\www\qdr\framework\base\CModule.php(387): CDbConnection->init()
#3 F:\wamp\www\qdr\framework\base\CApplication.php(438): CModule->getComponent('
db')
#4 F:\wamp\www\qdr\framework\cli\commands\shell\ModelCommand.php(259): CApplicat
ion->getDb()
#5 F:\wamp\www\qdr\framework\cli\commands\ShellCommand.php(128): ModelCommand->r
un(Array)
#6 F:\wamp\www\qdr\framework\cli\commands\ShellCommand.php(99): ShellCommand->ru
nShell()
#7 F:\wamp\www\qdr\framework\console\CConsoleCommandRunner.php(67): ShellCommand
->run(Array)
#8 F:\wamp\www\qdr\framework\console\CConsoleApplication.php(91): CConsoleComman
dRunner->run(Array)
#9 F:\wamp\www\qdr\framework\base\CApplication.php(169): CConsoleApplication->pr
ocessRequest()
#10 F:\wamp\www\qdr\framework\yiic.php(33): CApplication->run()
#11 F:\wamp\www\qdr\framework\yiic(14): require_once('F:\wamp\www\qdr...')
#12 {main}
>> model users > test.txt
exception 'CDbException' with message 'CDbConnection failed to open the DB conne
ction: SQLSTATE[HY000] [14] unable to open database file' in F:\wamp\www\qdr\fra
mework\db\CDbConnection.php:381
Stack trace:
#0 F:\wamp\www\qdr\framework\db\CDbConnection.php(330): CDbConnection->open()
#1 F:\wamp\www\qdr\framework\db\CDbConnection.php(308): CDbConnection->setActive
(true)
#2 F:\wamp\www\qdr\framework\base\CModule.php(387): CDbConnection->init()
#3 F:\wamp\www\qdr\framework\base\CApplication.php(438): CModule->getComponent('
db')
#4 F:\wamp\www\qdr\framework\cli\commands\shell\ModelCommand.php(259): CApplicat
ion->getDb()
#5 F:\wamp\www\qdr\framework\cli\commands\ShellCommand.php(128): ModelCommand->r
un(Array)
#6 F:\wamp\www\qdr\framework\cli\commands\ShellCommand.php(99): ShellCommand->ru
nShell()
#7 F:\wamp\www\qdr\framework\console\CConsoleCommandRunner.php(67): ShellCommand
->run(Array)
#8 F:\wamp\www\qdr\framework\console\CConsoleApplication.php(91): CConsoleComman
dRunner->run(Array)
#9 F:\wamp\www\qdr\framework\base\CApplication.php(169): CConsoleApplication->pr
ocessRequest()
#10 F:\wamp\www\qdr\framework\yiic.php(33): CApplication->run()
#11 F:\wamp\www\qdr\framework\yiic(14): require_once('F:\wamp\www\qdr...')
#12 {main}

怎么办,这里出了什么问题?

只要在main.php中使用'connectionString'=>'sqlite:f:\wamp\www\qdr\protected\data\testdrive.db'就行了……ta da………

我想出来了。问题出在服务器上。我在所有已修复的位置重新安装了它。

Yii有两个配置文件。控制台配置与网站配置不同。可能您还没有。

如何连接到数据库qdr.sqlite?我在yii Framework中与sqlite中的数据库连接时遇到问题。我认为.sqlite文件类型有问题,他们正在使用.db作为sqlite。。。!!!!?!?!您是否在php中安装了sqlite模块?查看
phpinfo()
谢谢@Ahmmad Ismail您的解决方案对于任何发现yii2此问题的人,您仍然可以使用上面的方法,但最好使用应用程序别名使应用程序可移植:
sqlite:@app/path/database.db