您的位置:首页 > 编程语言 > PHP开发

建立数据库 --- yii打造自己的blog (四)

2010-04-04 12:01 260 查看
在前面的章节我们已经建立起了应用程序的骨架,也完成了数据库设计。在这章里,我们将会建立起我们的博客数据库,使其能和应用程序连接起来。

建立数据库

在这里我们选择使用SQLite数据库,因为这个是Yii所支持的基于PDO的数据库。同时,我们也可以在不对任何应用程序代码作修改的基础上把数据库替换成其他DBMS数据库 (例如:Mysql, POstgreSQL)。

首先我们在/wwwroot/blog/protected/data目录下建立我们的数据库文件blog.db。需要注意的是我们的网站服务器和SQLite需要对该目录有写权限。或者我们还可以直接从我们的Yii安装包中找到blog demo,把/wwwroot/yii/demos/blog/protected/data/blog.db文件拷贝过去。另外,我们也可以通过加载demo中的脚本文件:/wwwroot/yii/demos/blog/protected/data/schema.sqlite.sql,执行sql操作动态的生成数据库。

提示:我们可以在SQLite官方网站找到sqlite3命令行工具来执行SQL操作。

建立数据库连接

为了让我们的应用程序可以使用我们刚才建立的博客数据库, 我们需要对应用程序的配置文件(/wwwroot/blog/protected/config/main.php)作修改。这个脚本将返回一个名字-值对应的数组来初始化应用程序实例的属性。

如下所见,我们在components的属性中加入了一个新的db入口:

return array(
......
'components'=>array(
......
'db'=>array(
'class'=>'CDbConnection',
'connectionString'=>'sqlite:/wwwroot/blog/protected/data/blog.db',
),
),
......
);


上面的这段配置代码表示:我们配置一个名为db的应用程序数据库component,它调用了CDbConnection这个类,它的数据库连接字符串的属性被初始化为:sqlite:/wwwroot/blog/protected/data/blog.db。

通过这个配置, 我们可以在我们的代码中用Yii::app()->db来访问DB connection对象。注意:Yii::app()返回的是我们在入口文件中建立的应用程序实例。如果我们有兴趣了了解DB connection中更多的方法和属性, 我们可以参考手册。 然而,在大多数情况下,我们不需要直接去使用DB connection;我们将会使用ActiveRecord来访问数据库。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: