c# SQL SERVER 数据写入

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data.SqlClient;
using System.Diagnostics;
using System.Threading;
using System.IO;
using System.Data;
using System.ComponentModel;
using System.Drawing;
using System.Collections;
using System.Web;




namespace LinkSqlInsert
{
    class Program
    {
        static string[] KeyValue = { "NULL", "NULL", "NULL", "NULL", "NULL", "NULL", "NULL", "NULL", "NULL", "NULL", "NULL", "NULL", "NULL", "NULL", "NULL","NULL","NULL","NULL","NULL","NULL" };
        static string[] Smple = { "SN", "LineBody", "JobNumber", "Product_Name", "Bios_Config_File", "Bios_Date", "Bios_PN", "Bios_Version", "CardName", "ClockGpu", "ClockMem", "MemSize", "Dangrading", "SERVER", "DATABASE", "UID", "PWD", "StoredProcedure" };
        static int Main(string[] args)
        {
            if (ReadConfigInfo("config.ini")==false)
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine("Read Config.ini File Err!!");
                Console.ResetColor();
                return 1;
            }
            int n = 0;
            //foreach(string ss in Smple)
            for (; n <= 12;n++ )//读取log信息
            {
                KeyValue[n] = ReadString(Smple[n]).Trim();
            }
            for (n = 13; n <= 17;n++ )//读取数据库配置信息
            {
                KeyValue[n] = Smple[n];
            }
            KeyValue[n] = "OK";
            KeyValue[n + 1] = DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss");
            bool WriteDataResult=false;
            WriteDataResult=FullSqlData(KeyValue);
            if (WriteDataResult==false&&nn==0)
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine("Connection Sql Server DataBases Err!!");
                Console.ResetColor();
                return 1;
            }
            else if(WriteDataResult==false&&nn==1)
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine("The SN bar code already exists in the database.");
                Console.ResetColor();
                return 1;
            }
            Console.ForegroundColor = ConsoleColor.Green;
            Console.WriteLine("The test data is successfully written to the database.");
            Console.ResetColor();
            return 0;
        }


        static int nn = 0;
        static bool FullSqlData(string []Key)
        {
            bool Flag = false;
            try
            {
                //SqlConnection conn=new SqlConnection("server=192.167.10.6;database=E_GPUWIN;uid=sa;pwd=adminsystem");
                SqlConnection conn = new SqlConnection("server="+Key[13]+";database="+Key[14]+";uid="+Key[15]+";pwd="+Key[16]);
                conn.Open();
                if(conn.State!=ConnectionState.Open)
                {
                    Flag = false;
                    return Flag;
                }
                //SqlCommand cmd = new SqlCommand("usp_InsertGPUWINDATA",conn);
                SqlCommand cmd = new SqlCommand(Key[17], conn);
                cmd.CommandType = CommandType.StoredProcedure;//启动储存存过程参数
                cmd.Parameters.Add("@SN",Key[0].Trim());
                cmd.Parameters.Add("@LineBody",Key[1].Trim());
                cmd.Parameters.Add("@JobNumber",Key[2].Trim());
                cmd.Parameters.Add("@Product_Name",Key[3].Trim());
                cmd.Parameters.Add("@Bios_Config_File",Key[4].Trim());
                cmd.Parameters.Add("@Bios_Date",Key[5].Trim());
                cmd.Parameters.Add("@Bios_PN",Key[6].Trim());
                cmd.Parameters.Add("@Bios_VerSion",Key[7].Trim());
                cmd.Parameters.Add("@CardName",Key[8].Trim());
                cmd.Parameters.Add("@ClockGpu",Key[9].Trim());
                cmd.Parameters.Add("@ClockMem",Key[10].Trim());
                cmd.Parameters.Add("@MemSize",Key[11].Trim());
                cmd.Parameters.Add("@Dargrading",Key[12].Trim());
                cmd.Parameters.Add("@State",Key[18].Trim());
                cmd.Parameters.Add("@Date_Time",Key[19].Trim());
                cmd.Parameters.Add("@rs",1);//添加T-SQL存储过程参数
                cmd.Parameters["@rs"].Direction = ParameterDirection.Output;//启动输出返回
                cmd.ExecuteScalar();
                if ((int)cmd.Parameters["@rs"].Value == 0 )
                {
                    conn.Close();
                    Flag = true;
                }
                else if((int)cmd.Parameters["@rs"].Value == 1)
                {
                    conn.Close();
                    nn = 1;
                    Flag = false;
                }
            }
            catch(Exception ex)
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Flag = false;
                Console.WriteLine(ex.Message);
                Console.ResetColor();
                return Flag;
            }
            return Flag;
        }
        static string ReadString(string PathName)//读取字符串
        {
            string Temp = string.Empty;
            try
            {
                FileStream fs = new FileStream(PathName, FileMode.Open, FileAccess.Read);
                StreamReader sr = new StreamReader(fs,Encoding.Default);
                Temp = sr.ReadLine().Trim();
                fs.Close();
                sr.Close();
            }
            catch(Exception ex)
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine(ex.Message);
                Console.ResetColor();
                Temp=null;
                return Temp;
            }
            return Temp;
        }


        static bool ReadConfigInfo(string CfgName) //读取配置信息
        {
            bool Flag = false;
            try
            {
                FileStream fs = new FileStream(CfgName, FileMode.Open, FileAccess.Read);
                StreamReader sr = new StreamReader(fs, Encoding.Default);
                string Temp = string.Empty;
                while((Temp=sr.ReadLine())!=null)
                {
                    string[] Array = Temp.Split(new string[] { "=" }, StringSplitOptions.RemoveEmptyEntries);
                    int n = 0;
                    foreach(string str in Smple)
                    {
                        if(str==Array[0].Trim())
                        {
                            Smple[n] = Array[1].Trim();
                            break;
                        }
                        n++;
                    }
                }
                sr.Close();
                fs.Close();
                Flag = true;
            }
            catch (Exception ex)
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine(ex.Message);
                Console.ResetColor();
                Flag = false;
                return Flag;
            }
            return Flag;
        }
    }
}

猜你喜欢

转载自blog.csdn.net/u013934107/article/details/80140818
今日推荐