初始化準備:
Employees emps = new Employees();
int empID;
1. 獲取表中的所有數據行:
emps.LoadAll();
2. 根據主鍵獲取一行數據:
emps.LoadByPrimaryKey(empID);
3. 插入一行:
emps.AddNew();
emps.LastName = "Smith";
emps.HireDate = DataTime.Now;
emps.Save();
empsID = emps.EmplyeeID;//插入后返回主鍵值。
上面是dOOdad文檔給出的例子,但是我調用Save方法插入數據庫沒有問題,但是獲取主鍵值會拋出異常。默認生成的代碼沒有將ID作為輸出參數,所以emps.EmplyeeID仍然為空,不能轉換成int。更正如下:
//在dOOdad生成業務實體抽象類Employees的GetInsertCommand()方法中加一條語句:
CreateParameters(cmd);
cmd.Parameters["@ID"].Direction = ParameterDirection.Output;//要加入的語句
return cmd;
4. 刪除一行:
//先定位到要刪除的行(參考6.12 設置當前行)
emps.MarkAsDeled();
emps.Save();
5. 更新一行:
//先定位到要更新的行
emps.LastName = "Jones";
emps.Save();
6. 獲取表中的行數:
emps.RowCount;
7. 遍歷表中所有的數據行:
if(emps.RowCount>0)
{
emps.Rewind();//使當前行指向第一行
do
{
//自定義操作
}while(emps.MoveNext());
}
8. 設置排序表達式:
emps.Sort = Employees.ColumnNames.LastName + " DESC";
9. 設置過濾/選擇表達式:
emps.Filter = Employees.ColumnNames.LastName + " LIKE A%";
10. 對列進行操作(只是在應用程序的DataSet中進行,修改不會被保存進數據庫):
1) AddColumn
2) SetColumn
3) GetColumn
4) IsColumnNull
5) SetColumnNull
6) Example:
if(emps.LoadAll())
{
DataColumn col = emps.AddColumn("FullName", Type.GetType("System.String"));
col.Expression = Employees.ColumnNames.LastName + "+ ', ' + " + Employees.ColumnNames.FirstName;
string fullName = emps.GetColumn("FullName") as string;
}
11. 關于連接字符串:
上面講到,可將連接字符串保存到配置文件并賦給dbConnection鍵值;其實可以在運行時對字符串進行賦值:
emps.ConnectionString = "User=me;Password=pw;Database=Employees;DataSource=MyServer";
12. 設置當前行:
當要修改或刪除一行時,該行必須被指定為當前行,可以通過如下幾種方法來實現:
1). LoadAll()或Query.Load():將當前行指向第一行;
2). LoadByPrimaryKey:將當前行指向返回的行;
3). AddNew() 在插入數據庫之前,當前行指向正在操作的新行;
4). Rewind()和MoveNext():Rewind()后當前行指向第一行,MoveNext()移動到下一行;

浙公網安備 33010602011771號