c#連接mdf文件示例分享
C#連接本地.mdf文件:項目中右鍵點擊,新增——數(shù)據(jù)——基于服務(wù)的數(shù)據(jù)庫,項目下直接生成.mdf數(shù)據(jù)庫文件,后臺(數(shù)據(jù)庫的寫入用參數(shù)傳遞):
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
namespace ADO.NET
{
class Program
{
static void Main(string[] args)
{
//SQLServer 附加mdf文件
string dataDir = AppDomain.CurrentDomain.BaseDirectory;
if (dataDir.EndsWith(@"\bin\Debug\") || dataDir.EndsWith(@"\bin\Release\"))
{
dataDir = System.IO.Directory.GetParent(dataDir).Parent.Parent.FullName;
AppDomain.CurrentDomain.SetData("DataDirectory", dataDir);
}
using (SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database1.mdf;Integrated Security=True;User Instance=True"))
{
conn.Open();
//寫入一條數(shù)據(jù)
string strUserName = "作業(yè)本";
string strPWD = "Ab123456";
using (SqlCommand sqlCmd = conn.CreateCommand())
{
sqlCmd.CommandText = "insert into Mytable1(Name,Password) values (@UserName,@PWD) ";//連接字符串進行參數(shù)化
SqlParameter[] sqlPara = new SqlParameter[] {
new SqlParameter("UserName",strUserName),
new SqlParameter("PWD",strPWD)
};
sqlCmd.Parameters.AddRange(sqlPara); //把Paramerter 數(shù)組參數(shù)添加到sqlCmd中
sqlCmd.ExecuteNonQuery();
Console.WriteLine("Insert OK");
}
//從表中讀取數(shù)據(jù)
string strRead = "SELECT ID, Name, Password FROM MyTable1 ";
using (SqlCommand sqlCmd = new SqlCommand(strRead, conn))
{
//sqlDataReader 逐行讀取數(shù)據(jù)
using (SqlDataReader sdr = sqlCmd.ExecuteReader())
{
while (sdr.Read())
{
int id = sdr.GetInt32(sdr.GetOrdinal("ID")); //sdr.GetOrdinal 獲取列的序號
string Name = sdr.GetString(sdr.GetOrdinal("Name"));
bool PWD = sdr.IsDBNull(sdr.GetOrdinal("Password"));
Console.WriteLine("ID:{0},Name:{1},PWD:{2}", id, Name, PWD);
Console.WriteLine(sdr.GetString(1));
}
}
}
conn.Close();//此處可以省略,Dispose()方法會自動檢查
}
}
}
}
相關(guān)文章
C#常見的幾種集合 ArrayList,Hashtable,List<T>,Dictionary<K,
本文對C#中常見集合ArrayList,Hashtable,List<T>,Dictionary<K,V>遍歷方法做了簡單的對比和介紹,有需要的朋友可以參考一下。2016-03-03