1.初始化项目。保险起见bin目录完整提交 2.基于现场代码为调整过的初始项目(此次提交还未解决代码差异问题)
This commit is contained in:
@@ -0,0 +1,258 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Data;
|
||||
using System.Data.SqlClient;
|
||||
using System.Windows.Forms;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace AGVSystem
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// 数据库操作
|
||||
/// </summary>
|
||||
public class ClsDBConn_sql
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取CPU运行的时间
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[DllImport("kernel32")]
|
||||
static extern uint GetTickCount();
|
||||
|
||||
private System.Data.DataSet dt = new System.Data.DataSet();
|
||||
private SqlConnection sqlconn = new SqlConnection(Cls.Param.connectStr);
|
||||
private SqlDataAdapter sqladapter = null;
|
||||
private SqlCommandBuilder sqlcommandb = null;
|
||||
private SqlCommandBuilder sqlcommandb_ds = null;
|
||||
private BindingSource bindsource = new BindingSource();
|
||||
private SqlCommand command = null;
|
||||
|
||||
/// <summary>
|
||||
/// 关闭连接
|
||||
/// </summary>
|
||||
public void ConnClosed()
|
||||
{
|
||||
try
|
||||
{
|
||||
if (sqlconn != null)
|
||||
{
|
||||
if (sqlconn.State == ConnectionState.Open)
|
||||
{
|
||||
sqlconn.Close();
|
||||
}
|
||||
}
|
||||
}
|
||||
catch
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 连接数据库返回dataset
|
||||
/// </summary>
|
||||
/// <param name="str"> SQL语句</param>
|
||||
/// <returns></returns>
|
||||
public System.Data.DataSet connDt(string str)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (sqlconn.State != ConnectionState.Open)
|
||||
sqlconn.Open();
|
||||
sqladapter = new SqlDataAdapter(str, sqlconn);
|
||||
sqlcommandb = new SqlCommandBuilder(sqladapter);
|
||||
if (dt.Tables.Count > 0)
|
||||
dt.Tables.Clear();
|
||||
sqladapter.Fill(dt);
|
||||
return dt;
|
||||
}
|
||||
catch (Exception err)
|
||||
{
|
||||
MessageBox.Show("SQL:" + str + " , \r\n" + err.Message + " \r\n FunctionName:connDt", "错误!", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 返回可更新的dataset
|
||||
/// </summary>
|
||||
/// <param name="str"> SQL语句</param>
|
||||
/// <returns></returns>
|
||||
public System.Data.DataSet dtEdit(string str)
|
||||
{
|
||||
try
|
||||
{
|
||||
sqladapter = new SqlDataAdapter(str, sqlconn);
|
||||
sqlcommandb_ds = new SqlCommandBuilder(sqladapter);
|
||||
if (dt.Tables.Count > 0)
|
||||
dt.Tables.Clear();
|
||||
sqladapter.Fill(dt);
|
||||
return dt;
|
||||
}
|
||||
catch (Exception err)
|
||||
{
|
||||
MessageBox.Show("SQL:" + str + " , \r\n" + err.Message + " \r\n FunctionName:dtEdit", "错误!", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 更新Dataset数据到数据库
|
||||
/// </summary>
|
||||
/// <param name="ds"></param>
|
||||
/// <param name="adapter"></param>
|
||||
/// <returns></returns>
|
||||
public bool dtCommit(System.Data.DataSet ds )
|
||||
{
|
||||
try
|
||||
{
|
||||
//Int64 t1 = GetTickCount();
|
||||
int DS = ds.Tables[0].Rows.Count;
|
||||
|
||||
sqladapter.Update(ds);
|
||||
//Int64 t2 = GetTickCount() - t1;
|
||||
//if (t2 > 2)
|
||||
// MessageBox.Show("update time:"+t2.ToString());
|
||||
}
|
||||
catch
|
||||
{
|
||||
//MessageBox.Show(err.Message+"EventName:dtCommit");
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 数据库连接到datagridview
|
||||
/// </summary>
|
||||
/// <param name="str">sql语句</param>
|
||||
/// <param name="dataGridView">datagridview控件名称</param>
|
||||
public bool connDGV(string str, DataGridView dgv)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (sqlconn.State == ConnectionState.Open) sqlconn.Close();
|
||||
sqladapter = new SqlDataAdapter(str, sqlconn);
|
||||
if (dt.Tables.Count > 0)
|
||||
dt.Tables.Clear();
|
||||
sqladapter.Fill(dt);
|
||||
if (dt.Tables.Count > 0)
|
||||
dgv.DataSource = dt.Tables[0].Copy();
|
||||
return true;
|
||||
}
|
||||
catch (Exception err)
|
||||
{
|
||||
MessageBox.Show("SQL:" + str + " , \r\n" + err.Message + " \r\n FunctionName:connDGV", "错误!", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 数据库连接到datagridview,并可通过datagridview修改数据库
|
||||
/// </summary>
|
||||
/// <param name="str">sql语句</param>
|
||||
/// <param name="dataGridView">datagridview控件名称</param>
|
||||
public bool connDgvEdit(string str, DataGridView dgv)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (sqlconn.State == ConnectionState.Open) sqlconn.Close();
|
||||
sqladapter = new SqlDataAdapter(str, sqlconn);
|
||||
if (dt.Tables.Count > 0)
|
||||
dt.Tables.Clear();
|
||||
sqladapter.Fill(dt);
|
||||
sqlcommandb = new SqlCommandBuilder(sqladapter);
|
||||
bindsource.DataSource = dt.Tables[0];
|
||||
dgv.DataSource = dt.Tables[0];
|
||||
dgv.DataSource = bindsource;
|
||||
return true;
|
||||
}
|
||||
catch (Exception err)
|
||||
{
|
||||
MessageBox.Show("SQL:" + str + " , \r\n" + err.Message + " \r\n FunctionName:connDGVEdit", "错误!", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 提交datagridview的数据
|
||||
/// </summary>
|
||||
/// <param name="dataGridView">datagridview控件名称</param>
|
||||
public bool DgvCommit(DataGridView dgv)
|
||||
{
|
||||
try
|
||||
{
|
||||
dgv.EndEdit();
|
||||
bindsource.EndEdit();
|
||||
sqladapter.Update(dt.Tables[0]);
|
||||
return true;
|
||||
}
|
||||
catch (Exception err)
|
||||
{
|
||||
MessageBox.Show(err.Message + " \r\n FunctionName:DgvCommit", "错误!", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 直接执行SQL语句
|
||||
/// </summary>
|
||||
/// <param name="sqlstr"></param>
|
||||
/// <returns></returns>
|
||||
public string Command(string sqlstr)
|
||||
{
|
||||
try
|
||||
{
|
||||
int count = 0;
|
||||
if (sqlconn.State != ConnectionState.Open) sqlconn.Open();
|
||||
command = new SqlCommand(sqlstr, sqlconn);
|
||||
count = command.ExecuteNonQuery();
|
||||
//sqlconn.Close();
|
||||
return count.ToString();
|
||||
}
|
||||
catch (Exception err)
|
||||
{
|
||||
return "SQL:" + sqlstr + " , \r\n" + err.Message + " \r\n FunctionName:Command";
|
||||
}
|
||||
}
|
||||
|
||||
public bool DtCommand(string Sqlstr, string[,] insertValue)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (sqlconn.State == ConnectionState.Open) sqlconn.Close();
|
||||
sqladapter = new SqlDataAdapter(Sqlstr, sqlconn);
|
||||
if (dt.Tables.Count > 0)
|
||||
dt.Tables.Clear();
|
||||
sqlcommandb = new SqlCommandBuilder(sqladapter);
|
||||
sqladapter.Fill(dt);
|
||||
for (int rw = 0; rw < insertValue.GetLength(0); rw++)
|
||||
{
|
||||
System.Data.DataRow drow = dt.Tables[0].NewRow();
|
||||
for (int cl = 0; cl < insertValue.GetLength(1); cl++)
|
||||
{
|
||||
drow[cl] = insertValue[rw, cl];
|
||||
}
|
||||
dt.Tables[0].Rows.Add(drow);
|
||||
}
|
||||
sqladapter.Update(dt);
|
||||
sqlconn.Close();
|
||||
return true;
|
||||
}
|
||||
catch (Exception err)
|
||||
{
|
||||
MessageBox.Show(err.Message, "错误!", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public void gg()
|
||||
{
|
||||
bindsource.AddNew();
|
||||
bindsource.MoveLast();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user