转载C#操作数据库小结
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#操作数据库小结的更多相关文章
- 【转载】java数据库操作
数据库访问几乎每一个稍微成型的程序都要用到的知识,怎么高效的访问数据库也是我们学习的一个重点,今天的任务就是总结java访问数据库的方法和有关API,java访问数据库主要用的方法是JDBC,它是ja ...
- C#用SQLDMO操作数据库----转载
C#用SQLDMO操作数据库 sqldmo.dll是随sql server2000一起发布的.sqldmo.dll自身是一个com对象 sqldmo(sql distributed managemen ...
- 0107 spring操作数据库的3个架子
背景 数据库开发是java的核心内容之一,基础就是jdbc了: 然而直接使用jdbc,需要写大量的try-catch-finally模板代码: 管理系统使用hibernate作为orm框架比较方便,遵 ...
- Asp.Net MVC 自定义的MVC框架(非EF操作数据库)
一些废话:在北京辞职回家不知不觉中已经半年多了,这半年中有过很多的彷徨,困惑,还有些小小难受.半年时间算是我人生以来遇到过的最困苦的时候.理想的工作跟我擦肩而过,驾照也没有考过,年后这一改革...,毕 ...
- 一次莽撞的行为:在phpmyadmin中修改MySQL root密码后无法操作数据库
一.手贱行为(✿◡‿◡) 在一次开发中通过xampp方式安装了PHP环境,需要操作数据库时通过phpmyadmin访问MySQL,在一次数据库操作时想起没有设置密码,于是直接在mysql数据库中的us ...
- Spring4.3.1 JDBCTemplate操作数据库
个人总结,转载请注明出处:http://www.cnblogs.com/lidabnu/p/5679354.html 基于Spring4.3.1官方文档总结,官方文档链接http://docs.spr ...
- iOS - SQLite Database 操作数据库
iOS - SQLite Database 操作数据库 Sqlite 能被用在ios上做数据处理用,只要你懂得一点sql 就很容易使用sqlite 1:创建一个简单的View based appl ...
- 通过MyEclipse工具直接操作数据库,执行sql语句,方便快捷
原文:通过MyEclipse工具直接操作数据库,执行sql语句,方便快捷 通过MyEclipse操作数据库,执行sql语句使我们不用切换多个工具,直接工作,方便快捷.效果如下: 步骤1:通过MyEcl ...
- Java数据库连接--JDBC基础知识(操作数据库:增删改查)
一.JDBC简介 JDBC是连接java应用程序和数据库之间的桥梁. 什么是JDBC? Java语言访问数据库的一种规范,是一套API. JDBC (Java Database Connectivit ...
随机推荐
- 解决 KendoUI TabStrip 高度 100% 问题
摘自: http://www.kendoui.com/forums/kendo-ui-web/tabstrip/forcing-tabstrip-to-take-up-100-of-it-s-pare ...
- Chrome DevTools快捷键
- LeetCode56:Jump Game
Given an array of non-negative integers, you are initially positioned at the first index of the arra ...
- Struts基本概念
内容源自: Struts2基本概念 一.struts2体系结构: 1.Web浏览器请求一个资源.2.过滤器Dispatcher查找方法,确定适当的Action.3.拦截器自动对请求应用通用功能,如验证 ...
- AWK 怎么读取标准输入(STDIN)
在 awk 系列中,我们将会看到几个例子,你可以筛选其他命令的输出代替从一个文件读取输入作为 awk 的输入.我们首先从使用 dir 命令开始,它类似于 ls 命令. 在第一个例子下面,我们使用 di ...
- Hibernate关系映射(一) 基于外键的单向一对一
模拟用户和地址的映射关系,一个用户只有一个地址,用户知道地址,但是地址不知道用户.用户对地址的单向一对一映射. 一.建立实体类 Account.cs类 package com.lxit.entity; ...
- Request常用方法
一.HttpServletRequest介绍 HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,通过这个对象 ...
- mui 页面跳转
1.初始化时创建子页面 mui.init({ subpages: [{ url: your - subpage - url, //子页面HTML地址,支持本地地址和网络地址 id: your - su ...
- python-__init__.py 与模块对象的关系
python中的Module是比较重要的概念.常见的情况是,事先写好一个.py文件,在另一个文件中需要import时,将事先写好的.py文件拷贝 到当前目录,或者是在sys.path中增加事先写好的. ...
- spring中的AOP 以及各种通知 配置
理解了前面动态代理对象的原理之后,其实还是有很多不足之处,因为如果在项目中有20多个类,每个类有100多个方法都需要判断是不是要开事务,那么方法调用那里会相当麻烦. spring中的AOP很好地解决了 ...