2015-06-17 55 views
-1

我使用visual studio 2010開發了一個asp.net web應用程序。我使用SQL Server 2008作爲數據庫。我需要通過LAN連接從遠程服務器獲取數據,並且必須通過C#代碼存儲到我的數據庫。我是初學者,使用asp.net和C#進行web開發。請告訴我一個非常簡單的方法來解決這個問題。從遠程SQL服務器獲取數據

這是我試過的一個例子。這段代碼是否正確或錯誤,請指導我這個?

protected void Button1_Click(object sender, EventArgs e) 
{ 
    SqlConnection con1 = new SqlConnection(); 
    con1.ConnectionString = @"Data Source=172.16.7.127\inhouse;User ID=****;Password= *****;"; 
    con1.Open(); 
    string str = "select * from t_his_events Where patientMRN="+hosp_no.Text; 
    SqlDataReader dr; 
    SqlCommand myCommand = new SqlCommand(str,con1); 
    dr = myCommand.ExecuteReader(); 
    if (dr.HasRows) 
    { 
     Console.WriteLine("connection established"); 
    } 


} 
+2

歡迎的StackOverflow,一個Q&A爲開發人員支持社區DataSet對象。請詳細說明您可能嘗試過的內容,包括現有的代碼,並概述您遇到的具體問題。我們不會爲您編寫代碼。請點擊編輯按鈕以包含此信息。 – SBirthare

回答

0
using System.Data.SqlClient; 
SqlConnection conn = new SqlConnection(<connectionstring>); 
SqlCommand cmd = conn.CreateCommand(); 
cmd.CommandText = "SELECT * FROM table"; 
SqlDataAdapter da = new SqlDataAdapter(cmd); 
DataSet ds = new DataSet(); 
da.Fill(ds); 

現在您擁有一個包含查詢結果的數據集。至於確定你的,我建議Connection Strings作爲一個偉大的資源來挑選完美的格式。

+0

如果我嘗試從另一個遠程系統(即服務器)獲取數據,它將工作 –

+0

只有在網絡已配置爲允許您遠程訪問服務器時。我不會假裝知道足夠的知識來通過配置防火牆等來實現跨網絡的通信,但如果機器只是另一臺機器,則上述內容應該可以工作。 – Forty3

+0

是的,機器只是另一臺機器,用這個用戶名和密碼,他們已經授權我從服務器獲取數據。它也有SQL服務器2008作爲數據庫 –

0

凡在ConnectionString的你的是你的數據庫名稱使用System.Data.SqlClient的遠程服務器

上創建的; using system.Data;

string cs = Data Source=172.16.7.127\inhouse;database=databasename;User ID=User id create on remote server;Password= Your password for the ; 
SqlConnection conn = new SqlConnection(cs); 
SqlDataAdapter adp = new SqlDataAdapter("SELECT * FROM tableName",conn); 
DataSet ds = new DataSet(); 
adp.Fill(ds); 

現在你可以使用包含您的表

+0

謝謝R P.一切都被清除了。 –

相關問題