1、常用的T-Sql语句
      查询:SELECT * FROM tb_test WHERE ID='1' AND name='xia'
                SELECT * FROM tb_test
      插入:INSERT INTO tb_test VALUES('xia','123')
                  INSERT INTO tb_test(name) VALUES('xia') 
      更新:UPDATE tb_test SET password='234' WHERE ID='1' 
      删除:DELETE FROM tb_test WHERE ID='1'
                 DELETE tb_test WHERE ID='1'
2、在vs2010中获取数据库连接字符串
      string connectionString = Properties.Settings.Default.DatabaseTestConnectionString;
3、SqlCommand类型 
       查询:

      代码如下:

 using (SqlConnection connection = new SqlConnection(connectionString))
        {
              try
              {
                     SqlCommand command = new SqlCommand(selectStr, connection);
                     command.Connection.Open();
                     SqlDataReader reader = command.ExecuteReader();
                      while (reader.Read())
                              label1.Text = "name:" + reader["name"].ToString();    //数据读取
                      command.Connection.Close();
                }
               catch (SqlException ex)
               {
                     throw ex;
               }
        }

插入、修改、删除:

       代码如下:

 using (SqlConnection connection = new SqlConnection(connectionString))
        {
              try
              {
                     SqlCommand command = new SqlCommand(cmdStr, connection);
                     command.Connection.Open();
                     command.ExecuteNonQuery();
                     command.Connection.Close();
               }
               catch (SqlException ex)
               {
                     throw ex;
               }
       }

4、DataTable类型,查询、添加、修改、删除
      DataTable使用查询、添加、删除、修改时,需要用到SqlDataAdapter类
      string selectStr = "SELECT * FROM tb_test2";
      查询:
      代码如下:

 using (SqlConnection connection = new SqlConnection(connectionString))
       {
              try
              {
                     SqlDataAdapter adapter = new SqlDataAdapter(selectStr, connection);
                     DataTable dataTable = new DataTable();
                     adapter.Fill(dataTable);
                     //数据读取
                     label1.Text = dataTable.Rows[][].ToString();
               }
              catch (SqlException ex)
              {
                      throw ex;
               }
       }

