说明,winform程序,只有一个窗体,有查询,添加,更新,删除操作,为了代码简短,省掉了一些校验代码,请高手们看看程序中的数据库操作部分有无优化之处,其他的不用管。此程序用vs2005编写,可以正常运行。using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.OleDb;
using System.Drawing;
using System.Text;
using System.Windows.Forms;namespace rkinfo
{
public partial class frmxqgl_bind : Form
{
public frmxqgl_bind()
{
InitializeComponent();
} private void frmxqgl_bind_Load(object sender, EventArgs e)
{
OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=icc.mdb");
OleDbDataAdapter dap = new OleDbDataAdapter("select * from qinfo", conn);
dap.Fill(dataSet1, "qinfo");
bindingSource1.DataMember = "qinfo"; ////绑定网格控件/////
dataGridView1.DataSource = bindingSource1; /////绑定文本框///////
t1.DataBindings.Add ("text", bindingSource1, "qid");
t2.DataBindings.Add ("text", bindingSource1, "qname");
t3.DataBindings.Add("text", bindingSource1, "qxxzx");
t4.DataBindings.Add("text", bindingSource1, "qtr");
t5.DataBindings.Add("text", bindingSource1, "qbb"); lblcount.Text = "当前记录数:"+bindingSource1.Count.ToString (); conn.Close();
} ///查询单条记录
private void button1_Click(object sender, EventArgs e)
{
string bh = tfind.Text.Trim();
if (bh == "")
{
MessageBox.Show("查询编号不能空。", "错误");
return;
}
OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=icc.mdb");
OleDbDataAdapter dap = new OleDbDataAdapter("select * from qinfo where qid="+bh, conn); dataSet1.Clear();
dap.Fill(dataSet1, "qinfo"); if (conn.State ==ConnectionState.Open)
conn.Close();
} ///查询所有记录
private void cmdall_Click(object sender, EventArgs e)
{
OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=icc.mdb");
OleDbDataAdapter dap = new OleDbDataAdapter("select * from qinfo ", conn);
dataSet1.Clear();
dap.Fill(dataSet1, "qinfo"); conn.Close();
} //删除一条记录
private void cmddel_Click(object sender, EventArgs e)
{
string bh = t1.Text.Trim();
if (bh == "")
{
MessageBox.Show("当前无记录,不能删除任何数据。", "错误");
return;
}
OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=icc.mdb");
conn.Open();
OleDbCommand cmd = conn.CreateCommand();
cmd.CommandText = "delete from qinfo where qid="+bh;
int i = cmd.ExecuteNonQuery();
if (i == 1)
{
MessageBox.Show("成功删除1条记录。", "提示");
}
else
{
MessageBox.Show("删除失败。", "提示");
}
OleDbDataAdapter dap = new OleDbDataAdapter("select * from qinfo ", conn);
dataSet1.Clear();
dap.Fill(dataSet1, "qinfo"); conn.Close();
} //添加一条记录
private void cmdadd_Click(object sender, EventArgs e)
{
string tname = t2.Text.Trim();
string tid = t1.Text.Trim();
string zx = t3.Text.Trim();
Single tr =Convert .ToSingle ( t4.Text.Trim());
Single bb = Convert.ToSingle(t5.Text.Trim());
if (tid == "")
{
MessageBox.Show("没有数据可以添加", "提示");
return;
}
OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=icc.mdb");
conn.Open();
OleDbCommand cmd = conn.CreateCommand();
cmd.CommandText = "insert into qinfo(qid,qname,qxxzx,qtr,qbb) values('"+tid+"','"+tname +"','"+zx+"',"+tr+","+bb+")";
int i = cmd.ExecuteNonQuery();
if (i == 1)
{
MessageBox.Show("成功添加1条记录。", "提示");
}
else
{
MessageBox.Show("添加失败。", "提示");
}
OleDbDataAdapter dap = new OleDbDataAdapter("select * from qinfo ", conn);
dataSet1.Clear();
dap.Fill(dataSet1, "qinfo"); conn.Close();
} //更新一条记录
private void cmdmodi_Click(object sender, EventArgs e)
{
string bh = t1.Text.Trim();
if (bh == "")
{
MessageBox.Show("当前无记录,不能修改任何数据。", "错误");
return;
}
string tname = t2.Text.Trim();
string xxzx = t3.Text.Trim();
Single dr = Convert.ToSingle(t4.Text.Trim());
Single bb = Convert.ToSingle(t5.Text.Trim());
OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=icc.mdb");
conn.Open();
OleDbCommand cmd = conn.CreateCommand();
cmd.CommandText = "update qinfo set qname='"+tname+"',qxxzx='"+xxzx+"',qtr="+dr+",qbb="+bb+" where qid=" + bh;
int i = cmd.ExecuteNonQuery();
if (i == 1)
{
MessageBox.Show("成功修改1条记录。", "提示");
}
else
{
MessageBox.Show("修改失败。", "提示");
}
OleDbDataAdapter dap = new OleDbDataAdapter("select * from qinfo ", conn);
dataSet1.Clear();
dap.Fill(dataSet1, "qinfo"); conn.Close();
}
}
}
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.OleDb;
using System.Drawing;
using System.Text;
using System.Windows.Forms;namespace rkinfo
{
public partial class frmxqgl_bind : Form
{
public frmxqgl_bind()
{
InitializeComponent();
} private void frmxqgl_bind_Load(object sender, EventArgs e)
{
OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=icc.mdb");
OleDbDataAdapter dap = new OleDbDataAdapter("select * from qinfo", conn);
dap.Fill(dataSet1, "qinfo");
bindingSource1.DataMember = "qinfo"; ////绑定网格控件/////
dataGridView1.DataSource = bindingSource1; /////绑定文本框///////
t1.DataBindings.Add ("text", bindingSource1, "qid");
t2.DataBindings.Add ("text", bindingSource1, "qname");
t3.DataBindings.Add("text", bindingSource1, "qxxzx");
t4.DataBindings.Add("text", bindingSource1, "qtr");
t5.DataBindings.Add("text", bindingSource1, "qbb"); lblcount.Text = "当前记录数:"+bindingSource1.Count.ToString (); conn.Close();
} ///查询单条记录
private void button1_Click(object sender, EventArgs e)
{
string bh = tfind.Text.Trim();
if (bh == "")
{
MessageBox.Show("查询编号不能空。", "错误");
return;
}
OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=icc.mdb");
OleDbDataAdapter dap = new OleDbDataAdapter("select * from qinfo where qid="+bh, conn); dataSet1.Clear();
dap.Fill(dataSet1, "qinfo"); if (conn.State ==ConnectionState.Open)
conn.Close();
} ///查询所有记录
private void cmdall_Click(object sender, EventArgs e)
{
OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=icc.mdb");
OleDbDataAdapter dap = new OleDbDataAdapter("select * from qinfo ", conn);
dataSet1.Clear();
dap.Fill(dataSet1, "qinfo"); conn.Close();
} //删除一条记录
private void cmddel_Click(object sender, EventArgs e)
{
string bh = t1.Text.Trim();
if (bh == "")
{
MessageBox.Show("当前无记录,不能删除任何数据。", "错误");
return;
}
OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=icc.mdb");
conn.Open();
OleDbCommand cmd = conn.CreateCommand();
cmd.CommandText = "delete from qinfo where qid="+bh;
int i = cmd.ExecuteNonQuery();
if (i == 1)
{
MessageBox.Show("成功删除1条记录。", "提示");
}
else
{
MessageBox.Show("删除失败。", "提示");
}
OleDbDataAdapter dap = new OleDbDataAdapter("select * from qinfo ", conn);
dataSet1.Clear();
dap.Fill(dataSet1, "qinfo"); conn.Close();
} //添加一条记录
private void cmdadd_Click(object sender, EventArgs e)
{
string tname = t2.Text.Trim();
string tid = t1.Text.Trim();
string zx = t3.Text.Trim();
Single tr =Convert .ToSingle ( t4.Text.Trim());
Single bb = Convert.ToSingle(t5.Text.Trim());
if (tid == "")
{
MessageBox.Show("没有数据可以添加", "提示");
return;
}
OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=icc.mdb");
conn.Open();
OleDbCommand cmd = conn.CreateCommand();
cmd.CommandText = "insert into qinfo(qid,qname,qxxzx,qtr,qbb) values('"+tid+"','"+tname +"','"+zx+"',"+tr+","+bb+")";
int i = cmd.ExecuteNonQuery();
if (i == 1)
{
MessageBox.Show("成功添加1条记录。", "提示");
}
else
{
MessageBox.Show("添加失败。", "提示");
}
OleDbDataAdapter dap = new OleDbDataAdapter("select * from qinfo ", conn);
dataSet1.Clear();
dap.Fill(dataSet1, "qinfo"); conn.Close();
} //更新一条记录
private void cmdmodi_Click(object sender, EventArgs e)
{
string bh = t1.Text.Trim();
if (bh == "")
{
MessageBox.Show("当前无记录,不能修改任何数据。", "错误");
return;
}
string tname = t2.Text.Trim();
string xxzx = t3.Text.Trim();
Single dr = Convert.ToSingle(t4.Text.Trim());
Single bb = Convert.ToSingle(t5.Text.Trim());
OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=icc.mdb");
conn.Open();
OleDbCommand cmd = conn.CreateCommand();
cmd.CommandText = "update qinfo set qname='"+tname+"',qxxzx='"+xxzx+"',qtr="+dr+",qbb="+bb+" where qid=" + bh;
int i = cmd.ExecuteNonQuery();
if (i == 1)
{
MessageBox.Show("成功修改1条记录。", "提示");
}
else
{
MessageBox.Show("修改失败。", "提示");
}
OleDbDataAdapter dap = new OleDbDataAdapter("select * from qinfo ", conn);
dataSet1.Clear();
dap.Fill(dataSet1, "qinfo"); conn.Close();
}
}
}
try{}
catch{}
finaly{}
异常处理会比较好,
winform程序如何分页查询?
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
/*********************************
* 类名:DBHelper
* 功能描述:提供基本数据访问功能
* ******************************/
namespace DAL
{
public static class DBHelper
{
//数据库连接属性
private static SqlConnection connection;
public static SqlConnection Connection
{
get
{
string connectionString = ConfigurationManager.ConnectionStrings["HotelManagerConnetionString"].ConnectionString;
if (connection == null)
{
connection = new SqlConnection(connectionString);
connection.Open();
}
else if (connection.State == System.Data.ConnectionState.Closed)
{
connection.Open();
}
else if (connection.State == System.Data.ConnectionState.Broken)
{
connection.Close();
connection.Open();
}
return connection;
}
}
/// <summary>
/// 执行有参SQL语句
/// </summary>
public static int ExecuteCommand(string safeSql)
{
SqlCommand cmd = new SqlCommand(safeSql, Connection);
int result = cmd.ExecuteNonQuery();
return result;
}
/// <summary>
/// 执行带参SQL语句
/// </summary>
public static int ExecuteCommand(string sql, params SqlParameter[] values)
{
SqlCommand cmd = new SqlCommand(sql, Connection);
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddRange(values);
return cmd.ExecuteNonQuery();
}
/// <summary>
/// 执行无参SQL语句,并返回执行记录数
/// </summary>
public static int GetScalar(string safeSql)
{
SqlCommand cmd = new SqlCommand(safeSql, Connection);
int result = Convert.ToInt32(cmd.ExecuteScalar());
return result;
}
/// <summary>
/// 执行有参SQL语句,并返回执行记录数
/// </summary>
public static int GetScalar(string sql, params SqlParameter[] values)
{
SqlCommand cmd = new SqlCommand(sql, Connection);
cmd.Parameters.AddRange(values);
int result = Convert.ToInt32(cmd.ExecuteScalar());
return result;
}
/// <summary>
/// 执行无参SQL语句,并返回SqlDataReader 查询
/// </summary>
public static SqlDataReader GetReader(string safeSql)
{
SqlCommand cmd = new SqlCommand(safeSql, Connection);
SqlDataReader reader = cmd.ExecuteReader();
return reader;
}
/// <summary>
/// 执行有参SQL语句,并返回SqlDataReader
/// </summary>
public static SqlDataReader GetReader(string sql, params SqlParameter[] values)
{
SqlCommand cmd = new SqlCommand(sql, Connection);
cmd.Parameters.AddRange(values);
SqlDataReader reader = cmd.ExecuteReader();
return reader;
}
/// <summary>
/// 执行无参SQL语句,并返回DataTable
/// </summary>
public static DataTable GetTable(string safeSql)
{
DataSet ds = new DataSet();
SqlCommand cmd = new SqlCommand(safeSql, Connection);
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(ds);
return ds.Tables[0];
} }
}
DBHelper
顶个
{
string strCn=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=icc.mdb"
OleDbConnection conn = new OleDbConnection(strCn);
OleDbDataAdapter dap;
DataSet ds = new DataSet(); //创建一个函数返回一个DataSet对象
public DataSet gettable(string com,string table)
{
OleDbCommand cmd = new OleDbCommand(com,strCn);
dap = new OleDbDataAdapter(cmd);
dap.Fill(ds,table);
return ds;
}
public void ExecuteSql(string sql)
{
OleDbCommand cmd = new OleDbCommand(sql,strCn);
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
}