使用 PHP脚本 创建数据库
PHP 使用 mysqli_query 函数来创建或者删除 MySQL 数据库。
该函数有两个参数,在执行成功时返回 TRUE,否则返回 FALSE。
语法
mysqli_query(connection,query,resultmode);
以下实例演示了使用PHP来创建一个数据库:
';
$sql = 'CREATE DATABASE MSLDBAliSys';
$retval = mysqli_query($conn,$sql );
if(! $retval )
{
die('创建数据库失败: ' . mysqli_error($conn));
}
echo "数据库 test 创建成功\n";
mysqli_close($conn);
?>
同样可以使用 PHP 的 mysqli_query() 函数来创建已存在数据库的数据表。
该函数有两个参数,在执行成功时返回 TRUE,否则返回 FALSE。
下面的代码是使用了PHP脚本来创建数据表:
';
$sql = "CREATE TABLE test_tbl( ".
"test_id INT NOT NULL AUTO_INCREMENT, ".
"test_title VARCHAR(100) NOT NULL, ".
"test_author VARCHAR(40) NOT NULL, ".
"submission_date DATE, ".
"PRIMARY KEY ( test_id ))ENGINE=InnoDB DEFAULT CHARSET=utf8; ";
mysqli_select_db( $conn, 'MSLDBAliSys' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
die('数据表创建失败: ' . mysqli_error($conn));
}
echo "数据表创建成功\n";
mysqli_close($conn);
?>
';
// 设置编码,防止中文乱码
mysqli_query($conn , "set names utf8");
$test_title = '学习 Python';
$test_author = 'MSLDBAliSys';
$submission_date = '2023-01-27';
$sql = "INSERT INTO test_tbl ".
"(test_title,test_author, submission_date) ".
"VALUES ".
"('$test_title','$test_author','$submission_date')";
mysqli_select_db( $conn, 'MSLDBAliSys' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
die('无法插入数据: ' . mysqli_error($conn));
}
echo "数据插入成功\n";
mysqli_close($conn);
?>
mysqli_fetch_array 测试';
echo '教程 ID 标题 作者 提交日期 ';
while($row = mysqli_fetch_array($retval, MYSQLI_ASSOC))
{
echo " {$row['test_id']} ".
"{$row['test_title']} ".
"{$row['test_author']} ".
"{$row['submission_date']} ".
" ";
}
echo '
';
mysqli_close($conn);
?>
在一定情况下,您需要创建许多表首先最好先创建一个文本文件,把所有的 SQL 命令写到文本文件中,然后执行这些命令将该文件导入到 mysq 数据库中。
考虑以下内容 sql_query.txt 文件
CREATE TABLE test_tb3(
test_id INT NOT NULL AUTO_INCREMENT,
test_title VARCHAR(100) NOT NULL,
test_author VARCHAR(40) NOT NULL,
submission_date DATE,
PRIMARY KEY ( test_id ))ENGINE=InnoDB DEFAULT CHARSET=utf8;
';
$query_file = 'sql_query.txt';
$fp = fopen($query_file, 'r');
$sql = fread($fp, filesize($query_file));
fclose($fp);
/*
$sql = "CREATE TABLE test_tbl( ".
"test_id INT NOT NULL AUTO_INCREMENT, ".
"test_title VARCHAR(100) NOT NULL, ".
"test_author VARCHAR(40) NOT NULL, ".
"submission_date DATE, ".
"PRIMARY KEY ( test_id ))ENGINE=InnoDB DEFAULT CHARSET=utf8; ";
*/
mysqli_select_db( $conn, 'MSLDBAliSys' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
die('数据表创建失败: ' . mysqli_error($conn));
}
echo "数据表创建成功\n";
mysqli_close($conn);
?>
--linkedserver查询语句 利用OPENQUERY访问 更新2023.12.09 11:30
-- MYSQLTEST为链接服务器名称
-- 里面的select需要使用''引起来,并且如果寻找where条件的字符还需要再添加一次引号
--查询远程表
SELECT* FROM OPENQUERY (MYSQLTEST ,'select * from test_tb3')