C#如何从服务器数据库中获取数据

时间:2009-11-20 02:20:50

标签: c# networking

如何从服务器数据库(SQL Server)获取数据?方案,客户端按下下载按钮,然后按下已查询的服务器(SELECT)中的数据,结果通过HTTP(Internet)发送到客户端。这样做的最佳方式是什么?

我的方式,我使用Web Service选择数据并将其发送到客户端(数据以字符串形式发送),我认为当我选择整个数据的问题时,这会使传输数据变慢,是真?

2 个答案:

答案 0 :(得分:1)

最简单的方法可能是通过.NET Web应用程序,尽管有许多其他语言的库,包括PHP。

例如,如果您有一个带有字段'query'的表单提交到此页面:

<%

// Get user's query
string query = Request.Form["query"]; // or Request.QueryString for data from the querystring

// Connect to the database    
string connString = "your connection string";
System.Data.SqlClient.SqlConnection conn = new System.Data.SqlClient.SqlConnection(connString);
System.Data.SqlClient.SqlCommand command = new System.Data.SqlClient.SqlCommand(query, conn);
// Read your data however you like
System.Data.SqlClient.SqlDataReader reader = command.ExecuteReader();

while (reader.Read()) {
    // Deal with your data here
    Response.Write(reader.GetString(0));
}

%>

输出数据的最简单方法是使用Response.Write(),但您也可以使用更复杂的控件。看起来您只需输出原始结果,因此Response.Write()可能效果最佳。

当然,您发送的数据越多,所需的时间就越长。但是,使用Web服务不应该比任何其他解决方案慢。

答案 1 :(得分:0)

  

我的方式,我使用Web Service选择数据并将其发送到客户端(数据以字符串形式发送),我认为当我选择整个数据的问题时,这会使传输数据变慢,是真?

是的,在任何情况下都不要写

Select * From TableName