class SQLHelper
{
public SqlConnection conn; //<summary>
//链接、打开数据库
//</summary>
public void open()
{
string connectionStr = "server = ;database = ;uid = sa;pwd = ";
conn = new SqlConnection(connectionStr);
conn.Open();
} //<summary>
//关闭数据库
//</summary>
public void close()
{
conn.Dispose();
conn.Close();
conn = null;
} //<summary>
//得到Command对象
//</summary>
public SqlCommand GetCommand(string sqlstring)
{
SqlCommand cmd = new SqlCommand(sqlstring,conn);
return cmd;
} //<summary>
//输入SQL语句,得到DataReader对象
//</summary>
public SqlDataReader GetDataReader(string sqlstring)
{
open();
SqlCommand cmd = new SqlCommand(sqlstring,conn);
SqlDataReader dr = cmd.ExecuteReader();
return dr;
} //<summary>
//输入SQL语句,得到DataSet对象
//</summary>
public DataSet GetDataSet(string sqlstring)
{
open();
SqlCommand cmd = new SqlCommand(sqlstring,conn);
SqlDataAdapter sda = new SqlDataAdapter();
sda.SelectCommand = cmd;
DataSet ds = new DataSet();
//string tmpName = tableName.ToString();
sda.Fill(ds);
close(); return ds;
} //<summary>
//输入SQL语句,得到DataTable对象
//</summary>
public DataTable GetDataTable(string sqlstring)
{
DataSet ds = GetDataSet(sqlstring);
DataTable dt = new DataTable();
dt = ds.Tables[]; return dt;
} //<summary>
//执行非查询命令SQl命令
//</summary>
public int ExecuteSQL(string sqlstring)
{
int count = -;
open();
try
{
SqlCommand cmd = new SqlCommand(sqlstring,conn);
count = cmd.ExecuteNonQuery();
}
catch
{
count = -;
}
finally
{
close();
}
return count;
} //<summary>
//输入SQL语句,检查数据表中是否有该数据信息
//</summary>
public int GetDataRow(string sqlstring)
{
int CountRow = ;
open();
SqlCommand cmd = new SqlCommand(sqlstring,conn); SqlDataAdapter sda = new SqlDataAdapter();
sda.SelectCommand = cmd;
DataSet ds = new DataSet();
sda.Fill(ds);
ds.CaseSensitive = false;
CountRow = ds.Tables[].Rows.Count;
close(); return CountRow;
} //<summary>
//获取单个值
//</summary>
public object GetScalar(string sqlstring)
{
open();
SqlCommand cmd = new SqlCommand(sqlstring,conn);
object result = cmd.ExecuteScalar();
close(); return result;
} //<summary>
//查询某个表的某列的属性数据,并形成列表
//</summary>
//<param name="sqlstring">查询SQL语句</param>
//<param name="m">第m列的属性,整数类型</param>
//<return>ArrayList类型数据,存储在ArrayList中的一组数据</return>
public ArrayList GetArrayList(string sqlstring,int m)
{
//创建Arraylist对象
ArrayList array = new ArrayList();
SqlDataReader dr = GetDataReader(sqlstring);
while (dr.Read()) //遍历所有结果集
{
//取结果集索引的第m列的值并添加到ArrayList对象中
array.Add(dr.GetValue(m));
}
return array; //返回ArrayList对象
} //<summary>
//对整体数据集实时批量更新
//<summary>
//<param name="ds">DataSet</param>
//<param name="sqlstring">SQL语句</param>
//<param name="tableName">表名</param>
//<return>bool变量,表示是否修改成功</return>
public bool doupdate(DataSet ds, string sqlstring, string tableName)
{
bool isUpdateOk = false;
open();
//强制资源清理;Using结束后隐式调用
//Disposable
using (SqlDataAdapter da = new SqlDataAdapter(sqlstring, conn))
{
//数据库表一定要有主键列,否则此处无法通过
SqlCommandBuilder builder = new SqlCommandBuilder(da);
try
{
lock (this)
{
da.Update(ds,tableName);
isUpdateOk = true;
}
}
catch(SqlException ex)
{
MessageBox.Show(ex.ToString(),"错误提示");
}
}
close();
return isUpdateOk;
}
}

