Avatar billede nickydk Nybegynder
30. november 2004 - 08:34 Der er 26 kommentarer

hiv data ud og indsætte i anden database struktur?

Hey alle...

Jeg har en database der hedder forummer, hvori der ligger nogle forskellige felter osv...

Når jeg så skal have dem over i en helt helt anden database struktur, hvordan gør jeg dette?

På forhånd tak
Avatar billede nickydk Nybegynder
30. november 2004 - 09:05 #1
any1???? plzz
Avatar billede michael_stim Ekspert
30. november 2004 - 09:07 #2
Det er vel bare at lave en SELECT, og så en INSERT med de data du hiver ud.
Hvis jeg har forstået det korrekt.
Avatar billede nickydk Nybegynder
30. november 2004 - 09:26 #3
altså sådan jeg skriver fx:

$sql = mysql_query("SELECT FORUMMESSAGE from MINDATABASE ". "WHERE FORUM_ID, AUTHORNAME, AUTHOREMAIL);

$sql2 = mysql_query("INSERT INTO forum_entries WHERE user_id, name, email);

Er det korrekt?
Avatar billede nickydk Nybegynder
30. november 2004 - 09:43 #4
???? any1 ????
Avatar billede michael_stim Ekspert
30. november 2004 - 09:45 #5
Ikke helt.
$sql = mysql_query("SELECT * from MINDATABASE WHERE FORUM_ID = $etId)or die(mysql_error());
$result=mysql_query($sql);
$row = mysql_fetch_array($result);
$data1 = $row['data1'];
$data2 = $row['data2'];
$data3 = $row['data3'];
$sql2 = mysql_query("INSERT INTO forum_entries (felt1, felt2, felt3) VALUES('$data1', '$data2', '$data3')")or die(mysql_error());
$result2=mysql_query($sql2);
Noget á la dette
Avatar billede nickydk Nybegynder
30. november 2004 - 10:06 #6
Får denne fejlmeddelse nu :

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in d:\webs\framemakers\www\forum\selectandsinsert.php on line 8

min kode er:

<?
require('config.php');
//Vælger databasen
mysql_select_db($database, $db);

$sql = mysql_query('SELECT * from T_FORUMMESSAGE WHERE FORUM_ID = 1')or die(mysql_error());
$result = @mysql_query($sql);
$row = mysql_fetch_array($result);
$data1 = $row['data1'];
$sql2 = mysql_query("INSERT INTO forum_entries (user_id) VALUES('$user_id')")or die(mysql_error());
$result2=mysql_query($sql2);
?>
Avatar billede michael_stim Ekspert
30. november 2004 - 10:10 #7
<?
require('config.php');
//Vælger databasen
mysql_select_db($database, $db);

$sql = mysql_query('SELECT * from T_FORUMMESSAGE WHERE FORUM_ID = 1')or die(mysql_error());
$result = @mysql_query($sql);
$row = mysql_fetch_array($result);
$data1 = $row['FeltetsNavn'];
$sql2 = mysql_query("INSERT INTO forum_entries (user_id) VALUES($data1)")or die(mysql_error());
$result2=mysql_query($sql2);
?>
Avatar billede michael_stim Ekspert
30. november 2004 - 10:12 #8
$data1 = $row['FeltetsNavn'];//Navnet på det felt dataen kommer fra (formodentlig FORUM_ID)
Avatar billede michael_stim Ekspert
30. november 2004 - 10:13 #9
$result = mysql_query($sql); //Og väk med at-tegnet
Avatar billede nickydk Nybegynder
30. november 2004 - 10:17 #10
Får stadig fejlen + 1 mere...???

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in d:\webs\framemakers\www\forum\selectandsinsert.php on line 8
Column count doesn't match value count at row 1
Avatar billede michael_stim Ekspert
30. november 2004 - 10:20 #11
Har du flere id'er der er 1?
Avatar billede nickydk Nybegynder
30. november 2004 - 10:25 #12
altså selve T_FORUMMESSAGE ser sådanne ud, det er her hvor der er et specifikt id, og et forum_id

Feltnavn      Datatype      Attributter      Nulværdi      Standardværdi      Ekstra      Handling
    ID      int(11)           Nej            auto_increment      Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    FORUM_ID      int(11)           Nej      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    AUTHORNAME      varchar(255)           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    AUTHOREMAIL      varchar(255)           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    AUTHORPHONE      varchar(255)           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    TITLE      varchar(255)           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    CONTENT      text           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    APPROVED      int(11)           Nej      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    TIMESTAMP      int(11)           Nej      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    PARENT      int(11)           Nej      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
Avatar billede michael_stim Ekspert
30. november 2004 - 10:31 #13
<?
require('config.php');
//Vælger databasen
mysql_select_db($database, $db);

$sql = mysql_query('SELECT * from T_FORUMMESSAGE WHERE FORUM_ID = 1')or die(mysql_error());
$result = mysql_query($sql);
if (!$result) {
  echo "Could not successfully run query ($sql) from DB: " . mysql_error();
  exit;
}

if (mysql_num_rows($result) == 0) {
  echo "No rows found, nothing to print so am exiting";
  exit;
}
$row = mysql_fetch_array($result);
$data1 = $row['ID'];
$sql2 = mysql_query("INSERT INTO forum_entries (user_id) VALUES($data1)")or die(mysql_error());
$result2=mysql_query($sql2);
?>

Kan umiddelbart ikke se nogle fejl, pröv denne.
Avatar billede nickydk Nybegynder
30. november 2004 - 10:33 #14
Den printer dette ud:

Could not successfully run query (Resource id #4) from DB: 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 'Resource id #4' at line 1
Avatar billede michael_stim Ekspert
30. november 2004 - 10:59 #15
$sql = mysql_query("SELECT * from T_FORUMMESSAGE WHERE FORUM_ID = '1'")or die(mysql_error());
Pröv dette.
Avatar billede nickydk Nybegynder
30. november 2004 - 11:24 #16
den giver mig samme fejl?

nu prøver jeg lige at forklare hele opgaven!

Jeg har et par foraer hvori der ligger en helvedes masse data, denne data skal jeg have flyttet over i et andet forum!

jeg har et andet felt som hedder T_FORUM hvori de forskellige foraer har et ID!
Derfor i den anden tabel FORUM_ID

hvis det hjælper kan du se hvordan de 2 forskellige db ser ud:

Dette er T_FORUMMESSAGE (i hvor brugerens indlæg er)

      Feltnavn      Datatype      Attributter      Nulværdi      Standardværdi      Ekstra      Handling
    id      int(11)           Nej            auto_increment      Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    pid      int(11)           Nej      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    tid      int(11)           Nej      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    uniqid      tinytext           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    time      timestamp(14)           Ja      NULL            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    last_answer      timestamp(14)           Ja      NULL            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    edited      timestamp(14)           Ja      NULL            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    edited_by      tinytext           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    user_id      int(11)           Ja      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    name      tinytext           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    subject      tinytext           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    category      tinytext           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    email      tinytext           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    hp      tinytext           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    place      tinytext           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    ip      tinytext           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    text      text           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    show_signature      tinyint(4)           Ja      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    email_notify      tinyint(4)           Ja      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    marked      tinyint(4)           Ja      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    locked      tinyint(4)           Ja      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    fixed      tinyint(4)           Ja      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    views      int(11)           Ja      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
Med det afmærkede: Afmærk alt  /  Fjern alle mærker    Med det afmærkede:      Ændre Slet
Avatar billede nickydk Nybegynder
30. november 2004 - 11:24 #17
T_FORUMMESSAGE:::

Feltnavn      Datatype      Attributter      Nulværdi      Standardværdi      Ekstra      Handling
    ID      int(11)           Nej            auto_increment      Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    FORUM_ID      int(11)           Nej      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    AUTHORNAME      varchar(255)           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    AUTHOREMAIL      varchar(255)           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    AUTHORPHONE      varchar(255)           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    TITLE      varchar(255)           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    CONTENT      text           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    APPROVED      int(11)           Nej      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    TIMESTAMP      int(11)           Nej      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    PARENT      int(11)           Nej      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst


FORUM_ENTRIES::::

Feltnavn      Datatype      Attributter      Nulværdi      Standardværdi      Ekstra      Handling
    id      int(11)           Nej            auto_increment      Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    pid      int(11)           Nej      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    tid      int(11)           Nej      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    uniqid      tinytext           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    time      timestamp(14)           Ja      NULL            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    last_answer      timestamp(14)           Ja      NULL            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    edited      timestamp(14)           Ja      NULL            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    edited_by      tinytext           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    user_id      int(11)           Ja      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    name      tinytext           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    subject      tinytext           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    category      tinytext           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    email      tinytext           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    hp      tinytext           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    place      tinytext           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    ip      tinytext           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    text      text           Nej                  Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    show_signature      tinyint(4)           Ja      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    email_notify      tinyint(4)           Ja      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    marked      tinyint(4)           Ja      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    locked      tinyint(4)           Ja      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    fixed      tinyint(4)           Ja      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
    views      int(11)           Ja      0            Ændre     Slet     Primær     Indeks     Unik     Fuldtekst
Avatar billede michael_stim Ekspert
30. november 2004 - 11:31 #18
<?
require('config.php');
//Vælger databasen
mysql_select_db($database, $db);

$sql = mysql_query('SELECT * from Tabel_Som_Hentes_Fra WHERE id_Fra_Tabel_Der_Hentes_Fra = 1')or die(mysql_error());
$result = mysql_query($sql);
if (!$result) {
  echo "Could not successfully run query ($sql) from DB: " . mysql_error();
  exit;
}

if (mysql_num_rows($result) == 0) {
  echo "No rows found, nothing to print so am exiting";
  exit;
}
$row = mysql_fetch_array($result);
$data1 = $row['id_Fra_Tabel_Der_Hentes_Fra'];
$sql2 = mysql_query("INSERT INTO Tabel_Der_Sättes_Ind_I (id_I_Den_Tabel) VALUES($data1)")or die(mysql_error());
$result2=mysql_query($sql2);
?>
Avatar billede nickydk Nybegynder
30. november 2004 - 11:37 #19
har nu skrevet det ind på følgende måde, og får stadig samme fejlmelding som før:

<?
require('config.php');
//Vælger databasen
mysql_select_db($database, $db);

$sql = mysql_query('SELECT * from T_FORUMMESSAGE WHERE T_FORUMMESSAGE.ID = 1')or die(mysql_error());
$result = mysql_query($sql);
if (!$result) {
  echo "Could not successfully run query ($sql) from DB: " . mysql_error();
  exit;
}

if (mysql_num_rows($result) == 0) {
  echo "No rows found, nothing to print so am exiting";
  exit;
}
$row = mysql_fetch_array($result);
$data1 = $row['FORUM_ID'];
$sql2 = mysql_query("INSERT INTO forum_entries (user_id) VALUES($data1)")or die(mysql_error());
$result2=mysql_query($sql2);
?>
Avatar billede nickydk Nybegynder
30. november 2004 - 12:12 #20
du kan ikke hjælpe mere plz? skal nok ligge flere point hvis det er det...
Avatar billede michael_stim Ekspert
30. november 2004 - 12:32 #21
Er tilbage kl 17.00 ca.
Pröv at klistre hele siden herind.
Hvor får du f eks variablerne fra til denne: mysql_select_db($database, $db);
Avatar billede nickydk Nybegynder
30. november 2004 - 12:44 #22
Ok...

Config.php ser således ud:

<?php
//Forbindelses data
$server = 'xxx'; //Host
$user = 'xxx'; //brugernavn
$pass = 'xxx'; //password
$database = 'framemakers';
$db = mysql_connect($server, $user, $pass) or die (mysql_error("Kan ikke få forbindelse til databasen"));

?>


Også er der den side vi har prøvet at få til at virke som giver fejl:

selectandinsert.php:

<?
require('config.php');
mysql_select_db($database, $db);

$sql = mysql_query('SELECT * from T_FORUMMESSAGE WHERE FORUM_ID = 1')or die(mysql_error());
$result = mysql_query($sql);
if (!$result) {
  echo "Could not successfully run query ($sql) from DB: " . mysql_error();
  exit;
}

if (mysql_num_rows($result) == 0) {
  echo "No rows found, nothing to print so am exiting";
  exit;
}
$row = mysql_fetch_array($result);
$data1 = $row['FORUM_ID'];
$sql2 = mysql_query("INSERT INTO forum_entries (user_id) VALUES($data1)")or die(mysql_error());
$result2=mysql_query($sql2);
?>
Avatar billede morteeart Nybegynder
30. november 2004 - 12:50 #23
lige et par ting som er gode at kunne.

1. tag det roligt, og skrive ikke ??? any1 ??? hele tiden, det får dig til at se alt for desperat ud.
2. Skriv på dansk og ikke brug tal istedet for bogstaver,
f.eks. "??any1??" = "nogen forslag ?"

mht. mysql, så lav et dump, istedet for at markere ting i phpmyadmin og så kopiere dem ind, det giver en mere strukturert oversigt at din tabel.

Gøres via. export-fanebladet -> marker alt (eller vælg det du vil vise) -> make dump -> og så kopiere det.

JEg vil lade michael_stim tage sig af at afslutte spørgsmålet.
Avatar billede michael_stim Ekspert
30. november 2004 - 12:55 #24
morteeart>>er på vej ud af dören. Kan heller ikke se nogen fejl, så afslut du hvis du kan se fejlen.
Synes jeg har testet alt.
Avatar billede nickydk Nybegynder
30. november 2004 - 13:04 #25
>> morteeart
tak for rådene, du har ret i det er mere struktureret

her er dump fra tabel t_forummessage:

# Struktur dump for tabellen `T_FORUMMESSAGE`
#

CREATE TABLE `T_FORUMMESSAGE` (
  `ID` int(11) NOT NULL auto_increment,
  `FORUM_ID` int(11) NOT NULL default '0',
  `AUTHORNAME` varchar(255) NOT NULL default '',
  `AUTHOREMAIL` varchar(255) NOT NULL default '',
  `AUTHORPHONE` varchar(255) NOT NULL default '',
  `TITLE` varchar(255) NOT NULL default '',
  `CONTENT` text NOT NULL,
  `APPROVED` int(11) NOT NULL default '0',
  `TIMESTAMP` int(11) NOT NULL default '0',
  `PARENT` int(11) NOT NULL default '0',
  PRIMARY KEY  (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=1923 ;

og et dump fra den tabel hvori data skal over i :

# Struktur dump for tabellen `forum_entries`
#

CREATE TABLE `forum_entries` (
  `id` int(11) NOT NULL auto_increment,
  `pid` int(11) NOT NULL default '0',
  `tid` int(11) NOT NULL default '0',
  `uniqid` tinytext NOT NULL,
  `time` timestamp(14) NOT NULL,
  `last_answer` timestamp(14) NOT NULL,
  `edited` timestamp(14) NOT NULL,
  `edited_by` tinytext NOT NULL,
  `user_id` int(11) default '0',
  `name` tinytext NOT NULL,
  `subject` tinytext NOT NULL,
  `category` tinytext NOT NULL,
  `email` tinytext NOT NULL,
  `hp` tinytext NOT NULL,
  `place` tinytext NOT NULL,
  `ip` tinytext NOT NULL,
  `text` text NOT NULL,
  `show_signature` tinyint(4) default '0',
  `email_notify` tinyint(4) default '0',
  `marked` tinyint(4) default '0',
  `locked` tinyint(4) default '0',
  `fixed` tinyint(4) default '0',
  `views` int(11) default '0',
  PRIMARY KEY  (`id`),
  UNIQUE KEY `ID` (`id`),
  KEY `tid` (`tid`),
  KEY `category` (`category`(10))
) TYPE=MyISAM AUTO_INCREMENT=15 ;

#
Avatar billede nickydk Nybegynder
01. december 2004 - 08:58 #26
nå, jamen jeg fandt ud fejlen, det var $sql, det skulle ikke være en query !

Der skulle stå i stedet:

$sql = "SELECT * FROM T_FORUMMESSAGE WHERE FORUM_ID = 1";
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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