Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Sony Alpha 7 V, anteprima e novità della nuova 30fps, che tende la mano anche ai creator
Sony Alpha 7 V, anteprima e novità della nuova 30fps, che tende la mano anche ai creator
Dopo oltre 4 anni si rinnova la serie Sony Alpha 7 con la quinta generazione, che porta in dote veramente tante novità a partire dai 30fps e dal nuovo sensore partially stacked da 33Mpixel. L'abbiamo provata per un breve periodo, ecco come è andata dopo averla messa alle strette.
realme GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1
realme GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1
realme e Aston Martin Aramco F1 Team si sono (ri)unite dando alla vita un flagship con chip Snapdragon 8 Elite Gen 5 e design esclusivo ispirato alle monoposto di Formula 1. La Dream Edition introduce la nuova colorazione Lime Essence abbinata al tradizionale Aston Martin Racing Green, decorazioni intercambiabili personalizzate e una confezione a tema F1, intorno a uno smartphone dall'ottima dotazione tecnica con batteria da 7000mAh ricaricabile a 120W e isola fotografica intercambiabile
OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum
OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum
Abbiamo partecipato all'OVHcloud Summit 2025, conferenza annuale in cui l'azienda francese presenta le sue ultime novità. Abbiamo parlato di cloud pubblico e privato, d'intelligenza artificiale, di computer quantistici e di sovranità. Che forse, però, dovremmo chiamare solo "sicurezza"
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 04-01-2009, 10:27   #1
melomanu
Bannato
 
L'Avatar di melomanu
 
Iscritto dal: Apr 2002
Città: Messina
Messaggi: 6000
[Visual C#] Visualizzare dati e connessione a MySQL

Ciao ragazzi.
Devo creare un programma che gestisca un certo processo industriale. Purtroppo non ho mai capito nulla di programmazione (all'università ho dato solo un esame di programmazione basato su C++....) e credo di essermi imbarcato in un lavoro più grande di me (la disperazione incalza...).
Ma tant'è che devo farlo, per cui ho iniziato da qualche settimana a leggere tutto ciòc he ho ricavato su Visual C#.
Ho creato l'interfaccia grafica con tutti i comandi che servono al mio scopo; ho iniziato ad associare vari eventi ad alcuni di questi comandi; purtroppo, però, non riesco a risolvere i 2 problemi del titolo.
Sono strasicuro che saranno due cavolate, ma per me sembrano impossibili.

1) Per inserire del testo, ho usato il controllo TextBox. Ma quale controllo devo usare per ottenere una casella che mi permetta di visualizzare del testo? Li ho provati tutti, ma non so come venirne a capo.

2) Poichè devo realizzare un'architettura di tipo centralizzato, per i test sto usando un pc desktop come postazione centrale, ed un notebook come postazione all'interno del processo industriale. Sul fisso ho installato e configurato MySQL, che gestisco con phpmyadmin. Tutto ok, ma non sono riuscito in nessun modo a far connettere il progetto winform presente sul notebook al database mysql installato sul pc desktop. Le ho provate tutte: ODBC, ADO.NET, tutte le guide trovate online, ma non ne vuol sentire di connettersi.

Help me
melomanu è offline   Rispondi citando il messaggio o parte di esso
Old 04-01-2009, 11:21   #2
carter100
Senior Member
 
Iscritto dal: Jul 2007
Messaggi: 1159
1)Non ho ben capito, ti serve un controllo per testo statico?Ci sono le label. Oppure una casella da spuntare per far apparire o scomparire del testo?
2)Leggi qui
http://www.dreamincode.net/code/snippet1677.htm
Io mi connetto in locale, nel tuo caso credo basti mettere l'ip del fisso al posto di localhost.
Hai installato il connector?Altrimenti non ti trova la classe MysqlClient.

Edit: hai anche grantato i permessi dell'utente sul db?Io me ne scordo quasi sempre

Ultima modifica di carter100 : 04-01-2009 alle 11:25.
carter100 è offline   Rispondi citando il messaggio o parte di esso
Old 04-01-2009, 11:28   #3
melomanu
Bannato
 
L'Avatar di melomanu
 
