mysql操作类_PHP教程
/**
* 数据库操作类
* 2011/8/25
* kcj
* */
class MyDB {
private $db_host; //数据库主机名
private $db_user; //数据库用户名
private $db_pwd; //数据库密码
private $db_database; //数据库名
private $conn; //连接标识
private $result; //执行query命令的结果资源标识
private $row; //返回的条目数
private $sql; //sql执行语句
private $coding; //数据库编码
private $bulletin=true; // 是否开启错误记录
private $show_error=false; //测试阶段,显示所有错误,具有安全隐患,默认关闭
private $is_error=false; //发现错误是否立即终止,默认true,建议不启用,因为当有问题时用户什么也看不到是很苦恼的
//构造函数
function __construct($db_host,$db_user,$db_pwd,$db_database,$conn,$doding){
$this->db_host=$db_host;
$this->db_user=$db_user;
$this->db_pwd=$db_pwd;
$this->db_database=$db_database;
$this->conn=$conn;
$this->coding=$coding;
$this->connect();
}
//数据库连接
public function connect(){
if($this->conn=="pconn"){
//永久连接
$this->conn=mysql_pconnect($this->db_host,$this->db_user,$this->db_pwd);
}else{
//即使连接
$this->conn=mysql_connect($this->db_host,$this->db_user,$this->db_pwd);
}
if(!mysql_select_db($this->db_database,$this->conn)){
if($this->show_error){
$this->show_error("数据库不可用:",$this->db_database);
}
}
}
//数据库执行语句,可执行查询添加修改删除等任何sql语句
public function query($sql){
if($sql==""){
$this->show_error("sql语句错误:","sql语句为空");
}
$this->sql=$sql;
$result=mysql_query($this->sql,$this->conn);
if(!$result){
if($this->show_error){
$this->show_error("错误sql语句:",$this->sql);
}
}else {
$this->result;
}
return $result;
}
//创建添加新的数据库
public function create_database($database_name){
$database=$database_name;
$sqlDatabase='create database'.$database;
$this->query($sqlDatabase);
}
//查询服务器所有数据库
//将系统数据库与用户分开,更直观的显示
public function show_database(){
$this->query("show databases");
echo "现在有的数据库:".$amount=$this->db_num_rows($rs);
echo "
";
$i=1;
while ($row=$this->fetch_array($rs)){
echo "$i $row[Database]";
echo "
";
$i++;
}
}
//以数组的形式返回主机中所有的数据库名
public function databases(){
$rsPtr=mysql_list_dbs($this->conn);
$i=0;
$cnt=mysql_num_rows($rsPtr);
while ($i
$rs[]=mysql_db_name($rsPtr,$i);
$i++;
}
return $rs;
}
//查询数据库下所有的表
public function show_tables($database_name){
$this->query("show tables");
echo "现有数据库:".$amount=$this->db_num_rows($rs);
echo "
";
$i=1;
while ($row=$this->fetch_array($rs)){
$columnName="Tables_in_".$database_name;
echo "$i $row[$columnName]";
echo "
";
$i++;
}
}
// 取得结果集
public function fetch_array($resultt=""){
if($resultt!=""){
return mysql_fetch_array($resultt);
}else {
return mysql_fetch_array($this->result);
}
}
//取得结果数 $row['content']
public function mysql_result_li(){
return mysql_result($str);
}
//获取关联数组 $row['字段名']
public function fetch_assoc(){
return mysql_fetch_assoc($this->result);
}
//获取数字索引数组 $row[0] $row[1] $row[2]
public function fetch_row(){
return mysql_fetch_row($this->result);
}
//获取对象数组,使用$row->content
public function fetch_Object(){
return mysql_fetch_object($this->result);
}
//简化查询select
public function findall($table){
$this->query("select* from $table");
}
//简化查询select
public function select($table,$columnName="*",$condition='',$debug=''){
$condition=$condition?'where'.$condition:null;
if($debug){
echo "select $columnName from $table $condition";
}else{
$this->query("select $columnName from $table $condition");
}
}
//简化删除del
public function delete($table,$condition,$url=''){
if($this->query("delete from $table where $condition")){
if(!emptyempty($url)){
$this->Get_admin_msg($url,'删除成功');
}
}
}
//简化插入insert
public function insert($table,$columnName,$value,$url=''){
if($this->query("insert into $table ($columnName) values ($value)")){
if(!emptyempty($url)){
$this->Get_admin_msg($url,'添加成功');
}
}
}
//简化更新update
public function update($table,$mod_content,$condition,$url=''){
if($this->query("update $table set $mod_content where $condition")){
if(!emptyempty($url)){
$this->Get_admin_msg($url);
}
}
}
//取得上一步insert操作的id
public function insert_id(){
return mysql_insert_id();
}
//指向确定的一条数据记录
public function db_data_seek($id){
if($id>0){
$id=$id-1;
}
if(!@mysql_data_seek($this->result,$id)){
$this->show_error("sql语句有误:","指定的数据为空");
}
return $this->result;
}
//根据select查询结果计算结果集条数
public function db_num_rows(){
if($this->result=null){
if($this->show_error){
$this->show_error("sql语句错误:","暂时为空,没有任何内容");
}
}else{
return mysql_num_rows($this->result);
}
}
//根据insert update delete执行的结果驱动影响行数
public function db_affected_rows(){
return mysql_affected_rows();
}
//输出显示sql语句
public function show_error($message="",$sql=""){
if(!$sql){
echo "" . $message . "";
echo "
";
}else{
echo "
echo "
";
}
//释放结果集
public function free(){
@mysql_free_result($this->result);
}
//数据库选择
public function select_db($db_database){
return mysql_select_db($db_database);
}
//查询字段数量
public function num_fields($table_name){
$this->query("select * from $table_name");
echo "
";
echo "字段数:".$total=mysql_num_fields($this->result);
for ($i=0;$i print_r(mysql_fetch_field($this->result,$i));
}
echo "";
echo "
";
}
//取得mysql 服务器信息
public function mysql_server($num=''){
switch ($num){
case 1:
return mysql_get_server_info();
break;
case 2:
return mysql_get_host_info();
break;
case 3:
return mysql_get_client_info();
break;
case 4:
return mysql_get_proto_info();
break;
default:
return mysql_get_client_info();
}
}
public function __destruct(){
if(!emptyempty($this->result)){
$this->free();
}
mysql_close($this->conn);
}
//获得客户端真实的ID地址
function getip() {
if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown")) {
$ip = getenv("HTTP_CLIENT_IP");
} else
if (getenv("HTTP_X_FORWARDED_FOR") &&strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown")) {
$ip = getenv("HTTP_X_FORWARDED_FOR");
} else
if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown")) {
$ip = getenv("REMOTE_ADDR");
} else
if (isset ($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] &&strcasecmp($_SERVER['REMOTE_ADDR'], "unknown")) {
$ip = $_SERVER['REMOTE_ADDR'];
} else {
$ip = "unknown";
}
return ($ip);
}
}
?>
/**
* 数据库操作类
* 2011/8/25
* kcj
* */
class MyDB {
private $db_host; //数据库主机名
private $db_user; //数据库用户名
private $db_pwd; //数据库密码
private $db_database; //数据库名
private $conn; //连接标识
private $result; //执行query命令的结果资源标识
private $row; //返回的条目数
private $sql; //sql执行语句
private $coding; //数据库编码
private $bulletin=true; // 是否开启错误记录
private $show_error=false; //测试阶段,显示所有错误,具有安全隐患,默认关闭
private $is_error=false; //发现错误是否立即终止,默认true,建议不启用,因为当有问题时用户什么也看不到是很苦恼的
//构造函数
function __construct($db_host,$db_user,$db_pwd,$db_database,$conn,$doding){
$this->db_host=$db_host;
$this->db_user=$db_user;
$this->db_pwd=$db_pwd;
$this->db_database=$db_database;
$this->conn=$conn;
$this->coding=$coding;
$this->connect();
}
//数据库连接
public function connect(){
if($this->conn=="pconn"){
//永久连接
$this->conn=mysql_pconnect($this->db_host,$this->db_user,$this->db_pwd);
}else{
//即使连接
$this->conn=mysql_connect($this->db_host,$this->db_user,$this->db_pwd);
}
if(!mysql_select_db($this->db_database,$this->conn)){
if($this->show_error){
$this->show_error("数据库不可用:",$this->db_database);
}
}
}
//数据库执行语句,可执行查询添加修改删除等任何sql语句
public function query($sql){
if($sql==""){
$this->show_error("sql语句错误:","sql语句为空");
}
$this->sql=$sql;
$result=mysql_query($this->sql,$this->conn);
if(!$result){
if($this->show_error){
$this->show_error("错误sql语句:",$this->sql);
}
}else {
$this->result;
}
return $result;
}
//创建添加新的数据库
public function create_database($database_name){
$database=$database_name;
$sqlDatabase='create database'.$database;
$this->query($sqlDatabase);
}
//查询服务器所有数据库
//将系统数据库与用户分开,更直观的显示
public function show_database(){
$this->query("show databases");
echo "现在有的数据库:".$amount=$this->db_num_rows($rs);
echo "
";
$i=1;
while ($row=$this->fetch_array($rs)){
echo "$i $row[Database]";
echo "
";
$i++;
}
}
//以数组的形式返回主机中所有的数据库名
public function databases(){
$rsPtr=mysql_list_dbs($this->conn);
$i=0;
$cnt=mysql_num_rows($rsPtr);
while ($i $rs[]=mysql_db_name($rsPtr,$i);
$i++;
}
return $rs;
}
//查询数据库下所有的表
public function show_tables($database_name){
$this->query("show tables");
echo "现有数据库:".$amount=$this->db_num_rows($rs);
echo "
";
$i=1;
while ($row=$this->fetch_array($rs)){
$columnName="Tables_in_".$database_name;
echo "$i $row[$columnName]";
echo "
";
$i++;
}
}
// 取得结果集
public function fetch_array($resultt=""){
if($resultt!=""){
return mysql_fetch_array($resultt);
}else {
return mysql_fetch_array($this->result);
}
}
//取得结果数 $row['content']
public function mysql_result_li(){
return mysql_result($str);
}
//获取关联数组 $row['字段名']
public function fetch_assoc(){
return mysql_fetch_assoc($this->result);
}
//获取数字索引数组 $row[0] $row[1] $row[2]
public function fetch_row(){
return mysql_fetch_row($this->result);
}
//获取对象数组,使用$row->content
public function fetch_Object(){
return mysql_fetch_object($this->result);
}
//简化查询select
public function findall($table){
$this->query("select* from $table");
}
//简化查询select
public function select($table,$columnName="*",$condition='',$debug=''){
$condition=$condition?'where'.$condition:null;
if($debug){
echo "select $columnName from $table $condition";
}else{
$this->query("select $columnName from $table $condition");
}
}
//简化删除del
public function delete($table,$condition,$url=''){
if($this->query("delete from $table where $condition")){
if(!empty($url)){
$this->Get_admin_msg($url,'删除成功');
}
}
}
//简化插入insert
public function insert($table,$columnName,$value,$url=''){
if($this->query("insert into $table ($columnName) values ($value)")){
if(!empty($url)){
$this->Get_admin_msg($url,'添加成功');
}
}
}
//简化更新update
public function update($table,$mod_content,$condition,$url=''){
if($this->query("update $table set $mod_content where $condition")){
if(!empty($url)){
$this->Get_admin_msg($url);
}
}
}
//取得上一步insert操作的id
public function insert_id(){
return mysql_insert_id();
}
//指向确定的一条数据记录
public function db_data_seek($id){
if($id>0){
$id=$id-1;
}
if(!@mysql_data_seek($this->result,$id)){
$this->show_error("sql语句有误:","指定的数据为空");
}
return $this->result;
}
//根据select查询结果计算结果集条数
public function db_num_rows(){
if($this->result=null){
if($this->show_error){
$this->show_error("sql语句错误:","暂时为空,没有任何内容");
}
}else{
return mysql_num_rows($this->result);
}
}
//根据insert update delete执行的结果驱动影响行数
public function db_affected_rows(){
return mysql_affected_rows();
}
//输出显示sql语句
public function show_error($message="",$sql=""){
if(!$sql){
echo "" . $message . "";
echo "
";
}else{
echo "";
echo "
";
}
//释放结果集
public function free(){
@mysql_free_result($this->result);
}
//数据库选择
public function select_db($db_database){
return mysql_select_db($db_database);
}
//查询字段数量
public function num_fields($table_name){
$this->query("select * from $table_name");
echo "
";
echo "字段数:".$total=mysql_num_fields($this->result);
for ($i=0;$i print_r(mysql_fetch_field($this->result,$i));
}
echo "";
echo "
";
}
//取得mysql 服务器信息
public function mysql_server($num=''){
switch ($num){
case 1:
return mysql_get_server_info();
break;
case 2:
return mysql_get_host_info();
break;
case 3:
return mysql_get_client_info();
break;
case 4:
return mysql_get_proto_info();
break;
default:
return mysql_get_client_info();
}
}
public function __destruct(){
if(!empty($this->result)){
$this->free();
}
mysql_close($this->conn);
}
//获得客户端真实的ID地址
function getip() {
if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown")) {
$ip = getenv("HTTP_CLIENT_IP");
} else
if (getenv("HTTP_X_FORWARDED_FOR") &&strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown")) {
$ip = getenv("HTTP_X_FORWARDED_FOR");
} else
if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown")) {
$ip = getenv("REMOTE_ADDR");
} else
if (isset ($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] &&strcasecmp($_SERVER['REMOTE_ADDR'], "unknown")) {
$ip = $_SERVER['REMOTE_ADDR'];
} else {
$ip = "unknown";
}
return ($ip);
}
}
?>
摘自 chaojie2009的专栏

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

