ASP.NET - 資料庫連線 (搭配Web.config設定連線字串)
Web.config 內設定連線字串:
<configuration>
<connectionStrings>
<!--連 Access 資料庫-->
<add name="accDB" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=X:\DB存放路徑\accDB.mdb;Persist Security Info=False" />
Source也可改成:|DataDirectory|accDB.mdb;
|DataDirectory|代表的是網站下的 App_Code 資料夾
///////連接有密碼保護的資料庫
<add name="accDB" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=X:\DB存放路徑\accDB.mdb;Persist Security Info=True;
Jet OLEDB:Database Password=資料庫密碼" />
<!--連 MS-SQL 資料庫-->
<add name="sqlDB" connectionString="data source=255.255.255.255;
user id=帳號; password=密碼; database=資料庫名稱" />
</connectionStrings>
</configuration>
---------------------------------
在程式內連線(C#):
/* 連 Access 資料庫 */
//取得設定在 Web.config 的 connectionStrings
string strConn = ConfigurationManager.ConnectionStrings["accDB"].ConnectionString;
//Insert、Update、Delete
OleDbConnection conn = new OleDbConnection(strConn);
conn.Open();
OleDbCommand oDBcomStr = new OleDbCommand();
oDBcomStr.Connection = conn;
oDBcomStr.CommandText = "SQL指令";
//oDBcomStr.Parameters.Add(new OleDbParameter("@Name", value));
oDBcomStr.ExecuteNonQuery();
//Select 取值
DataSet ds = new DataSet();
OleDbDataAdapter oDBda = new OleDbDataAdapter("SQL指令", strConn);
oDBda.Fill(ds, "自訂名稱");
Label1.Text = ds.Tables["自訂名稱"].Rows[0][1].ToString();
GridView.DataSource = ds.Tables["自訂名稱"];
GridView.DataBind();
conn.Close();
/*********
將參數與 OleDbCommand 或 OdbcCommand 搭配使用時,
加入 Parameters 集合的參數順序必須與預存程序中所定義的參數順序相符。
**********/
/*********************************************************/
/* 連 SQL-Server 資料庫 */
SqlDataSource conn = new SqlDataSource();
conn.ConnectionString = ConfigurationManager.ConnectionStrings["sqlDB"].ConnectionString;
conn.SelectCommand = "select指令";
conn.InsertCommand = "insert指令";
conn.UpdateCommand = "update指令";
conn.Insert(); //執行Insert
conn.Update(); //執行Update
//加參數
SqlCommand = "SELECT * FROM TABLE WHERE col = @col";
conn.SelectParameters.Add("col", 變數);
conn.InsertParameters.Add("col", 變數);
conn.UpdateParameters.Add("col", 變數);
//Select取值
DataView dv = (DataView)conn.Select(DataSourceSelectArguments.Empty); //執行Select
Label1.Text = dv.Table.Rows[0][0].ToString();
GridView1.DataSource = dv;
GridView1.DataBind();
沒有留言:
張貼留言