Iscritto dal: Apr 2002
Città: Messina
Messaggi: 6000
Quote:
Originariamente inviato da carter100 Guarda i messaggi
1)Non ho ben capito, ti serve un controllo per testo statico?Ci sono le label. Oppure una casella da spuntare per far apparire o scomparire del testo?
2)Leggi qui
http://www.dreamincode.net/code/snippet1677.htm
Io mi connetto in locale, nel tuo caso credo basti mettere l'ip del fisso al posto di localhost.
Hai installato il connector?Altrimenti non ti trova la classe MysqlClient.
Ciao. Grazie, intanto, per il tuo intervento.
Per il primo quesito, scusami ma ho forse scritto male
Allora, ti faccio un esempio.
A me serve che a video, in una casella, si visualizzi una serie di informazioni. Per esempio, se clicco su un bottone e deve partire un processo X, vorrei che a video venga visualizzato il risultato di quel processo X. Non so se ora ho reso l'idea

2) Ho inserito, nelle referenze, la MySl.Data; nel corpo, poi, ho anche inserito la using necessaria, using ql.Data.MySqlClient;. E' che ora non riesco a far funzionare nessuna delle stringhe trovate in internet per potermi connettere al database.
Ho provato anche in locale, ma non funziona manco a parlarne.
melomanu è offline   Rispondi citando il messaggio o parte di esso
Old 04-01-2009, 11:39   #4
carter100
Senior Member
 
Iscritto dal: Jul 2007
Messaggi: 1159
Quote:
Originariamente inviato da melomanu Guarda i messaggi
Ciao. Grazie, intanto, per il tuo intervento.
Per il primo quesito, scusami ma ho forse scritto male
Allora, ti faccio un esempio.
A me serve che a video, in una casella, si visualizzi una serie di informazioni. Per esempio, se clicco su un bottone e deve partire un processo X, vorrei che a video venga visualizzato il risultato di quel processo X. Non so se ora ho reso l'idea

2) Ho inserito, nelle referenze, la MySl.Data; nel corpo, poi, ho anche inserito la using necessaria, using ql.Data.MySqlClient;. E' che ora non riesco a far funzionare nessuna delle stringhe trovate in internet per potermi connettere al database.
Ho provato anche in locale, ma non funziona manco a parlarne.
1) Ok, dipende tutto dai risultati del processo. Cioè, se hai un elenco di risultati, puoi visualizzarli in una listview. Se sono risultati brevi (tipo "processo riuscito") li metti in una label o in una textbox (ci sono metodi per caricarci il testo, tipo setText() o molto simile, li dovresti aggiungere al termine dell'evento del click del bottone).
2)Forse fai prima a postare il codice, o almeno a dire l'errore che ti viene dato (se ti va in qualche catch stampa una printstacktrace per avere qualche info in +).

Edit: questa è la mia stringa di connessione:
Codice:
string conString = "database=test;server=localhost; " +
                  "port=3306;username=user;password=pass";
            MySqlConnection cn = new MySqlConnection(conString);
            cn.Open();
E' in locale, ma si connette.

Ultima modifica di carter100 : 04-01-2009 alle 11:41.
carter100 è offline   Rispondi citando il messaggio o parte di esso
Old 04-01-2009, 11:45   #5
melomanu
Bannato
 
L'Avatar di melomanu
 
Iscritto dal: Apr 2002
Città: Messina
Messaggi: 6000
Quote:
Originariamente inviato da carter100 Guarda i messaggi
1) Ok, dipende tutto dai risultati del processo. Cioè, se hai un elenco di risultati, puoi visualizzarli in una listview. Se sono risultati brevi (tipo "processo riuscito") li metti in una label o in una textbox (ci sono metodi per caricarci il testo, tipo setText() o molto simile, li dovresti aggiungere al termine dell'evento del click del bottone).
Ok. Quindi, se per esempio, volessi visualizzare dei numeri ( su una riga singola, tipo che so 48, oppure 30, etc..) , dati da un processo, basta un textbox usando il comando setText() ?
Quote:
Originariamente inviato da carter100 Guarda i messaggi
2)Forse fai prima a postare il codice, o almeno a dire l'errore che ti viene dato (se ti va in qualche catch stampa una printstacktrace per avere qualche info in +).

Edit: questa è la mia stringa di connessione:
Codice:
string conString = "database=test;server=localhost; " +
                  "port=3306;username=user;password=pass";
            MySqlConnection cn = new MySqlConnection(conString);
            cn.Open();
E' in locale, ma si connette.
Il codice usato è questo:
Codice:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using MySql.Data.MySqlClient;

