zoukankan
html css js c++ java
在C#中使用控件DataGridView实现数据库增删改查
using
System;
using
System.Collections.Generic;
using
System.ComponentModel;
using
System.Data;
using
System.Data.SqlClient;
using
System.Drawing;
using
System.Text;
using
System.Windows.Forms;
namespace
DataSource
...
{
public
partial
class
Form1 : Form
...
{
public
Form1()
...
{
InitializeComponent();
}
private
DataSet ds
=
new
DataSet();
private
SqlConnection conn
=
null
;
private
SqlDataAdapter da
=
null
;
private
const
string
DRIVER
=
"
server=.;database=northwind;uid=sa;pwd=sa
"
;
private
const
string
sql_select
=
"
select * from region
"
;
/**/
/*
*
* 此方法为将数据库northwind中的region表的数据查询出来并放入DataSet中
*
*/
private
void
Form1_Load(
object
sender, EventArgs e)
...
{
conn
=
new
SqlConnection(DRIVER);
da
=
new
SqlDataAdapter(sql_select,conn);
da.Fill(ds,
"
table
"
);
this
.dataGridView1.DataSource
=
ds.Tables[
"
table
"
].DefaultView;
}
private
bool
BtnInsert()
//
此方法作用于添加
...
{
da.InsertCommand
=
conn.CreateCommand();
da.InsertCommand.CommandText
=
"
insert into region values(@id,@ption)
"
;
da.InsertCommand.Parameters.Add(
"
@id
"
, SqlDbType.Int,
4
,
"
regionid
"
);
da.InsertCommand.Parameters.Add(
"
@ption
"
, SqlDbType.VarChar,
10
,
"
regiondescription
"
);
int
count
=
da.Update(ds);
bool
result
=
count
>
0
?
true
:
false
;
return
result;
}
private
void
button1_Click(
object
sender, EventArgs e)
...
{
if
(
this
.BtnInsert())
//
调用此方法
...
{
MessageBox.Show(
"
添加成功!
"
);
}
else
...
{
MessageBox.Show(
"
添加失败!
"
);
}
}
private
bool
BtnDelect()
//
此方法作用于删除
...
{
SqlParameter sp
=
new
SqlParameter();
da.DeleteCommand
=
conn.CreateCommand();
da.DeleteCommand.CommandText
=
"
delete region where regionid=@id
"
;
sp
=
da.DeleteCommand.Parameters.Add(
"
@id
"
, SqlDbType.Int,
4
,
"
regionid
"
);
sp.SourceVersion
=
DataRowVersion.Original;
ds.Tables[
"
table
"
].Rows[
this
.dataGridView1.CurrentRow.Index].Delete();
int
count
=
da.Update(ds);
bool
result
=
count
>
0
?
true
:
false
;
return
result;
}
private
void
button2_Click(
object
sender, EventArgs e)
...
{
if
(
this
.BtnDelect())
//
调用删除方法
...
{
MessageBox.Show(
"
删除成功!
"
);
}
else
...
{
MessageBox.Show(
"
删除失败!
"
);
}
}
private
bool
BtnUpdate()
//
此方法作用于修改
...
{
SqlParameter sp
=
new
SqlParameter();
da.UpdateCommand
=
conn.CreateCommand();
da.UpdateCommand.CommandText
=
"
update region set regionid=@id,regiondescription=@ption where regionid=@oldid
"
;
da.UpdateCommand.Parameters.Add(
"
@id
"
, SqlDbType.Int,
4
,
"
regionid
"
);
da.UpdateCommand.Parameters.Add(
"
@ption
"
, SqlDbType.VarChar,
10
,
"
regiondescription
"
);
sp
=
da.UpdateCommand.Parameters.Add(
"
@oldid
"
, SqlDbType.Int,
4
,
"
regionid
"
);
sp.SourceVersion
=
DataRowVersion.Original;
int
count
=
da.Update(ds);
bool
result
=
count
>
0
?
true
:
false
;
return
result;
}
private
void
button3_Click(
object
sender, EventArgs e)
...
{
if
(
this
.BtnUpdate())
//
调用修改方法
...
{
MessageBox.Show(
"
修改成功!
"
);
}
else
...
{
MessageBox.Show(
"
修改失败!
"
);
}
}
}
}
查看全文
相关阅读:
计算机网络 学习笔记-传输层:TCP协议简介
C/C++里的const(2)
C语言变量声明加冒号的用法
CTL_CODE说明
FreeImage.lib库的配置和简单使用 转
WSASocket()与Socket()的区别 转
Win7下运行VC程序UAC权限问题 VC2010设置UAC权限方法
MFC通过URL下载并保存文件代码 转载
opencv 数据类型转换:CvArr, Mat, CvMat, IplImage, BYTE 转
ISIS Scanner Errors codes
原文地址:https://www.cnblogs.com/da6wei6/p/1277309.html
最新文章
数字图像处理程序总结
[LeetCode]Longest Substring Without Repeating Characters
[LeetCode]Add Two Numbers
[LeetCode]Two Sum
【大数据】SparkCore学习笔记
【大数据】Spark基础解析
【大数据】关于Kafka的进一步理解
【大数据】Kafka学习笔记
【大数据】Hadoop的高可用HA
【大数据】Azkaban学习笔记
热门文章
【大数据】MapTask并行度和切片机制
【大数据】MapTask工作机制
【开发工具IDE】eclipse的SVN提交忽略target等多余文件
【JavaScript】table里面点击某td获取同一行tr的其他td值
基于WDF的PCI/PCIe接口卡Windows驱动程序(2)-开发者需要了解的WDF中的一些重要的概念
操作系统的段机制与页机制
基于WDF的PCI/PCIe接口卡Windows驱动程序(1)-WDF概述及开发环境搭建
通过反汇编理解函数调用机制(x86和ARM)
【译】为什么这样宏定义#define INT_MIN (-2147483647
leetcode刷题: 002 Add Two Numbers
Copyright © 2011-2022 走看看