我是php的新人
我想动态创建数据库。我发现Doctrine 2 ORM可以从命令行创建db。但我有一些问题:
1.它可能不是在命令行而是在PHP代码中吗?无法找到任何例子
2.如果我在bootstrap.php中有数据库连接配置,我该如何动态创建数据库?
也许存在更好的方法来做到这一点,但我在Doctrine教程中观看并且它做了很多我想要使用它的好东西。
答案 0 :(得分:1)
是的,有可能。唯一需要的是你在php 中使用的数据库帐户有权创建数据库。
答案 1 :(得分:1)
您可以使用以下代码在PostgreSQL中创建数据库
CREATE DATABASE dbname
以下是在PostgreSQL中创建数据库的基本语法 ...
CREATE DATABASE name
[ [ WITH ] [ OWNER [=] user_name ]
[ TEMPLATE [=] template ]
[ ENCODING [=] encoding ]
[ LC_COLLATE [=] lc_collate ]
[ LC_CTYPE [=] lc_ctype ]
[ TABLESPACE [=] tablespace ]
[ CONNECTION LIMIT [=] connlimit ] ]
答案 2 :(得分:0)
假设您使用的数据库用户具有表创建权限,则只需提交相应的SQL查询即可。我使用PHP创建了一个日志表,每天写入一个新数据库以减少插入时间并允许轻松存档旧日志。
mysql_query(“CREATE TABLE IF NOT NOT EXISTS $table_name
(
id
int(11)NOT NULL auto_increment,
...
ENGINE = MyISAM DEFAULT CHARSET = latin1;“);
答案 3 :(得分:0)
这个php代码将在localhost上创建一个名为temp的数据库。用户应具有创建数据库的权限。 替换为您的db用户名和db密码。
<?php
$con=mysqli_connect("localhost",<user>,<password>);
$sql="CREATE DATABASE temp";
if (mysqli_query($con,$sql))
{
echo "Database created successfully";
}
else
{
echo "Error creating database: " . mysqli_error($con);
}
?>