Trasportare valori da access a mysql

lunedì 08 giugno 2009 - 14.46

toniovigi Profilo | Expert

Ciao ragazzi ho un problema che non so se considerare banale ho meno

ho una tabella chiamata "utenti" in un database access costituita da 4 campi :
ID,Cognome,Nome,Matricola

ho poi un altra tabella in Mysql chiamata "utenti_forum"

costitutita da 52 campi ( nn spaventatevi)

in questa altra tabella nei 52 campi ci sono anche i miei campi ID,Cognome,nome,matricola della tabella "utenti"
però con nomi diversi

quello che devo fare io,è trovare un metodo,una query.un qualcosa che mi permetta di prendere i record

della tabella "utenti" e trasportarli nella tabella "utenti_forum"

ovviamente tutti le colonne oltre alle 4 che io riempio rimarrano invariate quindi null

Come potrei fare??

Grazie per l'aiuto

Antonio

alx_81 Profilo | Guru

>Ciao ragazzi
Ciao

> ho un problema che non so se considerare banale ho meno
>ho una tabella chiamata "utenti" in un database access costituita
>da 4 campi :
>ID,Cognome,Nome,Matricola
>ho poi un altra tabella in Mysql chiamata "utenti_forum"
>costitutita da 52 campi ( nn spaventatevi)
>in questa altra tabella nei 52 campi ci sono anche i miei campi
>ID,Cognome,nome,matricola della tabella "utenti"
>però con nomi diversi
Prima devo farti un paio di domande:

- Qual è la base dati che poi interroghi effettivamente per mostrare i dati?
- Perchè replichi tutte le info della tabella?

Queste due domande nascono dal fatto che forse con Linked Server risolvi il tuo problema andando a prendere le info dal mysql per poi renderle visibili direttamente da sql con una vista sul server linkato. Se invece è il contrario che ti interessa, dovresti informarti se è possibile farsi dei linked server su mysql.

>quello che devo fare io,è trovare un metodo,una query.un qualcosa
>che mi permetta di prendere i record
>della tabella "utenti" e trasportarli nella tabella "utenti_forum"
>ovviamente tutti le colonne oltre alle 4 che io riempio rimarrano
>invariate quindi null
Nel modo che ti ho indicato sopra, eviteresti di "trasportare" i dati.
Se questo non ti è possibile (e quindi la tecnica dei server linkati non è sufficiente) puoi cmq effettuare delle operazioni cross server tramite altri strumenti di sql server, come SSIS, ad esempio.. Ma prima cerchiamo di capire se puoi usare linked server.

>Grazie per l'aiuto
di nulla!

--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

toniovigi Profilo | Expert

Ti spiego la questione reale che forse è + semplice,

sto utilizzando un forum che sicuramente conosci phpbb3,

questo forum e costituito da tantissime tabelle gestite in Mysql,tra qui una tabella phpbb_user dove sono contenute tutte le info degli user,

il problema e che questa tabella a 50 campi per ogni record e in questi 50, quelli da valorizzare necessariamente sono utente,password e qualche altro dato,gli altri posso essere lasciati cosi come sono,poi se ho la necessita di valorizzarne altri ben venga,
Quello che vorrei fare io e fare una query per inserire nuovi utenti nel database quindi un insert into ma a partire da dove?

A partire dal fatto che ho gia un altro database contenente queste informazioni (utente password ) che saran da posizionare con i nomi campi giusti e le posizioni corrette nella tabella phpbb_user,

Il mio database origine e in access,quindi io dovrei estrapolare tutti i miei dai magari in una query e poi questa query metterla in mysql come insert per vedere tutti i miei utenti

Ho guardato se ci fossero degli script per fare cio e ci sono ma nn riesco a capirli

Grazie

alx_81 Profilo | Guru

>A partire dal fatto che ho gia un altro database contenente queste
>informazioni (utente password ) che saran da posizionare con
>i nomi campi giusti e le posizioni corrette nella tabella phpbb_user,
>
>Il mio database origine e in access,quindi io dovrei estrapolare
>tutti i miei dai magari in una query e poi questa query metterla
>in mysql come insert per vedere tutti i miei utenti
non so se ci sono strumenti per mysql per caricare sorgenti esterne. Ti parlavo di ssis perchè con esso fai trasformazioni cross platform in poco tempo.
A questo punto dovresti scaricare i dati da access ad un file di testo e poi importarli in mysql con un costrutto come OPENROWSET di sql server..
ma per mysql non so aiutarti. Mi spiace.
--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5