Avatar billede svelmoe Nybegynder
31. oktober 2007 - 16:28 Der er 11 kommentarer og
1 løsning

opret ny tabel i db fra site

hejsa, er det muligt at oprette en ny tabel med en sql streng fra et site?

jeg har en tabel som indeholder et projekt med en masse rækker.

hvis man vil påbegynde et nyt projekt, kan man så oprette en ny tabel direkte fra sitet?

eksport af "projekt 1":

CREATE TABLE `reg_db` (
  `id` int(11) NOT NULL auto_increment,
  `bygning` text NOT NULL,
  `etage` text NOT NULL,
  `rumnr` text NOT NULL,
  `longitude` text NOT NULL,
  `latitude` text NOT NULL,
  `furn` text NOT NULL,
  `type_besk` text NOT NULL,
  `specs` text NOT NULL,
  `producent` text NOT NULL,
  `benfarve` text NOT NULL,
  `model` text NOT NULL,
  `overflade` text NOT NULL,
  `traesort` text NOT NULL,
  `bredde` text NOT NULL,
  `dybde` text NOT NULL,
  `dyb_bredest` text NOT NULL,
  `dyb_small` text NOT NULL,
  `hoejde` text NOT NULL,
  `sokkel` text NOT NULL,
  `sidebord` text NOT NULL,
  `diameter` text NOT NULL,
  `pic` text NOT NULL,
  `thumb` text NOT NULL,
  `kommentar` text NOT NULL,
  `projekt` text NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=40 ;


kan man lave så CREATE TABLE `reg_db` bliver til CREATE TABLE `$projekt`

og en db connect der kan skifte imellem?

mysql_connect("localhost", "xxxx", "xxxx");
mysql_select_db("$projekt");

på forhånd tak
Avatar billede arne_v Ekspert
01. november 2007 - 01:09 #1
mysql_query kan godt udføre CREATE TABLE sætninger.
Avatar billede svelmoe Nybegynder
01. november 2007 - 12:29 #2
hvordan placere jeg den så i en specifik db?

CREATE TABLE `reg_db` IN db noget?
Avatar billede arne_v Ekspert
01. november 2007 - 14:11 #3
mysql_select_db("$projekt");

selecter db.
Avatar billede svelmoe Nybegynder
02. november 2007 - 09:22 #4
kode:

<?php

if(isset($_POST['submit'])) {

mysql_connect("localhost", "moveon", "moveon");
mysql_select_db("moveon");

$opretdb = $_GET[opretdb];

mysql_query("CREATE TABLE $opretdb (`id` int(11) NOT NULL auto_increment, `bygning` text NOT NULL, `etage` text NOT NULL, `rumnr` text NOT NULL, `longitude` text NOT NULL, `latitude` text NOT NULL, `furn` text NOT NULL, `type_besk` text NOT NULL, `specs` text NOT NULL, `producent` text NOT NULL, `benfarve` text NOT NULL, `model` text NOT NULL, `overflade` text NOT NULL, `traesort` text NOT NULL, `bredde` text NOT NULL, `dybde` text NOT NULL, `dyb_bredest` text NOT NULL, `dyb_small` text NOT NULL, `hoejde` text NOT NULL, `sokkel` text NOT NULL, `sidebord` text NOT NULL, `diameter` text NOT NULL, `pic` text NOT NULL, `thumb` text NOT NULL,  `kommentar` text NOT NULL, `projekt` text NOT NULL, PRIMARY KEY  (`id`)) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=40")or die("MySQL ERROR: ".mysql_error());

}
?>


<form id="opretdb" name="opretdb" method="post" action="">

  <input type="text" name="opretdb" id="opretdb" />

  <input type="submit" name="submit" id="submit" value="opret" />

</form>

giver:
MySQL ERROR: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(id int(11) NOT NULL auto_increment, `bygning` text NOT NULL, `etage` text NOT N' at line 1
Avatar billede arne_v Ekspert
05. november 2007 - 01:10 #5
Check om $opretdb indeholder det rigtige.
Avatar billede svelmoe Nybegynder
05. november 2007 - 09:42 #6
$opretdb skal jo indeholde det nye navn på den nye db der ikke er oprettet endnu
Avatar billede arne_v Ekspert
06. november 2007 - 04:52 #7
ja

men gør den ?
Avatar billede svelmoe Nybegynder
06. november 2007 - 11:20 #8
har fået det til at virke... tak
Avatar billede svelmoe Nybegynder
06. november 2007 - 14:32 #9
har dog lige et sidste spm...

når jeg har oprettet en ny, og skal indsætte i den første gang, starter den på id 40?

det er en autoincrement celle og den burde starte/skal starte på 1
Avatar billede pidgeot Nybegynder
06. november 2007 - 14:33 #10
Fjern AUTO_INCREMENT=40 fra din CREATE sætning. Det tal angiver hvor den starter.

(Arne, du får bare hele baduljen - jeg går igen :))
Avatar billede svelmoe Nybegynder
06. november 2007 - 14:36 #11
ahh, burde jeg have set :D

men mange tak.. ja bare smid et svar
Avatar billede arne_v Ekspert
06. november 2007 - 15:33 #12
ok
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester