用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 ...
随机推荐
- android菜鸟学习笔记2----关于adb
adb : android debug bridge android调试桥 路径:adt-bundle目录/sdk/platform-tools/adb.exe 常见的adb命令: adb devic ...
- win8升级win10后的windows.old怎么删除
现在win10只是出了预览版本,还没有出正式版,但是相信一部分朋友都与小D一样,喜欢尝鲜,已上用上了win10了. 有些人是通过win8或是8.1直接安装升级上去的,这样操作是安装方便,但是系统会为了 ...
- Cocos2d-JS中的cc.LabelTTF
cc.LabelTTF是使用系统中的字体,它是最简单的标签类.cc.LabelTTF类图如下图所示,可以cc.LabelTTF继承了cc.Node类,具有cc.Node的基本特性. LabelTTF类 ...
- Python中lambda表达式学习
lambda只是一个表达式,函数体比def简单很多. lambda的主体是一个表达式,而不是一个代码块.仅仅能在lambda表达式中封装有限的逻辑进去. lambda表达式是起到一个函数速写的作用.允 ...
- ARC小知识
ARC是iOS 5推出的新功能,全称叫 ARC(Automatic Reference Counting).简单地说,就是代码中自动加入了retain/release,原先需要手动添加的用来处理内存管 ...
- C语言求两个函数中的较大者的MAX函数
//求两个函数中的较大者的MAX函数 #include <stdio.h> int main(int argc, const char * argv[]) { printf("i ...
- 修改ubuntu按下关机键触发的事件
gsettings set org.gnome.settings-daemon.plugins.power button-power shutdown will change your the beh ...
- html5圆角
以下是代码片段:#roundCornerI{ font-family: Arial; border: 5px solid #dedede; -moz-border-radius-tople ...
- 《Linux下sed命令的使用》
grep -v 关键字 文件 文件中的关键字给过滤掉 grep -v “^关键字” 文件 以关键字开头的给过滤掉 sed -e ‘/关键字/d’文件 输出时把关键字给删除掉 以/etc ...
- CentOS学习笔记--基本命令--目录的相关操作
Linux基本命令--目录的相关操作 常见的处理目录的命令吧: cd:变换目录 pwd:显示目前的目录 mkdir:创建一个新的目录 rmdir:删除一个空的目录 cd (变换目录) cd是Chang ...