1

我正在关注教程。

当我运行php scripts/load.mysql.php它说:

SQLSTATE[42000] [1102] 不正确的数据库名称 '/home/tirengarfio/workspace/ZendFW/gaziende/application/../data/db/guestbook-dev.db'

所以我只是试图改变线路

resources.db.params.dbname = APPLICATION_PATH "/../data/db/guestbook-dev.db"

resources.db.params.dbname = "guestbook-dev" and created a new database called guestbook.

但我收到另一个关于“留言簿”不是文件的错误,确切地说:

PHP警告:file_get_contents(/home/tirengarfio/workspace/ZendFW/gaziende/scripts/data.mysql.sql):无法打开流:/home/tirengarfio/workspace/ZendFW/gaziende/scripts/load中没有这样的文件或目录第 81 行的 .mysql.php

这是第 81 行错误周围的代码(检查 var_dump() 返回的内容):

// Check to see if we have a database file already
$options = $bootstrap->getOption('resources');
$dbFile  = $options['db']['params']['dbname'];
if (file_exists($dbFile)) {
    unlink($dbFile);
}

// this block executes the actual statements that were loaded from
// the schema file.
try {
    $schemaSql = file_get_contents(dirname(__FILE__) . '/schema.mysql.sql');
    // use the connection directly to load sql in batches
    $dbAdapter->getConnection()->exec($schemaSql);
    var_dump($dbFile);die(); // this returns "guestbook-dev"
    chmod($dbFile, 0666);

那么..我应该如何准确设置数据库连接的名称?

注意:本教程的示例是针对 Sqlite 的,我正在尝试使用 MySQL。那是重点吗?我从来没有使用过 Sqlite。

问候

4

1 回答 1

2

这是 Mysql 数据库的基本 application.ini 设置,

resources.db.adapter = "pdo_Mysql"
resources.db.params.username = "username"
resources.db.params.password = "password"
resources.db.params.dbname = "database name"
resources.db.params.charset = "utf8"
resources.db.isDefaultTableAdapter = true //optional but very helpful if you only have one db

Mysql 需要更多信息,然后是 SqlLite。

至于为本教程填充数据库,我只是采取了简单的方法并将 SQL 复制到 phpmyadmin 中。

注意:
如果您以前从未使用过 SqlLite,这可能是学习新东西的好机会。本教程真的不需要Mysql。:)

于 2012-11-28T09:45:43.150 回答