• c# 开发+MySql数据库


        今天就一个客户端的任务:1、把Excel文件转成特定格式插入到数据库中;2、查出该文件,并且导出Excel文件;3、如果插入数据错误,则把刚插入的数据删除掉。感觉比较简单,可是,墨迹了一天呀。。。。总结一下吧!

    一、    mysql数据库的存储过程是在“函数”列表里的,并且向外传参数时可以参考下边的代码:

    首先是连接字符串 stringConn=“server=192.168.1.1;User ID=XXXXX;Password=XXXXXXX;database=lms;Connection Reset=FALSE ;charset=utf8”

      public static void ImportEpc_Insert(string UIDNum, string EPCNum, int IsDistribute, string DistrubuteMatch, out int isAlarm)
           {
               isAlarm = 0;
               string procedureName = "原始数据_数据加密_增加";
               MySqlParameter[] thisParms = new MySqlParameter[5];
               thisParms[0] = new MySql.Data.MySqlClient.MySqlParameter("@UIDNum", UIDNum);
               thisParms[1] = new MySql.Data.MySqlClient.MySqlParameter("@EPCNum", EPCNum);
               thisParms[2] = new MySql.Data.MySqlClient.MySqlParameter("@IsDistribute", IsDistribute);
               thisParms[3] = new MySql.Data.MySqlClient.MySqlParameter("@DistrubuteMatch", DistrubuteMatch);
               thisParms[4] = new MySql.Data.MySqlClient.MySqlParameter("@isAlarm", isAlarm);
               thisParms[4].Direction = ParameterDirection.Output;
               DataAccess.MySQL_ExecuteStoredProcedure(procedureName, ref thisParms);
               isAlarm=Convert.ToInt32(thisParms[4].Value);
           }

    对应的存储过程代码为:

    BEGIN
    DECLARE countNum int DEFAULT 0;

    SELECT count(*) into countNum from 原始数据_数据加密 where UID=UIDNum;
    if countNum<=0
    THEN insert into `原始数据_数据加密`(UID,MD5_EPC,是否分配,分配批次) VALUES(UIDNum,EPCNum,IsDistribute,DistrubuteMatch);
    set isAlarm=0;

    ELSE
      set isAlarm=1;
    end IF;

     END

    参数列为:

    IN `UIDNum` varchar(200),IN `EPCNum` varchar(200),IN `IsDistribute` int,IN `DistrubuteMatch` varchar(200),OUT `isAlarm` int

    二、对于app.config文件,当项目是几层结构时,最上层的winform窗体对config文件初始化

     /// <summary>
            /// 应用程序的主入口点。
            /// </summary>
            [STAThread]
            static void Main()
            {
                new ApplicationConfig();//初始化配置文件
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                Application.Run(new LMS_Import());
            }

    三、最好都写参数的XML注释,这样不会发警告!累了!睡了!

  • 相关阅读:
    C#仿制QQ弹出消息框
    Winform下载文件
    asp.net文件下载
    C#FileStream复制大文件【转自www.bitsCN.com】
    C#解压或压缩文件夹
    TreeView无级级绑定
    C# WinForm窗口最小化到系统托盘
    [C#]实现序列号生成器
    VS2005小技巧收集(一)
    Failed TO CREATE LOGFILE GROUP解决
  • 原文地址:https://www.cnblogs.com/hanjiaxu/p/3220446.html
Copyright © 2020-2023  润新知