namespace provaconnessionedb
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string MyConString = "SERVER=localhost;" +
                "DATABASE=geima;" +
                "UID=root;" +
                "PASSWORD=geima;";
            MySqlConnection connection = new MySqlConnection(MyConString);
            MySqlCommand command = connection.CreateCommand();
         }
    }
}
Non mi da alcun errore, ma neanche si connette
melomanu è offline   Rispondi citando il messaggio o parte di esso
Old 04-01-2009, 11:53   #6
carter100
Senior Member
 
Iscritto dal: Jul 2007
Messaggi: 1159
Quote:
Originariamente inviato da melomanu Guarda i messaggi
Ok. Quindi, se per esempio, volessi visualizzare dei numeri ( su una riga singola, tipo che so 48, oppure 30, etc..) , dati da un processo, basta un textbox usando il comando setText() ?

Il codice usato è questo:
Codice:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using MySql.Data.MySqlClient;

namespace provaconnessionedb
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string MyConString = "SERVER=localhost;" +
                "DATABASE=geima;" +
                "UID=root;" +
                "PASSWORD=geima;";
            MySqlConnection connection = new MySqlConnection(MyConString);
            MySqlCommand command = connection.CreateCommand();
         }
    }
}
Non mi da alcun errore, ma neanche si connette
Mettici una connection.Open() e vedrai che va tutto bene.
Diventa così insomma:
Codice:
string MyConString = "SERVER=localhost;" +
                "DATABASE=test;" +
                "UID=user;" +
                "PASSWORD=pass;";
            MySqlConnection connection = new MySqlConnection(MyConString);
            MySqlCommand command = connection.CreateCommand();
            connection.Open();
Ad essere del tutto sincero, sono nuovo del C# e non conosco il createCommand che hai usato, ma di sicuro a me non è servito quando mi son connesso e comunque non ti apre la connessione in automatico. Poi mi vedo la doc per vedere che fa.

Per la prima domanda, basta una textbox (o una label se non vuoi che i dati siano toccati dall'utente). Credo che il metodo sia Text=valore e non setText(), ma insomma cambia poco.
Fai sapere se funziona (almeno in locale).
carter100 è offline   Rispondi citando il messaggio o parte di esso
Old 04-01-2009, 11:55   #7
melomanu
Bannato
 
L'Avatar di melomanu
 
Iscritto dal: Apr 2002
Città: Messina
Messaggi: 6000
Il fatto è che a me servirebbe proprio una connessione automatica al database. Ovvero lancio l'applicazione, e lei si connette da sola al database, cosi da poterci lavorare sopra tramite altri comandi.

E' un bordello sto C#
melomanu è offline   Rispondi citando il messaggio o parte di esso
Old 04-01-2009, 12:06   #8
carter100
Senior Member
 
Iscritto dal: Jul 2007
Messaggi: 1159
Quote:
Originariamente inviato da melomanu Guarda i messaggi
Il fatto è che a me servirebbe proprio una connessione automatica al database. Ovvero lancio l'applicazione, e lei si connette da sola al database, cosi da poterci lavorare sopra tramite altri comandi.

E' un bordello sto C#
Puoi sempre mettere quel codice sotto l'initcomponent, cioè così:
Codice:
public Form1()
        {
            InitializeComponent();
            string MyConString = "SERVER=localhost;" +
                "DATABASE=test;" +
                "UID=user;" +
                "PASSWORD=pass;";
            MySqlConnection connection = new MySqlConnection(MyConString);
            MySqlCommand command = connection.CreateCommand();
            connection.Open();

        }
In pratica appena apri l'applicazione avviene la connessione iniziale al db, se devi lanciare comandi subito li aggiungi immediatamente dopo la Open, altrimenti se ti salvi l'oggetto connection come private, la connessione resta aperta, e quando clicchi su un bottone basta mandare la query al database saltando la parte di apertura di prima.
Non so se effettivamente ti risolve qualche problema o no
carter100 è offline   Rispondi citando il messaggio o parte di esso
Old 04-01-2009, 12:08   #9
melomanu
Bannato
 
L'Avatar di melomanu
 
Iscritto dal: Apr 2002
Città: Messina
Messaggi: 6000
Ma, a prescindere dal metodo impiegato, non dovrebbe risultare il mio database in Origini Dati?
melomanu è offline   Rispondi citando il messaggio o parte di esso
Old 04-01-2009, 12:14   #10
melomanu
Bannato
 
L'Avatar di melomanu
 
Iscritto dal: Apr 2002
Città: Messina
Messaggi: 6000
Allora, faccio il punto della situazione. Con questo codice:
Codice:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using MySql.Data.MySqlClient;

namespace database
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            string MyConString = "SERVER=localhost;" +
                "DATABASE=geima;" +
                "UID=root;" +
                "PASSWORD=geima;";
            MySqlConnection connection = new MySqlConnection(MyConString);
            MySqlCommand command = connection.CreateCommand();
            connection.Open();

        }
    }
}
pare che si sia connesso. Compilando, il firewallo mi ha segnalato la richiesta di connessione vchost, ed è comparsa la semplice schermata dell'applicazione.
In teoria, ora, dovrei essere connesso al database.
melomanu è offline   Rispondi citando il messaggio o parte di esso
Old 04-01-2009, 12:14   #11
carter100
Senior Member
 
