【第一次課】
一、表結構
商品表:products
列名 含義
pid 商品編号,主鍵、辨別列
pname 商品名稱
price 商品價格
pnum 商品數量
type 商品類型
time 進貨時間
--增加 insert
insert into products values('爽歪歪',2,100,'飲料',GETDATE())
--删除 delete
delete from products where pid=1
--修改 update
update products set pnum=pnum-1 where pid=1
二、連接配接資料庫的步驟
1、準備工作:引入工具包
using System.Data.SqlClient;
2、确定目标(連接配接字元串)
string constr="server=.;database=dbName;uid=sa;pwd=123";
3、修通道(連接配接對象)
SqlConnection con=new SqlConnection(constr);
4、打開通道
con.Open();
5、确定指令
string sql="";
6、雇人(指令對象)
SqlCommand cmd=new SqlCommand(sql,con);
7、執行指令
cmd.ExecuteNonQuery();
8、關閉通道
con.Close();
【第二次課】
資料查詢:
1、單值查詢(1行1列):一般用于聚合函數
SqlCommand.ExecuteScalar()
傳回查詢結果集中的第1行第1列,object類型
2、多值查詢(多行1列)
SqlCommand.ExecuteReader()
傳回讀取器對象,SqlDataReader類型
while(dr.Read())//前進到下一條記錄
{
//根據列名擷取資料,傳回object類型
object obj=dr["列名"];
}
3、多值查詢(多行多列)
ListView控件:清單視圖控件
1-Name:命名-lv+意義
2-View:用來設定ListView的視圖模式
LargeIcon-大圖示:預設為大圖示
SmallIcon-小圖示
List-清單
Details-詳細資訊:表格形式,可以顯示列标題
3-Columns:用來設定列标題集合
Text:該列顯示的标題文本
4-Items:表示ListView控件的所有項集合
5-ListViewItem類:表示ListView控件中的一項
使用ListView顯示資料:
1、設定View屬性為Details
2、通過Columns屬性,設定列标題
3、通過SqlDataReader對象,循環讀取資料
while(dr.Read())
{
//1-建立ListView的項(行),ListViewItem對象
ListViewItem item = new ListViewItem();
//2-指定該項各列的值:隻能是string類型的值
//第1列
item.Text = dr["列名"].ToString();
//其他列
item.SubItems.Add(dr["列名"].ToString());
//3-将該項添加到ListView的Items集合中
lvInfo.Items.Add(item);
}
SqlCommand指令對象的三個方法:
1、ExecuteNonQuery()
執行增、删、改語句,并傳回受影響的行數,類型為int
2、ExecuteScalar()
執行查詢語句,傳回結果集中的第1行第1列,類型為object
3、ExecuteReader()
執行查詢語句,傳回SqlDataReader對象,再根據SqlDataReader逐行讀取資料
注意:如果使用ExecuteNonQuery執行查詢語句,傳回結果為-1
【第三次課】
一、使用資料集與擴充卡進行查詢
1、資料集:DataSet,類似于資料庫,可了解為記憶體中的臨時資料庫
2、擴充卡對象:SqlDataAdapter,可以了解為運輸工具卡車
注意:該操作可以自動打開和關閉資料庫連接配接
二、DataGridView控件:網格控件,用來以表格的形式顯示資料
1、命名-dgv+意義
2、AutoGenerateColumns:設定是否允許DataGridView控件自動建立列(true-允許,false-不允許)
3、添加列,編輯列
3-1、HeaderText:設定列标題
3-2、DataPropertyName:設定該列顯示資料庫中哪列值,列名
4、DataSource:設定顯示的資料源