MySQL Master/Slave数据库读写操作类
数据库操作类:DBCommon.class.php
//---------------------------------------------------------------------
// MySQL Master/Slave数据库读写操作类
//
// 开发作者: heiyeluren
// 版本历史:
// 2006-09-20 基本单数据库操作功能, 25 个接口
// 2007-07-30 支持单Master/多Slave数据库操作,29个接口
// 2008-09-07 修正了上一版本的部分Bug
// 2009-11-17 在Master/Slave类的基础上增加了强化单主机操作,
// 增加了部分简洁操作接口和调试接口,优化了部分代码,
// 本版本共42个接口
// 应用项目: Y!NCP, Y!SNS, TM MiniSite//
// 功能描述:自动支持Master/Slave 读/写 分离操作,支持多Slave主机
//
//-----------------------------------------------------------------------
/**
* 常量定义
*/
define("_DB_INSERT", 1);
define("_DB_UPDATE", 2);
/**
* DB Common class
*
* 描述:能够分别处理一台Master写操作,多台Slave读操作
*/
class DBCommon
{
/**
* 数据库配置信息
*/
var $wdbConf = array();
var $rdbConf = array();
/**
* Master数据库连接
*/
var $wdbConn = null;
/**
* Slave数据库连接
*/
var $rdbConn = array();
/**
* 当前操作的数据库链接
*/
var $currConn = null;
/**
* 是否只有一台Master数据库服务器
*/
var $singleHost = true;
/**
* 数据库结果
*/
var $dbResult;
/**
* 数据库查询结果集
*/
var $dbRecord;
/**
* SQL语句
*/
var $dbSql;
/**
* 数据库编码
*/
var $dbCharset = "UTF8";
/**
* 数据库版本
*/
var $dbVersion = "5.0";
/**
* 初始化的时候是否要连接到数据库
*/
var $isInitConn = false;
相关文档:
像MySQL这样的关系型数据库管理系统,它们的基础是在数据库的表之间创建关系的能力。通过方便地在不同表中建立记录到记录的联系,RDBMS可以利用不同的方法分析数据,同时保持数据库以系统的方式、最小的冗余进行组织。
简单描述:
这些关系基本上依靠外键进行管理,在关系中所有表中具有相同含义的字段作为公共部分来连接 ......
今天在数据库中插入了中文,发现有的是乱码,有的不是,很是纳闷。
最后找到了解决办法:
打开 /etc/mysql/my.cnf
在[mysqld]和[client]节下分别添加:
default-character-set = utf8
然后重新启动mysql,需要注意的是,对修改以前创建的数据库来说,他的字符集还是原来的,所以还是会出现乱马,而新创建的数据 ......
Class.forName("com.mySQL.jdbc.Driver");
String strUrl="jdbc:mysql://localhost:3306/stu?useUnicode=true&characterEncoding=GB2312";
String strUser="nuey";
String strPassword="password";
Connection conn=DriverManager.getCon ......
MySQL服务器包含一些其他SQL DBMS中不具备的扩展。注意,如果使用了它们,将无法把代码移植到其他SQL服务器。在某些情况下,你可以编写包含MySQL扩展的代码,但仍保持其可移植性,方法是用“/*... */”注释掉这些扩展。MySQL服务器能够解析并执行注释中的代码,就像对待其他MySQL语句一样,但其他SQL服务器将忽略 ......