Iscritto dal: Jul 2007
Messaggi: 1159
Quote:
Originariamente inviato da melomanu Guarda i messaggi
Ma, a prescindere dal metodo impiegato, non dovrebbe risultare il mio database in Origini Dati?
No aspetta, cosa è origini dati?Qualcosa del Visual C# dove vedi il db aperto?
Ascolta, non voglio farti perdere tempo dato che credo tu abbia i tempi stretti, ciò che sapevo te l'ho postato, ti posso garantire che se metti quel codice sotto l'init component per tutta la durata dell'applicazione la connessione è attiva e il db attende che tu mandi query sql (se non lo sai fare ti butto uno schizzo di codice, ma è molto semplice), per altro più avanzato temo usciamo dalle mie conoscenze, quindi sarebbe meglio attendere qualcuno più esperto. Spero di esserti stato almeno 1 minimo di aiuto, poi se ci son altre domande a cui posso dar risposta, oggi più o meno son sempre qui
Ciao, e buon lavoro
carter100 è offline   Rispondi citando il messaggio o parte di esso
Old 04-01-2009, 12:17   #12
carter100
Senior Member
 
Iscritto dal: Jul 2007
Messaggi: 1159
Quote:
Originariamente inviato da melomanu Guarda i messaggi
Allora, faccio il punto della situazione. Con questo codice:
Codice:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using MySql.Data.MySqlClient;

namespace database
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            string MyConString = "SERVER=localhost;" +
                "DATABASE=geima;" +
                "UID=root;" +
                "PASSWORD=geima;";
            MySqlConnection connection = new MySqlConnection(MyConString);
            MySqlCommand command = connection.CreateCommand();
            connection.Open();

        }
    }
}
pare che si sia connesso. Compilando, il firewallo mi ha segnalato la richiesta di connessione vchost, ed è comparsa la semplice schermata dell'applicazione.
In teoria, ora, dovrei essere connesso al database.
Abbiam risposto insieme
Si, perfetto, così sei connesso. Se vuoi avere la prova del 9, prova a crearti un db di prova, caricaci una tabella con un solo intero come campo, mettici un numero e fai una select su quel db, se ottieni a schermo quel numero è ormai tutto a posto.
Comunque, come detto, con quel codice io sul mio db ho fatto diverse query e nessun problema, penso il problema sia risolto
carter100 è offline   Rispondi citando il messaggio o parte di esso
Old 04-01-2009, 12:17   #13
melomanu
Bannato
 
L'Avatar di melomanu
 
Iscritto dal: Apr 2002
Città: Messina
Messaggi: 6000
Quote:
Originariamente inviato da carter100 Guarda i messaggi
No aspetta, cosa è origini dati?Qualcosa del Visual C# dove vedi il db aperto?
Ascolta, non voglio farti perdere tempo dato che credo tu abbia i tempi stretti, ciò che sapevo te l'ho postato, ti posso garantire che se metti quel codice sotto l'init component per tutta la durata dell'applicazione la connessione è attiva e il db attende che tu mandi query sql (se non lo sai fare ti butto uno schizzo di codice, ma è molto semplice), per altro più avanzato temo usciamo dalle mie conoscenze, quindi sarebbe meglio attendere qualcuno più esperto. Spero di esserti stato almeno 1 minimo di aiuto, poi se ci son altre domande a cui posso dar risposta, oggi più o meno son sempre qui
Ciao, e buon lavoro
Sei stato di grandissimo aiuto!
Origine dati è la procedura standard di visual c# dove ti elenca i database disponbili, o te ne fa inserire altri. In rete ho letto che, in teoria, dovrebbe comparire anche mysql fra i database disponibili, installando i drivers dedicati presi dal sito mysql. In realtà, però, non compare nulla che non sia sql server
Ora provo ad inserire qualche query sql, vediamo come va
melomanu è offline   Rispondi citando il messaggio o parte di esso
Old 04-01-2009, 12:19   #14
carter100
Senior Member
 
