【ADO.NET】1、簡單配置與使用
阿新 • • 發佈:2017-05-11
字符串 文件中 .exe 增加 獲取字符串 pass 數據庫連接 rect manage 1、一些基礎的知識點
ExecuteReader(); //返回查詢到的數據,一次一行,用於 select
ExecuteNonQuery(); //返回影響的行數,用於 delete,insert,update
ExecuteScalar(); //返回第一行,第一列的數值,類型為 Object,用於查詢 最大值,絕對值,統計數據...等
---------------
using() 的使用
---------------
using() 用於對資源的釋放,當程序運行到using以外,資源將自動釋放,相當於 conn.Dispose()
using在出了作用域以後調用Dispose,Dispose內部會做這樣的判斷:有沒有close,沒有就先close再Dispose
conn.Open() 打開連接
conn.Close() 關閉連接,關了還可以打開
conn.Dispose() 銷毀連接,銷毀後無法再打開
using(SqlConnection conn = new SqlConnection("server=.;database=mytest;uid=sa;pwd=gao;")) { conn.Open(); } Console.WriteLine("打開數據庫連接成功"); Console.ReadKey();
---------------------------
將連接字符串放到配置文件中
---------------------------
在app.config 或 web.config中,加入如下
<connectionStrings> <add name="ConnStr" connectionString="server=.;database=mytest;uid=sa;pwd=gao"/> </connectionStrings>
增加引用: System.configuration
增加命名空間:using System.Configuration;
string Str = ConfigurationManager.ConnectionStrings["ConnStr"].ConnectionString; //獲取字符串 SqlConnection conn = new SqlConnection(Str); //調用字符串
2、讀取指定多列值
using (SqlConnection conn = new SqlConnection("Data Source=.;database=mytest;uid=sa;pwd=gao;")) { conn.Open(); using (SqlCommand cmd = conn.CreateCommand()) { cmd.CommandText = "select * from mydo"; using (SqlDataReader dr = cmd.ExecuteReader()) { while (dr.Read()) { int dbId = dr.GetString(dr.GetOrdinal("id")); //獲取ID列值 string dbName = dr.GetString(dr.GetOrdinal("username")); //獲取username string dbPwd = dr.GetString(dr.GetOrdinal("passwd")); //獲取passwd Console.WriteLine("ID={0},UserName={1},Passwd={2}",dbId,dbName,dbPwd); } } } }
3、ExecuteScalar() 的使用
返回第一行,第一列的數值,類型為 Object
using (SqlConnection conn = new SqlConnection("Data Source=.;database=mytest;uid=sa;pwd=gao;")) { conn.Open(); using (SqlCommand cmd = conn.CreateCommand()) { cmd.CommandText = "select count(*) from mydo"; //統計行數 Console.WriteLine(Convert.ToString(cmd.ExecuteScalar())); //返回第一行,第一列 } }
顯示新插入的主鍵值
using (SqlConnection conn = new SqlConnection("Data Source=.;database=mytest;uid=sa;pwd=gao;")) { conn.Open(); using (SqlCommand cmd = conn.CreateCommand()) { cmd.CommandText = "insert into T_User(Name,Pwd) output inserted.Id values(‘admin‘,‘1234‘)"; int id = Convert.ToInt32(cmd.ExecuteScalar()); Console.WriteLine("新插入的主鍵值:{0}",id); } }
ADO.NET 獲得SQL 的OutPut和ReturnValue
// 設置參數為 OutPut 參數 cmd.Parameters.Add("@Amount", SqlDbType.Decimal).Direction=ParameterDirection.Output; // 設置參數為 RetrunValue cmd.Parameters.Add("@Amount", SqlDbType.Decimal).Direction=ParameterDirection.ReturnValue; // 獲得輸出參數值 cmd.Parameters["@Amount"].Value;
【ADO.NET】1、簡單配置與使用