MySQL 및 Phpmyadmin은 강력한 데이터베이스 관리 도구입니다. 1) MySQL은 데이터베이스 및 테이블을 작성하고 DML 및 SQL 쿼리를 실행하는 데 사용됩니다. 2) PHPMYADMIN은 데이터베이스 관리, 테이블 구조 관리, 데이터 운영 및 사용자 권한 관리에 직관적 인 인터페이스를 제공합니다.

Oracle은 데이터베이스 회사 일뿐 만 아니라 클라우드 컴퓨팅 및 ERP 시스템의 리더이기도합니다. 1. Oracle은 데이터베이스에서 클라우드 서비스 및 ERP 시스템에 이르기까지 포괄적 인 솔루션을 제공합니다. 2. OracleCloud는 AWS와 Azure에 도전하여 IAA, PAAS 및 SAAS 서비스를 제공합니다. 3. E-BusinessSuite 및 FusionApplications와 같은 Oracle의 ERP 시스템은 기업이 운영을 최적화하는 데 도움이됩니다.

IIS 및 PHP는 호환 가능하며 FastCGI를 통해 구현됩니다. 1. IIS 구성 파일을 통해 .php 파일 요청을 FastCGI 모듈로 전달합니다. 2. FASTCGI 모듈은 PHP 프로세스를 시작하여 요청을 처리하여 성능과 안정성을 향상시킵니다. 3. 실제 응용 프로그램에서는 구성 세부 사항, 오류 디버깅 및 성능 최적화에주의를 기울여야합니다.