Iscritto dal: Jul 2007
Messaggi: 1159
Quote:
Originariamente inviato da melomanu Guarda i messaggi
Sei stato di grandissimo aiuto!
Origine dati è la procedura standard di visual c# dove ti elenca i database disponbili, o te ne fa inserire altri. In rete ho letto che, in teoria, dovrebbe comparire anche mysql fra i database disponibili, installando i drivers dedicati presi dal sito mysql. In realtà, però, non compare nulla che non sia sql server
Ora provo ad inserire qualche query sql, vediamo come va
Ah, ho capito, c'era una cosa simile anche con netbeans in Java, ad essere sincero di quelle cose non mi son mai fidato, non so da cosa dipenda il loro funzionamento, comunque prova una query e vai tranquillo
Bye
carter100 è offline   Rispondi citando il messaggio o parte di esso
Old 04-01-2009, 12:21   #15
melomanu
Bannato
 
L'Avatar di melomanu
 
Iscritto dal: Apr 2002
Città: Messina
Messaggi: 6000
Quote:
Originariamente inviato da carter100 Guarda i messaggi
Ah, ho capito, c'era una cosa simile anche con netbeans in Java, ad essere sincero di quelle cose non mi son mai fidato, non so da cosa dipenda il loro funzionamento, comunque prova una query e vai tranquillo
Bye
Grazie ancora, vedrò di lavorarci a fondo
Terrò vivo il thread perchè temo che avrò parecchiob isogno di aiuto
melomanu è offline   Rispondi citando il messaggio o parte di esso
Old 05-01-2009, 09:22   #16
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Per fare quello che dici tu in maniera 'visuale' hai bisogno di un plugin per visual studio:

http://dev.mysql.com/doc/refman/5.0/...r-vstudio.html

Una volta installato questo plugin potrai gestire il tuo db in maniera visuale.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 05-01-2009, 15:45   #17
melomanu
Bannato
 
L'Avatar di melomanu
 
Iscritto dal: Apr 2002
Città: Messina
Messaggi: 6000
Quote:
Originariamente inviato da RaouL_BennetH Guarda i messaggi
Per fare quello che dici tu in maniera 'visuale' hai bisogno di un plugin per visual studio:

http://dev.mysql.com/doc/refman/5.0/...r-vstudio.html

Una volta installato questo plugin potrai gestire il tuo db in maniera visuale.
Ciao.
Ti ringrazio, lo provo subito
melomanu è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Sony Alpha 7 V, anteprima e novità della nuova 30fps, che tende la mano anche ai creator Sony Alpha 7 V, anteprima e novità della ...
realme GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1 realme GT 8 Pro Dream Edition: prestazioni da fl...
OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum OVHcloud Summit 2025: le novità del cloud...
Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI Care e DisplayPort 2.1a Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI C...
DJI Neo 2 in prova: il drone da 160 grammi guadagna il gimbal e molto altro DJI Neo 2 in prova: il drone da 160 grammi guada...
Super offerte Apple: iPhone 16e a 529€ e...
Torres EVT arriva in Italia con listino ...
Microsoft Flight Simulator 2024 provato ...
Offerte Amazon ancora attive: Kindle, Fi...
Caldaie a gas, colpo di scena: l'UE valu...
Altro che 'scandalo De Martino', in Core...
Meta leggerà i tuoi messaggi dal ...
OpenAI entra in Thrive Holdings: nasce u...
Paramount: nuovi film di Sonic e Tartaru...
EU AI Cloud, il cloud sovrano di SAP per...
God of War: la serie TV entra in pre-pro...
Stampante HP in super offerta: la multif...
Maxi offerta su Roborock S8 MaxV Ultra: ...
Ron Gilbert, il creatore di Monkey Islan...
AMD, aumento dei prezzi per i processori...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 15:30.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v