2023-02-16
你做好程序以后,把数据库导出成sql文件
1、连接数据库
2、读取这个sql文件里的sql语句,并执行
3、生成一个数据库连接参数的php文件
<?php
$con=mysql_connect(\"localhost\",\"peter\",\"abc123\");
if(!$con)
die('Couldnotconnect:'.mysql_error());
if(mysql_query(\"CREATEDATABASEmy_db\",$con))
echo\"Databasecreated\";
else
echo\"Errorcreatingdatabase:\".mysql_error();
mysql_close($con);
?>
<?php
classReadSql{
//数据库连接
protected$connect=null;
//数据库对象
protected$db=null;
//sql文件
public$sqlFile=\"\";
//sql语句集
public$sqlArr=array();
publicfunction__construct($host,$user,$pw,$db_name){
$host=empty($host)?C(\"DB_HOST\"):$host;
$user=empty($user)?C(\"DB_USER\"):$user;
$pw=empty($pw)?C(\"DB_PWD\"):$pw;
$db_name=empty($db_name)?C(\"DB_NAME\"):$db_name;
//连接数据库
$this->connect=mysql_connect($host,$user,$pw)ordie(\"Couldnotconnect:\".mysql_error());
$this->db=mysql_select_db($db_name,$this->connect)ordie(\"Yoncannotselectthetable:\".mysql_error());
//导入sql文件
publicfunctionImport($url){
$this->sqlFile=file_get_contents($url);
if(!$this->sqlFile){
exit(\"打开文件错误\");
}else{
$this->GetSqlArr();
if($this->Runsql()){
returntrue;
//获取sql语句数组
publicfunctionGetSqlArr(){
//去除注释
$str=$this->sqlFile;
$str=preg_replace('/--.*/i','',$str);
$str=preg_replace('/\\/\\*.*\\*\\/(\\;)?/i','',$str);
//去除空格创建数组
$str=explode(\";\\n\",$str);
foreach($stras$v){
$v=trim($v);
if(empty($v)){
continue;
}else{
$this->sqlArr[]=$v;
//执行sql文件
publicfunctionRunSql(){
foreach($this->sqlArras$k=>$v){
if(!mysql_query($v)){
exit(\"sql语句错误:第\".$k.\"行\".mysql_error());
returntrue;
//范例:
header(\"Content-type:text/html;charset=utf-8\");
$sql=newReadSql(\"localhost\",\"root\",\"\",\"log_db\");
$rst=$sql->Import(\"./log_db.sql\");
if($rst){
echo\"Success!\";
?>
热门阅读
2023-02-16
2023-02-04
2023-02-12
2023-01-21
2023-01-31
2023-02-09
2023-01-25
2023-02-02