数据库和VS的连接,实现数据的同步,让用户的一切信息都可以在数据库中留下记录。

ADO.NET基础

     它是连接所有数据库的一种特殊的技术,提供对不同的数据库统一操作接口。

在VS中也可以添加数据库,也可以在其中使用SQL语句,不需要在sql数据库中创建,这样用起来就特别方便,便于数据库的快速读取。<基于服务的数据库> 

      在VS中创建的mdf和数据库中的一样,它跟随着项目走,用起来方便运行时会自动附加(Attach)。打包时首先关闭mdf与数据库的连接,才行。

{ado.net提供两个组件可以使得程序访问和处理数据  1:.NET Framework数据提供程序和DataSet(数据集)}

其中.NET Framework数据提供程序是专门为数据处理,以及快速的只进,只读访问数据设计的组件,使用其可以连接到数据库,执行命令和检索结果,直接对数据库进行操作等。而DataSet则是专门为独立于任何数据源而设计的,使用其可以不直接与数据库打交道,可以大批的处理数据,也可以将数据绑定在控件上面。

   【现在运行的SQL数据库在VS中就得使用System.Data.SqlClient命名空间代码】

**.NET Framework数据提供程序的4个核心对象

         1:Connection对象  用于与特定数据源的联系。

         2:Command对象   用于对数据源执行命令。

         3:DataReader对象  用于从数据源中读取只进且只读的数据源。

         4:DataAdapter对象 用于用数据源填充DataSet并解析更新。

连接SQL Server

   程序通过在vs的服务器资源管理器来连接SQL数据库的信息。示例如下

一: 视图----服务器资源管理器

二:服务器资源管理器------右键-----添加连接 [在选择如下图到---------添加连接窗口]示例如下

三:添加连接------执行下面的步骤(切记一定要先测试,还有本地的服务器名为:‘.’或者为:‘local’)

四:这样就在右边的服务器资源管理器中可以找到自己要添加的数据库啦。

代码访问到SQL

在vs代码中操作数据库表中的数据,我们可以通过下面的代码来进行;

首先创建个控制台程序的项目,我们在其中加入如下的代码。

连接数据库的三步骤  [一二部可以交换]

   1:定义连接字符串。{不同的数据库的连接字符串的格式有所不同}。

    “sql数据库的格式”

    string  connString= Data Source=服务器名;Initial Catalog=数据库名;User ID=用户名;Pwd=密码;

   2:创建Connection对象,使用定义好的连接字符串来创建Connection对象。

    SqlConnection connection=new SqlConnection(connString);

3:打开数据库的连接。调用Conncection对象的Open()方法打开数据库连接

    connection.open();

到这里数据库就算是连接成功了,下来我们就可以进行对数据库的操作了。

eg :

