|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Oct 2000
Città: Bisceglie
Messaggi: 357
|
C# errore di una SqlConnection ad un Data Source remoto
lavorando con Visual Studio 2005,
questa l'istruzione: private void button2_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection("Data Source=AMM;Integrated Security = True;User ID=myuser;Password=mypwd"); conn.Open(); SqlCommand comando = new SqlCommand("select * from wom.damage_order", conn); SqlDataReader dataReader = comando.ExecuteReader(); while (dataReader.Read() ) { listBox1.Items.Add("POD: " + dataReader.GetString(16) ); } conn.Close(); } } } il comando conn.Open genera il seguente errore System.Data.SqlClient.SqlException: A connection was successfully established with the server, but then an error occurred during the login process. (provider: TCP Provider, error: 0 - Connessione in corso interrotta forzatamente dall'host remoto.) Voglio precisare che il Data Source AMM è correttamente configurato tra le origini dati ODBC; Su SQL Server Surface Area Configuration for Services and Connections, ho impostato, in Remote Connections, Using both TCP/IP and named pipes. Il bello è che all'interno dello stesso form, viene riempito correttamente un datagrid con un dataTable che si riferisce alla stessa origine dati, quindi il server remoto già mi permette di accedere... Mi sfugge qualcosa??? |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: May 2008
Città: Provincia Torino
Messaggi: 760
|
Hai provato ad utilizzare la stessa connessione che hai già aperto per riempire la grid invece di istanziarne una nuova?
__________________
Ho comprato serenamente da: Zio_Igna, gwwmas, andreabarbuscia, marczxc, turbofantasyfan |
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Oct 2000
Città: Bisceglie
Messaggi: 357
|
Quote:
MAgari sapessi come si fà! questo è il SRC completo (all'interno dello stesso form1 ho sia il dataGrid che, al click su button1, riesco a riempire tranquillamente con la stessa tabella che non riesco a raggiungere col dataReader): using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Data.SqlClient; namespace WindowsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { // TODO: This line of code loads data into the 'dataSetAmm.DataTable1' table. You can move, or remove it, as needed. // this.dataTable1TableAdapter.Fill(this.dataSetAmm.DataTable1); } private void button1_Click(object sender, EventArgs e) { this.dataTable1TableAdapter.Fill(this.dataSetAmm.DataTable1); } private void button2_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection("Data Source=AMM;Integrated Security = True;User ID=myuser;Password=mypwd"); conn.Open(); SqlCommand comando = new SqlCommand("select * from wom.damage_order", conn); SqlDataReader dataReader = comando.ExecuteReader(); while (dataReader.Read() ) { listBox1.Items.Add("POD: " + dataReader.GetString(16) ); } conn.Close(); } private void dataTable1BindingSource_CurrentChanged(object sender, EventArgs e) { } } } |
|
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: May 2008
Città: Provincia Torino
Messaggi: 760
|
Quote:
SqlCommand comando = new SqlCommand("select * from wom.damage_order", conn); SqlCommand comando = new SqlCommand("select * from wom.damage_order", dataTable1TableAdapter.Connection); Magari prima fai un test sullo stato della connessione if(dataTable1TableAdapter.Connection.State == ConnectionState.Closed) dataTable1TableAdapter.Connection.Open(); Cmq se va l'adapter guarda che connessione usa
__________________
Ho comprato serenamente da: Zio_Igna, gwwmas, andreabarbuscia, marczxc, turbofantasyfan |
|
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Oct 2000
Città: Bisceglie
Messaggi: 357
|
Quote:
Grazie Roby!!! |
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Premesso che mettere l'accesso ai dati direttamente nell'interfaccia grafica va contro tutte le principali norme di programmazione, e se il connection state non è closed?
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: May 2008
Città: Provincia Torino
Messaggi: 760
|
Ma vabbè è solo un semplice test per vedere se la connessione funziona. Testato ciò è chiaro che rimane da vedere dove sbagliava, però se funziona così, già capisci che la stringa di connessione che usa l'adapter è corretta. Senza dubbio son daccordo con te sul fatto che l'adapter schiaffato in progettazione è da evitare, personalmente mai usato in quel modo, ripeto era solo un modo per capire il problema (anche perchè se la connessione al db è sempre la stessa non ha senzo istanziarne sempre di nuove in ogni metodo)
__________________
Ho comprato serenamente da: Zio_Igna, gwwmas, andreabarbuscia, marczxc, turbofantasyfan |
|
|
|
|
|
#8 | |
|
Senior Member
Iscritto dal: Oct 2000
Città: Bisceglie
Messaggi: 357
|
Quote:
il fatto è che per mettere su queste applicazioni (se così possono chiamarsi ho esperienze in programmazione, ma non sò assolutamente nulla di C#.. ancora grazie.. |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 04:49.




















