需求分析:
生产过程中会有多个机柜,每个机柜里会有多个条码,为了快速的将其中的重复条码筛选出来,以便于业务人员使用。条码数据摘取自其他系统或用户提供的Excel。
程序使用开发语言使用C#,数据库选择SqlLite3,开发工具使用VS2017或以上。
程序目录结构:
程序操作界面如下图:
程序代码如下:
DBHelper类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data.SQLite;
using System.IO;
using System.Data;
namespace CodeCheckTool
{
public class DBHelper
{
static string fileName = "codechecktool.db";
static string connectionString = $"Data Source={fileName};Version=3;";
SQLiteConnection connection = new SQLiteConnection(connectionString);
public void CreateDB()
{
if (!File.Exists(fileName))
{
connection.Open();
string sql = "CREATE TABLE TB_CodeList (ID varchar(36) PRIMARY KEY,Code nvarchar(max),GuiHao nvarchar(max));";
// 创建表等操作
using (var command = new SQLiteCommand(sql,connection))
{
command.ExecuteNonQuery();
}
}
}
/// <summary>
/// 执行增删改
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public bool ExcuteNonQuery(string sql)
{
int success = 0;
connection.Open();
// 创建表等操作
using (var command = new SQLiteCommand(sql,connection))
{
success=command.ExecuteNonQuery();
}
connection.Close();
return success > 0;
}
/// <summary>
/// 查询数据并返回table
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public DataTable ExcuteQuery(string sql)
{
connection.Open();
DataTable dataTable = new DataTable();
using (var command = new SQLiteCommand(sql, connection))
{
using (var reader = command.ExecuteReader())
{
dataTable.Load(reader);
}
}
connection.Close();
return dataTable;