C#连接SQL Server数据库进行简单操作[转]
环境:VS2010 + SqlServer 2008
首先,按照面向对象的程序设计思想,设计一个数据库操作工具类MyTool.cs,该类中封装了关于数据库连接和操作的方法,各个功能模块在需进行数据库操作时只需调用相应的函数

//引入的命名空间
using System.Data.SqlClient;//用于SQL Sever数据访问的命名空间
using System.Data; //DataSet类的命名空间
using System.Windows.Forms; //DataGridView控件类的命名空间 //执行指定的SQL命令语句(insert,delete,update等),并返回命令所影响的行数
public static int executeCommand(string sqlStr)
{
SqlConnection sqlConnection1 = new SqlConnection("server=dell-PC;database=11071312HotelSys;uid=sa;pwd=xiaoyi9421");//创建数据库连接(字符串中是我个人的数据库信息)
sqlConnection1.Open(); //打开数据库连接
SqlCommand sqlCommand1 = new SqlCommand(sqlStr, sqlConnection1); //执行SQL命令
int Succnum = sqlCommand1.ExecuteNonQuery();
return Succnum;
} //查询(select)指定的数据记录(多行多列),并填充到数据控件DataGridView中
public static void queryDataToGrid(string sqlStr, DataGridView dataGridView1)
{
SqlConnection sqlConnection1 = new SqlConnection("server=dell-PC;database=11071312HotelSys;uid=sa;pwd=xiaoyi9421");//创建数据库连接
SqlDataAdapter sqlDataAdapter1 = new SqlDataAdapter(sqlStr, sqlConnection1);//利用已创建好的sqlConnection1,创建数据适配器sqlDataAdapter1
DataSet dataSet1 = new DataSet(); //创建数据集对象
sqlDataAdapter1.Fill(dataSet1); //执行查询,查询的结果存放在数据集里
dataGridView1.DataSource = dataSet1.Tables[0]; //把数据集中的查询结果绑定到dataGridView1中
} //查询(select)指定的数据(单个数据,假设为string类型),并返回
public static string queryData(string sqlStr)
{
SqlConnection sqlConnection1 = new SqlConnection("server=dell-PC;database=11071312HotelSys;uid=sa;pwd=xiaoyi9421");//创建数据库连接
SqlDataAdapter sqlDataAdapter1 = new SqlDataAdapter(sqlStr, sqlConnection1);//利用已创建好的sqlConnection1,创建数据适配器sqlDataAdapter1
DataSet dataSet1 = new DataSet(); //创建数据集对象
sqlDataAdapter1.Fill(dataSet1); //执行查询,查询的结果存放在数据集里
return dataSet1.Tables[0].Rows[0]["列名"].ToString(); //把查询结果的第一行指定列下的数据以string类型返回
}

当在各个功能模块中需要进行数据库操作时,只需指定要执行的SQL语句,调用一下数据库工具类中的方法即可实现,下面给了一些基本的的SQL操作(单表)

//增
sqlStr = "insert into 表名( 列名1 , 列名2 )values( 插入值1 , 插入值2 )";
//执行指定的SQL命令语句,并返回命令所影响的行数
int Succnum = MyTool.executeCommand(sqlStr);
if (Succnum > 0) MessageBox.Show("录入成功"); //删
sqlStr = "delete from 表名 where 删除条件";
int Succnum = MyTool.executeCommand(sqlStr);
if (Succnum > 0) MessageBox.Show("删除成功"); //改
sqlStr = "update 表名 set 列名1 = 更新值1 , 列名2 = 更新值2";
int Succnum = MyTool.executeCommand(sqlStr);
if (Succnum > 0) MessageBox.Show("更新成功"); //查一组数据
sqlStr = "select 列名1 , 列名2 from 表名 where 查询表达式";
MyTool.queryDataToGrid(sqlStr, dataGridView1);//填充到数据控件DataGridView中 //查单个数据
sqlStr = "select 列名 from 表名 where 查询表达式";
textBox1.Text = MyTool.queryData(sqlStr);//填充到文本框textBox1中

