第一次跟別人做東西,自己的一點經驗,寫下來,雖然比較菜,但還是要做點記錄,如有錯誤缺漏,請各位不吝賜教,謝謝: )
以前都是用asp.net 與sqlServer2000 結合做東西的,這次是用access,雖然是第一次用,但感覺與sqlServer2000的用法區別不大,以下對二者的用法做比較:
SqlServer2000:
1>命名空間
using System.Data;
2>連接語句等在之前的隨筆中有記錄,這裡不再記錄了。
using System.Data.SqlDb;
主要記錄Access用法:
1>命名空間:
using System.Data;
using System.Data.OleDb;
2>連接語句:
string conString="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=";
conString+=Server.MapPath(@"\Jlgps\DB\Jlgps.mdb");
//以上語句中,“@”表示絕對的字符串,也就是說"\"在這就不需用"\\"來表示了第一個"\"表示是從根目錄(如C:\Inetpub\wwwroot)下找"Jlgps"這個目錄,如果不加"\"表示從當前應用程序目錄下(Jlgps)找,那麼這裡就要寫成@"DB\Jlgps.mdb"了.建議用後者,前者取出來可能是絕對路徑,後者則是相對路徑,出錯幾率較小。
OleDbConnection con=new OleDbConnection(conString);
con.Open();//這樣數據庫連接完畢。
3>命令對象:
大致用法與sqlServer的相同,只是名稱有點變化:
sqlserver的以Sql開頭,如SqlCommand cmd=new SqlCommand();而access的都以 OleDb開頭,如:OleDbCommand,OleDbDataReader....等
4>涉及到access數據庫的用戶名和密碼的問題:
開始我的access的mdb文件沒有設置用戶名和密碼,用以上的連接語句可以連接成功,後來我想為了稍微安全點,想設置數據庫mdb文件的打開密碼,於是我便打開mdb文件,在"工具",-"安全"-"設置數據庫密碼"中設好了密碼,但是之後便連接不上數據庫,我便試著在連接語句中加類似SqlServer中的uid,pwd等,但都沒成功,最後經過一番嘗試,找到了一個解決問題的方法:不要在"工具",-"安全"-"設置數據庫密碼"中設置密碼,而是在"工具",-"安全"-
"用戶與組帳戶"中設置密碼即可,這樣,既實現了打開mdb文件時要輸入密碼,而數據庫連接語句還是原來的,不要做任何改動即可連接數據庫。
5>Access的字段類型問題,Access的字段類型與OleDbType的類型很難一一吻合,那麼取相似的即可,比如access中的備注型,那麼就在OleDbType中用LongVarchar即可。比如:
OleDbParameter para=new OleDbParameter("@proFun",OleDbType.LongVarChar);
para.Value=myaddPro.proFun;//一個產品對象的功能描敘參數,備注型
cmd.Parameters.Add(para);
http://lj821022.cnblogs.com/archive/2006/05/04/391401.html