添加:
      代码如下:

 using (SqlConnection connection = new SqlConnection(connectionString))
       {
            try
            {
                  SqlDataAdapter adapter = new SqlDataAdapter(selectStr, connection);
                  DataTable dataTable = new DataTable();
                  adapter.Fill(dataTable);
                   //添加数据
                  DataRow newRow = dataTable.NewRow();
                  newRow["id"] = "tesr";
                  newRow[";
                  dataTable.Rows.Add(newRow);
                  SqlCommandBuilder builder = new SqlCommandBuilder(adapter);
                  adapter.Update(dataTable); //更新到数据库
             }
             catch (SqlException ex)
             {
                  throw ex;
             }
       }

修改:
       代码如下:

 using (SqlConnection connection = new SqlConnection(connectionString))
       {
             try
             {
                   SqlDataAdapter adapter = new SqlDataAdapter(selectStr, connection);
                   DataTable dataTable = new DataTable();
                   adapter.Fill(dataTable);
                   //修改数据
                  DataRow updateRow = dataTable.Rows[];
                  updateRow["id"] = "update";
                  updateRow[";
                  SqlCommandBuilder builder = new SqlCommandBuilder(adapter);
                  adapter.Update(dataTable); //更新到数据库
             }
            catch (SqlException ex)
            {
                  throw ex;
            }
       }

删除:
     代码如下:

 using (SqlConnection connection = new SqlConnection(connectionString))
       {
             try
             {
                    SqlDataAdapter adapter = new SqlDataAdapter(selectStr, connection);
                    DataTable dataTable = new DataTable();
                    adapter.Fill(dataTable);
                    dataTable.Rows[].Delete(); //删除记录
                    SqlCommandBuilder builder = new SqlCommandBuilder(adapter);
                    adapter.Update(dataTable); //更新到数据库
              }
             catch (SqlException ex)
             {
                    throw ex;
             }
       }

5、DataSet类型
      DataSet操作跟DataTabel操作基本是一样的,只是DataSet可以储存有多个表格,所以就多做介绍了
6、个人总结
      个人感觉,用 SqlCommand比较灵活,而DataSet是实现ADO.NET断开式连接的核心,比较安全

转载C#操作数据库小结的更多相关文章

  1. 【转载】java数据库操作

    数据库访问几乎每一个稍微成型的程序都要用到的知识,怎么高效的访问数据库也是我们学习的一个重点,今天的任务就是总结java访问数据库的方法和有关API,java访问数据库主要用的方法是JDBC,它是ja ...

  2. C#用SQLDMO操作数据库----转载

    C#用SQLDMO操作数据库 sqldmo.dll是随sql server2000一起发布的.sqldmo.dll自身是一个com对象 sqldmo(sql distributed managemen ...

  3. 0107 spring操作数据库的3个架子

    背景 数据库开发是java的核心内容之一,基础就是jdbc了: 然而直接使用jdbc,需要写大量的try-catch-finally模板代码: 管理系统使用hibernate作为orm框架比较方便,遵 ...

  4. Asp.Net MVC 自定义的MVC框架(非EF操作数据库)

    一些废话:在北京辞职回家不知不觉中已经半年多了,这半年中有过很多的彷徨,困惑,还有些小小难受.半年时间算是我人生以来遇到过的最困苦的时候.理想的工作跟我擦肩而过,驾照也没有考过,年后这一改革...,毕 ...

  5. 一次莽撞的行为:在phpmyadmin中修改MySQL root密码后无法操作数据库

    一.手贱行为(✿◡‿◡) 在一次开发中通过xampp方式安装了PHP环境,需要操作数据库时通过phpmyadmin访问MySQL,在一次数据库操作时想起没有设置密码,于是直接在mysql数据库中的us ...

  6. Spring4.3.1 JDBCTemplate操作数据库

    个人总结,转载请注明出处:http://www.cnblogs.com/lidabnu/p/5679354.html 基于Spring4.3.1官方文档总结,官方文档链接http://docs.spr ...

  7. iOS - SQLite Database 操作数据库

    iOS - SQLite Database 操作数据库   Sqlite 能被用在ios上做数据处理用,只要你懂得一点sql 就很容易使用sqlite 1:创建一个简单的View based appl ...

  8. 通过MyEclipse工具直接操作数据库,执行sql语句,方便快捷

    原文:通过MyEclipse工具直接操作数据库,执行sql语句,方便快捷 通过MyEclipse操作数据库,执行sql语句使我们不用切换多个工具,直接工作,方便快捷.效果如下: 步骤1:通过MyEcl ...

  9. Java数据库连接--JDBC基础知识(操作数据库:增删改查)

    一.JDBC简介 JDBC是连接java应用程序和数据库之间的桥梁. 什么是JDBC? Java语言访问数据库的一种规范,是一套API. JDBC (Java Database Connectivit ...

随机推荐

  1. OpenShift应用镜像构建(1) S2I tomcat 镜像定制

    参考并感谢https://www.jianshu.com/p/fd3e62263046 在对接项目制作应用镜像的过程中,经常发现避免不了的是需要写Dockerfile,(当然另外一种方式是直接run一 ...

  2. sudoers文件属性的修改导致sudo命令失效

    1.sudoers文件属性为440 -r--r-----. 1 root root 4033 Dec 28 18:57 sudoers 2.如果修改sudoers文件属性,就会导致sudo命令不可用, ...

  3. requests.exceptions.SSLError: hostname '127.0.0.1' doesn't match None

    http://stackoverflow.com/questions/33429453/python-requests-ssl-hostname-doesnt-match-error http://w ...

  4. ab并发负载压力测试

    一.ab 0.安装ab压力测试软件 [root@a2 conf]# yum install httpd-tools -y #查看版本 [root@a2 conf]# ab -V This is Apa ...

  5. 算法之排序Low B三人组

    有序区:有的地方的数据已经完全变得有顺序,我们把这部分区域的数据成为有序区无序区:有的地方的数据依旧无序,我们把这部分数据成为无序区时间复杂度:用来估计算法运行时间的一个式子(单位)空间复杂度:用来评 ...

  6. Cocos2d-x3.0游戏实例之《别救我》第七篇——物理世界的碰撞检測

    事实上我也非常吃惊-居然写到第七篇了,我估计也就是四篇的内容,感觉非常奇妙,我也不会非常唠叨什么吖);    // 0001 );   // 0001 ); // 0001 这样我们才干监听到它们的碰 ...

  7. phpcms的后台网站直接访问正常,百度快照收录链接访问跳转到非法网站

    问题:    phpcms制作的网站直接访问正常,百度快照收录链接访问跳转到非法网站 百度快照收录网站域名,访问时自动跳转到一个非法网站 检查静态页index.html,index.php 网页内引用 ...

  8. angular 的进一步深入理解

    早上同事问我个问题,angular 的表单验证有没有啥第三方库可以用? 这个问题,我想了下,之前我做的表单验证好像也没用到第三方的库来验证,直接用angular 内置的 directive 就可以搞定 ...

  9. redis3.0.6安装配置

    运行linux客户端 1     安装依赖 yum install gcc-c++ -y(安装gcc) 2     创建安装目录.编译.安装 mkdir -p /usr/local/redis(创建安 ...

  10. Table分页显示调整

    这是table分页显示的代码,下面是对应调整的代码 /*分页调整*/ .fenye .dataTables_info{ line-height: 28px; } .fenye .pagination{ ...