static void Main(string[] args)
  {
      //数据库连接字符串
      string connString = "Data Source=zhanghui;  Initial Catalog=Ahui;  User ID=sa; Pwd=111";
      //创建数据库连接
      SqlConnection conn=new SqlConnection(connString);
      //打开数据库
      conn.Open();
      Console.WriteLine("打开成功");
      Console.ReadKey();

认识Command对象

建立数据库连接,打开数据库后,操作数据库就用到了Commamd对象(Command:命令),使用Command对象可以对数据库执行增删改查的命令。

要使用Command对象,必须有一个可用的Command对象

Command的四步骤

1:创建数据库连接

2:定义执行的SQL语句,需要将对数据库执行的SQL语句赋值给一个字符串。

3:创建Command对象,使用已有的Connection和SQL语句字符串来创建Command对象。

4:执行SQL语句。调用Command对象的某个命令来执行命令。

eg  one  :

private void btnConnection_Click(object sender, EventArgs e)
{
    //数据库连接字符串
    string connString = "Data Source=zhanghui;Initial Catalog=Ahui;User ID=sa;Pwd=111";
    //创建数据库的连接
    SqlConnection connection = new SqlConnection(connString);
   //打开数据库
     connection.Open();
   //使用command对象可以对数据库执行增删改查的命令。   
    using (SqlCommand cmd=connection.CreateCommand())       //CreateParameter为创建SqlParameter对象的新实例。
        {
            cmd.CommandText = "Insert into Student(Name,Age,Gender,Math,Chinese) values('abc',18,'女',100,'日本')";

//CommandText:获取或设置要对数据源执行的Transact-SQL语句或存储过程
            cmd.ExecuteNonQuery();            //对Connection执行Transant-SQL语句并返回受影响的行数。
            MessageBox.Show("插入成功");
        }
   
         MessageBox.Show("成功");

eg two:

在一个表中插入数据。之后显示插入成功。

eg:

Console.WriteLine("请输入用户名");
string username = Console.ReadLine();
Console.WriteLine("请输入密码");
string password = Console.ReadLine();
//数据库连接字符串
string connString = "Data Source=zhanghui;  Initial Catalog=Ahui; User ID=sa;Pwd=111";
//创建数据库连接
SqlConnection conn = new SqlConnection(connString);
conn.Open();                     //打开数据库;
using (SqlCommand ked = conn.CreateCommand())
{
    ked.CommandText = "Insert into Student(Name,Age)    values('  " + username + "  ', '  " + password + "  ')";
    ked.ExecuteNonQuery();
    Console.WriteLine("插入成功");
}
Console.WriteLine("打开数据库连接成功");
Console.ReadKey();

eg three:

在前台显示数据库中的数据。

eg:

string connString = "Data source=zhanghui;  Initial Catalog=Ahui;  User ID=sa;  Pwd=111";
SqlConnection conn = new SqlConnection(connString);
conn.Open();
using (SqlCommand ka = conn.CreateCommand())
{
    ka.CommandText = "select * from Student";
    using (SqlDataReader reader = ka.ExecuteReader())
    {
        while (reader.Read())
        {
            //  int kk = Convert.ToInt32(reader.GetInt32(1));

Console.WriteLine(reader.GetString(reader.GetOrdinal("Name")));
        }
    }

}
Console.WriteLine("ok");
Console.ReadKey();

今天就记录到这,明天继续,加油。终有一天会成为大神。

 

ADO.NET基础03的更多相关文章

  1. javaSE基础03

    javaSE基础03 生活中常见的进制:十进制(0-9).星期(七进制(0-6)).时间(十二进制(0-11)).二十四进制(0-23) 进制之间的转换: 十进制转为二进制: 将十进制除以2,直到商为 ...

  2. javascript基础03

    javascript基础03 1. 算术运算符 后增量/后减量运算符 ++ ,-- 比较运算符 ( >, <, >=, <=, ==, !=,===,!== ) 逻辑运算符( ...

  3. .Net Core 系列:2、ADO.Net 基础

    目录: 1.环境搭建 2.ADO.Net 基础 3.ASP.Net Core 基础 4.MD5.Sha256.AES 加密 5.实现登录注册功能 6.实现目录管理功能 7.实现文章发布.编辑.阅览和删 ...

  4. 有关ADO.NET基础中的基础的熟悉过程

    现在对于ADO.NET基础的理解与记忆并不严谨和完善 所以,只写一点关于自己的理解,嗯,一种去转换思维理解的方法吧,算是吧 希望各位前辈或者同学,积极指出其中的错误和偏差 个人对于刚接触的ADO.NE ...

  5. 如鹏网学习笔记(六)ADO.Net基础

    ADO.Net基础 一.ADO.Net简介 1,程序要通过SQL语句自动化的操作数据库,必须要用一个类库, 类库要提供execute("insert into ...")/exec ...

  6. ADO.NET基础开发

    ADO.NET是微软新一代.NET数据库的访问架构,ADO是ActiveX Data Objects的缩写.ADO.NET是数据库应用程序和数据源之间沟通的桥梁,主要提供了一个面向对象的数据访问架构, ...

  7. 086 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 03 面向对象基础总结 01 面向对象基础(类和对象)总结

    086 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 03 面向对象基础总结 01 面向对象基础(类和对象)总结 本文知识点:面向对象基础(类和对象)总结 说明 ...

  8. day33-线程基础03

    线程基础03 6.用户线程和守护线程 用户线程:也叫工作线程,当线程的任务执行完或者通知方法结束.平时用到的普通线程均是用户线程,当在Java程序中创建一个线程,它就被称为用户线程 守护线程(Daem ...

  9. ADO.NET基础巩固-----连接类和非连接类

          最近的一段时间自己的状态还是不错的,早上,跑步,上自习看书,下午宿舍里面编程实战,晚上要么练习代码,要么去打球(在不打就没机会了),生活还是挺丰富的. 关于C#的基础回顾就先到前面哪里,这 ...

随机推荐

  1. 人人都是 DBA(XIII)索引信息收集脚本汇编

    什么?有个 SQL 执行了 8 秒! 哪里出了问题?臣妾不知道啊,得找 DBA 啊. DBA 人呢?离职了!!擦!!! 程序员在无处寻求帮助时,就得想办法自救,努力让自己变成 "伪 DBA& ...

  2. Zookeeper--Zookeeper是什么

    Google的三篇论文影响了很多很多人,也影响了很多很多系统.这三篇论文一直是分布式领域传阅的经典.根据MapReduce,于是我们有了Hadoop:根据GFS,于是我们有了HDFS:根据BigTab ...

  3. (转)Babel-现在开始使用 ES6

    在 2 月 20 号 ECMAScript 第六版就正式推出了,这门语言一直保持稳定快速的发展而且新功能也在慢慢被现在主流的 JavaScript 引擎所接受.不过要想在浏览器端或者 Node 端直接 ...

  4. css position全解析

    1.position:static 所有的元素的默认定位都是position:static,这意味着元素没有被定位,而且在文档中出现在它应该在的位置. 2.position:relative 如果设定 ...

  5. Linux date命令

    命令概述 date命令可以用来设置和显示系统当前时间,特别是在有一些Shell命令里面用到date命令来做日期的不同的显示,所以该命令也是非常需要掌握的一个命令. 语法 date [OPTION].. ...

  6. [异常解决] MPU6050启动异常读出陀螺仪和加速度计的值全为0的解决办法

    在调试一个自己做的手环,每次用keil烧写好程序运行的蓝牙.陀螺仪都是正常的.但是掉电再上电之后蓝牙是好的.陀螺仪可以读出ID但是读出的加速度和角速度数据全为0. 下面是发生问题时main函数的前面部 ...

  7. [蓝牙] 4、Heart Rate Service module

    Detailed Description Heart Rate Service module. This module implements the Heart Rate Service with t ...

  8. WKInterfaceImage 无法更新图片的问题

    最近涉及到AppleWatch的相关项目,但有个奇怪问题无法解决,而且无法理解: 根据不同的用户操作,需要修改播放器的专辑图片. 不知道跟我的项目需求是不是有关系:我需要轮询共享空间,以拿取同步数据, ...

  9. 上学时的HTML+JS+CSS(小总结)

    html:超文本标记语言 基本标签: { 文本标签:<pre></pre>:原封不动的保留空白区域.      <br />:换行.      <hr wid ...

  10. Excel批量插入多行

    在一个表中插入10行空行,你是不是这样做的:选取要插入的位置 - 右键插入行.重复插入10次.如下图所示: 其实插入多行是可以一次完成的,方法是:你需要插入多少行,就向下选取多少行再插入.如下图所示: