if(!$rs){
$rs = mysql_query("CREATE DATABASE `$dbname`",$conn)
if(!$rs){
$errstr = GetBackAlert("数据库 {$dbname} 不存在,也没权限创建新的数据库!")
echo $errstr
exit()
}else{
$rs = mysql_select_db($dbname,$conn)
if(!$rs){
$errstr = GetBackAlert("你对数据库 {$dbname} 没权限!")
echo $errstr
exit()
}else{
$ctStr = 'CREATE TABLE `wish` (
`id` int(11) NOT NULL auto_increment,
`pname` varchar(30) default NULL,
`pqq` varchar(10) default NULL,
`plocal` varchar(50) default NULL,
`pemail` varchar(30) default NULL,
`context` tinytext,
`addDate` datetime default NULL,
`biz1` varchar(250) default NULL,
`biz2` varchar(250) default NULL,
`biz3` varchar(250) default NULL,
`biz4` varchar(250) default NULL,
`biz5` varchar(250) default NULL,
`biz6` int(11) default NULL,
`biz7` int(11) default NULL,
`biz8` int(11) default NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=gbk'
mysql_query($ctStr,$conn)
}
}
你做好程序以后,把数据库导出成sql文件1、连接数据库
2、读取这个sql文件里的sql语句,并执行
3、生成一个数据库连接参数的php文件
<?php
$con = mysql_connect("localhost","peter","abc123")
if (!$con)
{
die('Could not connect: ' . mysql_error())
}
if (mysql_query("CREATE DATABASE my_db",$con))
{
echo "Database created"
}
else
{
echo "Error creating database: " . mysql_error()
}
mysql_close($con)
?>
<?php
class ReadSql {
//数据库连接
protected $connect = null
//数据库对象
protected $db = null
//sql文件
public $sqlFile = ""
//sql语句集
public $sqlArr = array()
public function __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) or die("Could not connect: " . mysql_error())
$this->db = mysql_select_db($db_name, $this->connect) or die("Yon can not select the table:" . mysql_error())
}
//导入sql文件
public function Import($url) {
$this->sqlFile = file_get_contents($url)
if (!$this->sqlFile) {
exit("打开文件错误")
} else {
$this->GetSqlArr()
if ($this->Runsql()) {
return true
}
}
}
//获取sql语句数组
public function GetSqlArr() {
//去除注释
$str = $this->sqlFile
$str = preg_replace('/--.*/i', '', $str)
$str = preg_replace('/\/\*.*\*\/(\)?/i', '', $str)
//去除空格 创建数组
$str = explode("\n", $str)
foreach ($str as $v) {
$v = trim($v)
if (empty($v)) {
continue
} else {
$this->sqlArr[] = $v
}
}
}
//执行sql文件
public function RunSql() {
foreach ($this->sqlArr as $k => $v) {
if (!mysql_query($v)) {
exit("sql语句错误:第" . $k . "行" . mysql_error())
}
}
return true
}
}
//范例:
header("Content-type:text/htmlcharset=utf-8")
$sql = new ReadSql("localhost", "root", "", "log_db")
$rst = $sql->Import("./log_db.sql")
if ($rst) {
echo "Success!"
}
?>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)