类名称:
SMysql,数据库底层类
功能:
对Mysql进行封装,以提供对象化访问功能
使用说明:
禁止实例化,单例
依赖:
SConfig读取数据库配置
SDebug输出调试信息
instance()
单例方法
connect($alias, $mode = 'write')
根据表的别名,连接数据库
connectDatabase($connectInfo)
连接指定数据库
lock($tableName, $level)
对某个表进行锁定(默认写锁)
unlock($tableName)
解除表锁定
markField($str)
加上 MYSQL的字段定界符
markValue($value)
把值进行处理,并加上定界符
markValueArray(array $values)
将数组中的每一个值,加上定界符
createFields($fields = null)
标准化字段列表,可以是各种输入格式
createWhere($where = false)
生成WHERE子句
createHaving($having)
生成HAVING子句
createGroupby($groupBy)
生成 GROUP BY 子句
createOrderby($orderBy = null)
生成 ORDER BY 子句
createLimit($limit = null)
生成分页子句
createTableName($tableName)
检查表名是否合法,并规范化
getNameFromQuery($sql)
获取查询语句中的涉及表名
getNameFromExecute($sql)
获取执行语句中的涉及表名
escape($str)
内容转义,防注入
createExist($sub)
构造查看记录是否存在的SQL语句
createSelect($tableName, $fields, $where, $orderBy, $groupBy, $having, $limit)
构造 查询语句,以下参数不解释了
createDistinct($tableName, $fields, $where, $orderBy, $groupBy, $having, $limit)
构造 去重查询语句,以下参数不解释了
createInsert($tableName, array $fields, array$values)
根据表名,字段名数组,值数组构造Insert语句
createInserts($tableName, array $fields, array$rows)
根据表名,字段名数组,行数组,构造多行Insert语句
createInsertIgnore($tableName, array $fields, array$values)
根据表名,字段名列表,值列表,构造Insert Ignore语句
createReplace($tableName, array $fields, array$values)
根据表名,字段名列表,值列表构造Replace语句
createDelete($tableName, $where)
构造 删除语句
createUpdate($tableName, $set, $where)
根据表名,SET列表,条件,构造Update语句
createDesc($tableName)
构造 描述 语句
createShowTables()
构造 显示所有表的语句
createDatabaseInfo($database)
构造显示指定数据库所有表信息的语句
createTablesStatus($database)
构造 显示指定数据库所有表详细信息的语句
getCreate($tableName)
构造 显示 表结构的语句
createCrease($field, $op, $diff)
构造Increase/Decrease的SQL
createSet($field, $value)
构造Update语句中的赋值部分
createRow(array $row)
处理字段名值数组,名会加上定界符,值不会加定界符