# Create Table If Not Exists - Fragen



## Papenburger (23. März 2007)

Hallo,

ich möchte gerne eine PHP-Installationsdatei erstellen. Das heißt das Script soll schauen ob die Dabelle schon existiert oder nicht. Falls nicht soll er die Anlegen.

Mein aktueller Stand:

```
include("data.php");

$sql1="CREATE TABLE IF NOT EXISTS `SV`
     (`id` int(255) NOT NULL auto_increment,
      `linkname` varchar(50) NOT NULL,
      `url` text NOT NULL,
      PRIMARY KEY  (`id`))
      ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=23";

$sql2="INSERT INTO `SV` (`id`, `linkname`, `url`) VALUES
       (1, 'Scan', 'scan.php'),
       (2, 'Report', 'report.php'),
       (3, 'Cronjob', 'cronjob.php')";
       
$sql=array($sql1, $sql2);
```


In der data.php wird die Verbindung zur Datenbank aufgebaut...
Wie muss ich nun Coden dass php diese Zeilen automatisch durchgeht und nachschaut bzw die Befehle ausführt?

Wer kann mir da helfen?


----------



## heliii (23. März 2007)

Hallo,

Mach das ganze doch mit IF > ELSE?

IF "Table" Exist 
{
insert into bla bla
}
else {
create table 
}


```
<?php 
// Verbindung zur mysql_datenbank 
$result = mysql_query("SELECT * FROM tabelle"); 
if($result) 
{ 
   //Tabelle existiert
 insert into befehle
} 
else 
{ 
   //tabelle gibts nicht
create table befehle
}
```
Grüsse,
Helium


----------



## tobias_petry (23. März 2007)

das select wird aber sofort schon zu einem mysql-fehler führen, ich würde da eher die mysql-funktionen zum status-check nutzen

papenburger, warum musst du das eigentlich überprüfen? ich bin der meinung das ist doch mit das sinnloseste was es gibt, eine tabelle wird einmal erstellt und dann genutzt


----------



## Papenburger (23. März 2007)

tobias_petry hat gesagt.:


> das select wird aber sofort schon zu einem mysql-fehler führen, ich würde da eher die mysql-funktionen zum status-check nutzen
> 
> papenburger, warum musst du das eigentlich überprüfen? ich bin der meinung das ist doch mit das sinnloseste was es gibt, eine tabelle wird einmal erstellt und dann genutzt



Diese leider nicht. Diehier wird mehrmals auf unterschiedlichen Serven erstellt...


----------