用C#进行WinForm开发对数据库的相关操作的更多相关文章

  1. python操作mysql数据库的相关操作实例

    python操作mysql数据库的相关操作实例 # -*- coding: utf-8 -*- #python operate mysql database import MySQLdb #数据库名称 ...

  2. PHP对MySQL数据库的相关操作

    一.Apache服务器的安装 <1>安装版(计算机相关专业所用软件---百度云链接下载)-直接install<2>非安装版(https://www.apachehaus.com ...

  3. Winform开发的应用环境和相关技术介绍

    随着时间的推移,Winform也算是能够坚持下来最久的技术之一了,它的昔日辉煌和现今的依旧活跃,导致了它依旧拥有者很庞大的用户群体,虽然目前很多技术日新月异的,曾经的ASP.ASP.NET WebFo ...

  4. mysql数据库和mongodb数据库的相关操作以及两个数据库的区别

    在docs命令中执行数据操作 MySQL数据库 先启动MySQL服务器  net start mysql 进入MySQL服务器MySQL -uroot -p(这里写你的数据库密码) (-P是从哪个端口 ...

  5. Android下的SQLite数据库的相关操作及AndroidTestCase测试

    一:创建数据库 package com.itcode.mysqlite; import android.content.Context; import android.database.sqlite. ...

  6. C# WinForm 数据库连接及对数据库的相关操作

    1.首先在App.config配置文件中配置数据库连接字符串: <appSettings> <add key="connectionstring" value=& ...

  7. SQLServer 维护脚本分享(04)服务器角色和数据库角色相关操作

    /*------------------------------------------------------------------------------------ [服务器级别-服务器角色] ...

  8. mysql数据库字符集相关操作(修改表字段编码,使其支持emoji表情)

    普通的UTF8编码是不支持emoji表情插入的,会报异常: Caused by: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x9 ...

  9. django中数据库的相关操作

    一.使用环境 python2.7,django>1.7 二.数据库进行配置 在setting文件中进行修改 1.找到DATABASES DATABASES = { 'default': { 'E ...

随机推荐

  1. 未能加载文件或程序集“Microsoft.Web.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad

    遇到这个报错是在服务器上的,将一个网站发布到服务器.在本地的运行时正常的,但在服务器上是报错的. 原因是服务器上是没有安装Microsoft.Web.Infrastructure.然而,处理这个问题也 ...

  2. About Restful Web Api Something.

    这种轻量级的服务架构目前来说还是比较流行的,比如微信的公众平台的接口开发就是一个很好的案例,提到restful那么他到底是一个什么样的东西? REST(Representational State T ...

  3. 【学习笔记】【C语言】第一个C程序

    1.新建C语言程序 *打开Xcode  *新建文件  *选择C语言程序  *输入程序名称  *选择存放路径  *创建完成后  2.也可以用终端来创建  通过指令来创建.c文件   3.编写代码  4. ...

  4. java 自动装箱和自动拆箱

    自动装箱 java执行Integer i = 100:编译器编译成Integer i = Integer.valueOf(100); Integer i = 100; //编译器编译成Integer ...

  5. HDU 1165 Eddy's research II

    题意:已知,求A(m, n). 分析:根据样例模拟一下过程就可以找出递推关系. #include<cstdio> #include<cstring> #include<c ...

  6. 1103 POI2007 大都市meg

    树链剖分水过,单点修改,树状数组即可. #include <cstdio> #include <cstring> #include <cstdlib> #inclu ...

  7. ListBox复选框拓展

    Toolkit的LongListMutiSelector的复选框功能,想必许多人都需要吧!然而系统本身控件ListBox虽然也有多选功能,可是外观上却缺乏复选框,选择效果只是颜色变化.于是在上一个项目 ...

  8. How to Fix Missing TortoiseSVN File Status Icons in Windows

    For many Windows-based developers, Subversion and TortoiseSVN is a great source control solution. It ...

  9. Qt for Android 程序禁止屏幕旋转

    有时候我们希望让一个程序的界面始终保持在一个方向,不随手机(平板)方向旋转而变化:在AndroidManifest.xml的每一个需要禁止转向的Activity配置中加入 android:screen ...

  10. asp.net2.0 国际化

    公司业务需要在国外开展了, 因此以前的系统要做多国语言了, 从网上搜集了好多资料, 最后选择了一个比较简单的方案 1.  打开vs2005, 新建网站, 首先在配置文件中添加配置: <syste ...