MySQL에서 외국 키의 기능은 테이블 간의 관계를 설정하고 데이터의 일관성과 무결성을 보장하는 것입니다. 외국 키는 참조 무결성 검사 및 계단식 작업을 통해 데이터의 효과를 유지합니다. 성능 최적화에주의를 기울이고 사용할 때 일반적인 오류를 피하십시오.

프론트 엔드 개발에서 JSON의 기능과 정규 표현식을 안전하게 처리하면 JavaScript가 종종 필요합니다 ...

MySQL과 Mariadb의 주요 차이점은 성능, 기능 및 라이센스입니다. 1. MySQL은 Oracle에 의해 개발되었으며 Mariadb는 포크입니다. 2. MariaDB는 높은 하중 환경에서 더 나은 성능을 발휘할 수 있습니다. 3. Mariadb는 더 많은 스토리지 엔진과 기능을 제공합니다. 4.MySQL은 듀얼 라이센스를 채택하고 MariaDB는 완전히 오픈 소스입니다. 선택할 때 기존 인프라, 성능 요구 사항, 기능 요구 사항 및 라이센스 비용을 고려해야합니다.

SQL은 관계형 데이터베이스를 관리하는 표준 언어이며 MySQL은 SQL을 사용하는 데이터베이스 관리 시스템입니다. SQL은 CRUD 작업을 포함한 데이터베이스와 상호 작용하는 방법을 정의하는 반면 MySQL은 SQL 표준을 구현하고 저장 프로 시저 및 트리거와 같은 추가 기능을 제공합니다.

Redis는 주로 데이터베이스, 캐시 및 메시지 중개인으로 사용되는 메모리 데이터 구조 스토리지 시스템입니다. 핵심 기능에는 단일 스레드 모델, I/O 멀티플렉싱, 지속 메커니즘, 복제 및 클러스터링 기능이 포함됩니다. Redis는 일반적으로 캐싱, 세션 저장 및 메시지 대기열을위한 실제 응용 프로그램에 사용됩니다. 올바른 데이터 구조를 선택하고 파이프 라인 및 트랜잭션을 사용하여 모니터링 및 튜닝을 통해 성능을 크게 향상시킬 수 있습니다.
