Мои первые данные InvoiceHeader для динамической вставки SQL - это хорошо или нужен какой-либо совет - PullRequest
1 голос
/ 28 мая 2019

Сделайте динамическую вставку SQLite с заголовком и деталями счета, но в InvoiceHeader я сделал этот пример, но я ищу любой совет, ищущий любую идею и ваши советы, спасибо

public void ExcuteCommand(string TableName, string[,] ColmanNameColValue)
    {
        SQLiteOpen();
        SQLiteCommand QueryCommand = new SQLiteCommand(SQLiteConn);
        string Query = "Insert into " + TableName +  " ( ";          
        for (int i = 0; i < ColmanNameColValue.GetLength(0); i++)
        {
            string ColNames;
            if (i == ColmanNameColValue.GetLength(0) - 1)
            {
                ColNames = ColmanNameColValue[i, 0] + " ) ";
            }
            else
            {
                ColNames = ColmanNameColValue[i, 0] + ", ";
            }
            Query += ColNames;
        }
        Query += "Values (";

        for (int i = 0; i < ColmanNameColValue.GetLength(0); i++)
        {
            string ParamName;
            if (i  == ColmanNameColValue.GetLength(0)-1)
            {
                ParamName = " @" + ColmanNameColValue[i, 0] + ")";
            }
            else
            {
                ParamName = " @" + ColmanNameColValue[i, 0] + "," ;
            }
            Query += ParamName;
        }
        for (int i = 0; i < ColmanNameColValue.GetLength(0); i++)
        {
            QueryCommand.Parameters.AddWithValue(
                "@" + ColmanNameColValue[i, 0], (ColmanNameColValue[i, 1]));
        }
        QueryCommand.CommandText = Query;
        QueryCommand.ExecuteNonQuery();
        SQLiteConn.Close();
    }}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...