如何在列不存在时动态创建表并更改表

时间:2013-12-19 06:43:48

标签: php mysql

enter
<?php $dob=$_SESSION['dob']; 
 $month=$_SESSION['month'];
 $exists = false;
 $columns = mysql_query("show columns from $month");
 while($c = mysql_fetch_assoc($columns)){
  if($c['Field'] == $dob){
   $exists = true;
   break;
  }
 }     
 if(!$exists){
  mysql_query("ALTER TABLE `$month`  ADD  `$dob` varchar(100) default absent");
 }
 $roll=$_SESSION['var'];
 foreach( $roll as $value=>$roll) {
  $name = mysql_real_escape_string ($roll);
  $sql="insert into $month (roll) values ('$name')";
  mysql_query($sql)or die(mysql_error());
 }
?>

问: - 如何在mysql php中创建表和alter table?

4 个答案:

答案 0 :(得分:0)

创建表格:

CREATE TABLE `tableName` (
 ... Columns ...
);

答案 1 :(得分:0)

创建表格:

 CREATE TABLE <tablename> (<column_name <data_type>(length if_required), .... );

更改表格:

 ALTER TABLE <tablename> ADD <newcolumnname> <data_type>(length if_required);
 ALTER TABLE <tablename>  DROP <columnname>;
 ALTER TABLE <tablename> MODIFY <columnname> <data_type>(length if_required);

更新表:

 UPDATE <tablename> SET <columnname> = <value> WHERE(if_required) <condition>;

答案 2 :(得分:0)

也许你需要this?此ORM库允许您在航班上开发数据库架构。更多here

答案 3 :(得分:0)

或许你需要所谓的PHP代码第一风格ORM库?我知道一个,但它根据你的类定义创建/修改/改变表:

例如,如果你有:

class user
{
   public $id;
   public $name;
}

Bu默认情况下,它将创建具有字段ID和名称的表用户。此框架还使用doc注释完全控制字段属性和表属性。它被称为db.php(http://db.php)。