1、Ado.net是什么? 通过ado.Net技术,在程序中执行sql数据库的目的 把mdf文件附加到数据库中 不用的时候可以分离 2、神奇代码 加到main方法中 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); } 3、连接到SQLServer 连接字符串:程序通过连接字符串 指定要连哪台服务器上的、哪个实例的哪个数据库、用什么用户名密码等。 static void Main(string[] args) { //每次都复制过来即可(神奇代码) 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); } //项目内嵌mdf文件形式的链接字符串 using (SqlConnection conn = newSqlConnection(@"Datasource=.\SQLEXPRESS;AttachDBFilename=|DataDirectory|\Database1.mdf; Integrated Security=True;Userinstance=True")) //连数据库 “.\SQLEXPRESS”表示“本机上的SQLEXPRESS实例”,如果数据库实例名不是SQLEXPRESS,则需要修改。“Database1.mdf”为mdf的文件名。 AttachDBFilename=|DataDirectory|\Database1.mdf; 表示加入数据库文件,为当前目录下的Database1.mdf文件 如果加入的是其他文件则把文件的目录地址放到这里 SqlConnection类不存在,必须using或者ctrl+.(右键)解析 //ado.net中通过SqlConnection 类创建到SQLServer的链接,SqlConnection代表一个数据库链接,ado.net中的链接等资源都实现了IDisposable接口。 //可以使用using进行资源管理,出了using的{}区域资源链接就释放了,不用try-catch再close和dispose //后面的command和reader都可以用using进行资源释放 4、简单的insert语句: ExecuteNonQuery执行一个非查询语句 { conn.Open(); using (SqlCommand cmd = conn.CreateCommand()) //SqlCommand表示向服务器提交的一个命令(SQL语句等) { cmd.CommandText = "insert into MyTable1(Name)values('abc')"; //创建commandText,CommandText属性为要执行的SQL语句 cmd.ExecuteNonQuery(); // ExecuteNonQuery方法执行一个非查询语句(Update、Insert、Delete等) ExecuteNonQuery;返回值是执行的影响行数 Console.WriteLine("插入成功"); Console.WriteLine("打开数据库链接成功"); 5、 ExecuteScalar: using(SqlCommand cmd = conn.CreateCommand()) { //cmd.CommandText = "select count(*)from mytable1"; cmd.CommandText ="select count(*) from T_users"; Console.WriteLine(cmd.ExecuteScalar()); //返回mytable1中第一行第一列的数据 //得到自增字段的值 cmd.CommandText ="insert into T_Users (UserName,password) output inserted.idvalues('jiangshan','147258')"; int id =Convert.ToInt32(cmd.ExecuteScalar()); Console.WriteLine("插入的主键的值:{0}", id); } cmd.CommandText= "select count(*) from T_Users"; inti =Convert.ToInt32(cmd.ExecuteScalar()); ExecuteScalar方法用于执行查询,并返回查询所返回的结果集中第一行的第一列,返回值是object类型。 cmd.CommandText= "Insert into T_Users(UserName,Password) outputinserted.Id values('admin','888888')"; inti = Convert.ToInt32(cmd.ExecuteScalar()); 得到自动增长字段的主键值, 在values关键词前加上output inserted.Id,其中Id为主键字段名。 执行结果就是插入的主键值,用ExecuteScalar执行最方便。 向数据库中插入数据时不用插入id是多少,id是自动增长的 cmd.CommandText= "select getdate()"; DateTimedt =Convert.ToDateTime(cmd.ExecuteScalar()); 6、 ExecuteReader 执行查询:返回有多行结果集的用ExecuteReader SqlDataReaderreader = cmd.ExecuteReader();... while(reader.Read())数据库的遍历,只能一行一行的读,不能跳 { Console.WriteLine(reader.GetString(1)); }
ADO.NET入门
精选 转载上一篇:数据库查询优化原则
下一篇:数据库和ADO.NET

提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
ADO.NET 试卷
《ADO.NET 程序设计》期终试卷班级: 姓名: 学号: 成绩: 一、创建数据库 数据库名称是jsjyy09355 创建表
sql 控件 用户名 sql语句 数据库 -
关于ADO.NET
关于如何在.NET下连接SQL Server数据库的一些心得
职场 休闲 ADO.NET -
ado.net笔记
目录导包连接字符串连接对象执法者对象执法者的三个方法DataReader对象导包`bok;User ID
sql 连接字符串 导包 scala 数据库服务器 -
ADO.NET小结
一.用SqlConnection连接SQL Server 1..加入命名空间 using System.Data.SqlClient; 2.连接数据库 SqlConnection myConnection = new SqlConnection(); myConnection.ConnectionString = "user id=sa;password=sinofi
database security user string dataset sql server -
Ado.net事务sql 数据 资源管理器 隔离级别 共享锁