使用php动态创建数据库

时间:2013-09-02 08:49:39

标签: php doctrine-orm

我是php的新人 我想动态创建数据库。我发现Doctrine 2 ORM可以从命令行创建db。但我有一些问题:
1.它可能不是在命令行而是在PHP代码中吗?无法找到任何例子 2.如果我在bootstrap.php中有数据库连接配置,我该如何动态创建数据库? 也许存在更好的方法来做到这一点,但我在Doctrine教程中观看并且它做了很多我想要使用它的好东西。

4 个答案:

答案 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 ] ]

阅读PostgreSQL: Create Database manual了解更多信息

答案 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);
}
?>