用C#进行WinForm开发对数据库的相关操作
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开发对数据库的相关操作的更多相关文章
- python操作mysql数据库的相关操作实例
python操作mysql数据库的相关操作实例 # -*- coding: utf-8 -*- #python operate mysql database import MySQLdb #数据库名称 ...
- PHP对MySQL数据库的相关操作
一.Apache服务器的安装 <1>安装版(计算机相关专业所用软件---百度云链接下载)-直接install<2>非安装版(https://www.apachehaus.com ...
- Winform开发的应用环境和相关技术介绍
随着时间的推移,Winform也算是能够坚持下来最久的技术之一了,它的昔日辉煌和现今的依旧活跃,导致了它依旧拥有者很庞大的用户群体,虽然目前很多技术日新月异的,曾经的ASP.ASP.NET WebFo ...
- mysql数据库和mongodb数据库的相关操作以及两个数据库的区别
在docs命令中执行数据操作 MySQL数据库 先启动MySQL服务器 net start mysql 进入MySQL服务器MySQL -uroot -p(这里写你的数据库密码) (-P是从哪个端口 ...
- Android下的SQLite数据库的相关操作及AndroidTestCase测试
一:创建数据库 package com.itcode.mysqlite; import android.content.Context; import android.database.sqlite. ...
- C# WinForm 数据库连接及对数据库的相关操作
1.首先在App.config配置文件中配置数据库连接字符串: <appSettings> <add key="connectionstring" value=& ...
- SQLServer 维护脚本分享(04)服务器角色和数据库角色相关操作
/*------------------------------------------------------------------------------------ [服务器级别-服务器角色] ...
- mysql数据库字符集相关操作(修改表字段编码,使其支持emoji表情)
普通的UTF8编码是不支持emoji表情插入的,会报异常: Caused by: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x9 ...
- django中数据库的相关操作
一.使用环境 python2.7,django>1.7 二.数据库进行配置 在setting文件中进行修改 1.找到DATABASES DATABASES = { 'default': { 'E ...
随机推荐
- 未能加载文件或程序集“Microsoft.Web.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad
遇到这个报错是在服务器上的,将一个网站发布到服务器.在本地的运行时正常的,但在服务器上是报错的. 原因是服务器上是没有安装Microsoft.Web.Infrastructure.然而,处理这个问题也 ...
- About Restful Web Api Something.
这种轻量级的服务架构目前来说还是比较流行的,比如微信的公众平台的接口开发就是一个很好的案例,提到restful那么他到底是一个什么样的东西? REST(Representational State T ...
- 【学习笔记】【C语言】第一个C程序
1.新建C语言程序 *打开Xcode *新建文件 *选择C语言程序 *输入程序名称 *选择存放路径 *创建完成后 2.也可以用终端来创建 通过指令来创建.c文件 3.编写代码 4. ...
- java 自动装箱和自动拆箱
自动装箱 java执行Integer i = 100:编译器编译成Integer i = Integer.valueOf(100); Integer i = 100; //编译器编译成Integer ...
- HDU 1165 Eddy's research II
题意:已知,求A(m, n). 分析:根据样例模拟一下过程就可以找出递推关系. #include<cstdio> #include<cstring> #include<c ...
- 1103 POI2007 大都市meg
树链剖分水过,单点修改,树状数组即可. #include <cstdio> #include <cstring> #include <cstdlib> #inclu ...
- ListBox复选框拓展
Toolkit的LongListMutiSelector的复选框功能,想必许多人都需要吧!然而系统本身控件ListBox虽然也有多选功能,可是外观上却缺乏复选框,选择效果只是颜色变化.于是在上一个项目 ...
- 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 ...
- Qt for Android 程序禁止屏幕旋转
有时候我们希望让一个程序的界面始终保持在一个方向,不随手机(平板)方向旋转而变化:在AndroidManifest.xml的每一个需要禁止转向的Activity配置中加入 android:screen ...
- asp.net2.0 国际化
公司业务需要在国外开展了, 因此以前的系统要做多国语言了, 从网上搜集了好多资料, 最后选择了一个比较简单的方案 1. 打开vs2005, 新建网站, 首先在配置文件中添加配置: <syste ...