C#连接SQL Server数据库进行简单操作[转]的更多相关文章
- C#连接SQL Server数据库进行简单操作
环境:VS2010 + SqlServer 2008 首先,按照面向对象的程序设计思想,设计一个数据库操作工具类MyTool.cs,该类中封装了关于数据库连接和操作的方法,各个功能模块在需进行数据库操 ...
- C#对于sql server数据库的简单操作
1.在用windows模式登陆sql server 数据库 简历一个student的数据库,然后新建查询: create table student ( id int auto_increment p ...
- python连接sql server数据库实现增删改查
简述 python连接微软的sql server数据库用的第三方模块叫做pymssql(document:http://www.pymssql.org/en/stable/index.html).在官 ...
- 详解连接SQL Server数据库的方法,并使用Statement接口实现对数据库的增删改操作
总结一下,连接SQL Server数据库需要以下几个步骤: 1. 导入驱动Jar包:sqljdbc.jar 2. 加载并注册驱动程序 3. 设置连接路径 4. 加载并注册驱动 5. 连接数据库 6. ...
- python 使用pymssql连接sql server数据库
python 使用pymssql连接sql server数据库 #coding=utf-8 #!/usr/bin/env python#------------------------------ ...
- JDBC连接sql server数据库及其它
JDBC连接sql server数据库的步骤如下: 1.加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过java.lang.Class类的 ...
- ThinkPHP连接sql server数据库
亲身经历,在网上找连接sql server数据库的方法,还是不好找的,大多数都是照抄一个人的,而这个人的又写的不全,呵呵,先介绍一下我连接的方法吧.如果你是用THINKPHP连接,那么最重要的就是配置 ...
- 对于超大型SQL SERVER数据库执行DBCC操作
原文:对于超大型SQL SERVER数据库执行DBCC操作 对于数据库维护,主要使用DBCC CHECKDB来实现,以下是对大型数据库的使用说明,小型数据库一般直接使用就可以了: 1.2008(200 ...
- JDBC连接sql server数据库的详细步骤和代码
JDBC连接sql server数据库的详细步骤和代码 JDBC连接sql server数据库的步骤如下: 1.加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Ja ...
随机推荐
- 使用CSS更改图标的颜色
我们经常在很多网站上见到更改网站的主题时,图标的颜色也改变了,我们总是觉的这一项功能非常伟大,因为我们知道使用CSS是无法完成更改图片的颜色的.那么,网站上随心所欲的图标颜色是采用N多个图片不断的切换 ...
- CSS3之背景定位原点background-origin
背景定位原点background-origin是CSS3新添加的有关背景的属性,主要是改变背景起始的原点位置的.CSS3之背景定位原点background-origin的属性值有三个:border.p ...
- 洛谷P3402 【模板】可持久化并查集 [主席树,并查集]
题目传送门 可持久化并查集 n个集合 m个操作 操作: 1 a b 合并a,b所在集合 2 k 回到第k次操作之后的状态(查询算作操作) 3 a b 询问a,b是否属于同一集合,是则输出1否则输出0 ...
- 微信小程序setData()对数组的操作
对于setData普通数据类型而言,没什么讲究 但是对于数组而言,再直接修改一个完整的数组显得有些多余,首先写着不简易,其次效率很是滴. 比如 你都能觉得复杂,官方肯定是有对应的优化的. 官方demo ...
- nyoj 737 石子合并 http://blog.csdn.net/wangdan11111/article/details/45032519
http://blog.csdn.net/wangdan11111/article/details/45032519 http://acm.nyist.net/JudgeOnline/problem. ...
- 【BZOJ 3812】 3812: 主旋律 (容斥原理**)
3812: 主旋律 Time Limit: 10 Sec Memory Limit: 256 MBSubmit: 235 Solved: 196 Description 响应主旋律的号召,大家决定 ...
- 【二分图最大匹配】【匈牙利算法】zoj3988 Prime Set
题意:给你n个正整数,一对和为素数的数为一个合法数对.你选不超过K个合法数对,使得你选的数对涉及到的数的数量最大化.输出这个值. 所有1之间是可以任意两两配对的. 把奇数放在左侧,偶数放在右侧. 考虑 ...
- Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process 题目连接: http://www.codeforces.com/contest/660/problem/C Description You are given an a ...
- CROC 2016 - Qualification C. Hostname Aliases map
C. Hostname Aliases 题目连接: http://www.codeforces.com/contest/644/problem/C Description There are some ...
- poj 3468 A Simple Problem with Integers 线段树区间加,区间查询和
A Simple Problem with Integers Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://poj.org/problem?i ...