asp.net串連查詢SQL資料庫並把結果顯示在網頁上(2種方法)

來源:互聯網
上載者:User

在ASP.NET中,使用C#串連SQL資料庫,並使用SQL語句查詢,以前從來沒有接觸過C#,最近用到了,摸索了兩天終於運行起來了,Mark一下,不喜勿噴

有兩種方法:(說的是第一種方法不安全,我也不清楚^_^)
第一種方法複製代碼 代碼如下://建立ASP.NET Web 應用程式,直接在Page_load函數中加入一下代碼,貌似就可以用了
public void Page_Load(object sender, EventArgs e)
{
using (SqlConnection con = new SqlConnection("Data Source=.;uid=sa;pwd=sa;Database=NorthWind"))
{
string username = "forever";
string strSQL = "select * from table where name='" + username + "'";
SqlDataAdapter adapter = new SqlDataAdapter(strSQL, con);
DataSet ds = new DataSet();
adapter.Fill(ds);
foreach (DataRowView drv in ds.Tables[0].DefaultView)
{
Response.Write(drv["第一個欄位"]+"|"+drv["第二個欄位"]);
}
}
}

第二種方法說的比較安全,就是比較麻煩 複製代碼 代碼如下://1、修改Web.config設定檔
<configuration>
<connectionStrings>
</connectionStrings>
//下面三行是添加的內容,即串連資料庫的資訊
<appSettings>
<add key="connect" value="server=.;database=NorthWind;uid=sa;pwd=sa;"/>
</appSettings>
<system.web>
//2、串連資料庫
sCon = ConfigurationManager.AppSettings["connect"];
if (string.IsNullOrEmpty(sCon))
{
Response.Write("連接字串為空白!");
}
con = new SqlConnection(sCon);
//3、開啟資料庫
if (con.State == ConnectionState.Closed)
con.Open();
//4、查詢函數
public SqlDataReader ExcuteDataReader(string strTxt, CommandType cmdType, SqlParameter[] Params)
{
SqlDataReader dr = null;
if (con.State == ConnectionState.Closed)
{
Response.Write("資料庫的串連沒有開啟!");
return dr;
}
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = strTxt;
cmd.CommandType = cmdType;
if (Params != null)
{
foreach (SqlParameter param in Params)
{
if (param != null) cmd.Parameters.Add(param);
}
}
#if NOTALLOWEXCEPTION
try
#endif
{
if (cmd.ExecuteScalar() != null)
{
dr = cmd.ExecuteReader();
}
}
#if NOTALLOWEXCEPTION
catch(SqlException se)
{
_objToShowErr = se;
_sError = se.Message;
return null;
}
finally
#endif
{
cmd.Dispose();
}
return dr;
}
//5、執行查詢
//SQL語句,id=N'id',加個N是為了能識別中文字元。
string s = "select * from table where id=N'" + id + "'";
SqlParameter[] Params1 = null;
//儲存結果
SqlDataReader select_result = null;
select_result = a.ExcuteDataReader(s, CommandType.Text, Params1);
string ss = "";
while (select_result.Read())
{
//根據自己的欄位數寫
ss = ss + "第一個欄位:" + select_result[0] + ", 第二個欄位:" + select_result[1] + "; ";
}
//測試輸出
Response.Write(ss);

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.