先從資料庫中取出結果集後進行處理資料後再update更新到資料庫。
如果只想讀取和顯示資料,只需要使用資料讀取sqldatareader即可,但要處理資料然後更新資料庫(增加、更改),局需要資料集dataset和資料介面卡sqldataadaper。
sqldataadapter的用法:
讀取資料用sqldatareader是固定的,但是處理資料分為兩種情況。
一、直接拼sql語句,適用於簡單的表。
二、用引數——用sqldataadaper適用於複雜的表。帶引數方便進行型別轉換。其中刪除一條記錄不用帶引數,直接拼sql語句,cmd.executenonquery()即可。
定義個全域性變數 private sqlconnection m—con =null;然後在方法內部 m-con = new 出來,斷開式連線體現在之後使用只要m-cn.open();j即可開啟。
資料庫連線方法:
public bool db_check()
catch
return flag;
}
一、c#連線sql資料庫**:
public datatable read()
conn.connectionstring=connectionstring;
conn.open();
trymyreader.close();
conn.close();
}catch(exception ex)
return dt;
}
二、command物件
1、sqlcommand cmd = new sqlcommand(sqltext,conn);//讀取資料,要和sqldataadapter連用,再和executereader或executescalar連用
2、sqlcommand用法有executenonquery、executereader、executescalar三種,其中executrreader(所有查詢),executescale(首行首列查詢)
executenonquery為執行t-sql語句;如果乙個類有多條sql語句要執行用三句這個(等同於1)
sqlcommand cmd = con,createcommand();
cmd.commandtest="create table tab_name(name varchar(20),password varchar(20))";
cmd.executenonquery();
如果乙個類只有乙個sql語句要執行,使用(1),與executereader、executescalar相匹配,三句與executenonquery相匹配;
三、關於資料讀取器 sqldatareader物件,他是和sqlcommand cmd =new sqlcommand(sqltext,con)它連用的
1、只讀取資料:
sqlcommand cmd = new sqlcommand("select * from tab_name",conn);
sqldatareader myreader = cmd.executereader();//執行sql
while(myreader.reade())
2、getschematable方法,返回乙個已經填充的datatable例項(可以一次讀出完整表的內容)
datatable schema=reader.getschematable();
foreach(datarow row in schema.rows)
foreach(datacolumn col in schema.columns)
console.writeline(col.columnname+"="+row[col});
四、資料介面卡:sqldataadapter
sqldataadapter da = new sqldataadapter();
da.fill();
da.selectcomand=new sqlcommand(sqltext,con);
datatable dt new datatablae();
dt.select(where 條件,公升降序);
填充資料集有兩種方法:
:使用資料介面卡
:從xml文件中讀取資料
sqldataadapter da =new sqldataadapter();
da.selectcommand =new sqlcommand(sqltext,con);
dataset ds =new dataset();
da.fill(ds,"tab_name");//fill方法內部使用資料讀取器訪問表模式和資料,然後使用他們填充資料集
資料集的篩選和排序
datatablecollection dtc =ds.tables;//通過這句把dataset中的所有表都給了table表集合
//以下兩句是篩選條件
string fl ="country='germany'";//where 條件
string srt ="companyname asc"; //降序
foreach(datarow row in dtc["customers"].select(fl,srt))//這是用法,dtc表集合中的customers表 .select() 就是篩選條件
c 運算元據庫
namespace ec region sql資料庫備份 sql資料庫備份 sql伺服器ip或 localhost 資料庫登入名 資料庫登入密碼 資料庫名 備份到的路徑 public static void sqlback string serverip,string loginname,strin...
C 運算元據庫
先上 using system using system.collections.generic using system.linq using system.text using system.threading.tasks using system.data using system.data....
C 運算元據庫
引入標頭檔案 using mysql.data.mysqlclient 連線操作 string constr database test007 data source 127.0.0.1 port 3306 user id root password root mysqlconnection con...