Пример #1
0
        internal OrionDeleteQuery(OrionDatabase parentXDatabase, String tableName, String whereClause)
            : base(parentXDatabase)
        {
            StringBuilder strQueryString;


            strQueryString = new StringBuilder("DELETE FROM " + tableName);

            if (String.IsNullOrWhiteSpace(whereClause) == false)
            {
                whereClause = OrionQuery.TrimWhereClause(whereClause);
                strQueryString.Append(" WHERE " + whereClause);
            }
            this.QueryString = strQueryString.ToString();

            this.QueryType = QueryTypes.Delete;

            this.m_xCommand = this.ParentOrionDatabase.CreateCommand(this.QueryString);
        }// OrionDeleteQuery()
Пример #2
0
        internal OrionExecuteQuery(OrionDatabase parentXDatabase, String queryString)
            : base(parentXDatabase)
        {
            String[] strQueryElements;

            strQueryElements = queryString.Split(' ');
            if (strQueryElements[0].ToUpperInvariant() != "SELECT")
            {
                this.QueryString = queryString;

                this.QueryType = QueryTypes.Execute;

                this.m_xCommand = this.ParentOrionDatabase.CreateCommand(this.QueryString);
            }
            else
            {
                throw new OrionException("The SQL query should not be a SELECT one;");
            }
        }// OrionExecuteQuery()
Пример #3
0
        }// Cleanup()

        #endregion

        #region Internal methods
        internal static void PopulateTable(OrionDatabase sourceBase, String tableName, Boolean clearTable)
        {
            OrionInsertQuery xQueryTemp;

            if (clearTable == true)
            {
                sourceBase.PrepareQueryDelete(tableName).Execute();
            }

            xQueryTemp = sourceBase.PrepareQueryInsert(tableName, "id", "titre", "nationalite", "titre_original");

            foreach (StructNewRowValue xNewRowValuesTemp in Commons.NewRowValues)
            {
                xQueryTemp["id"]             = xNewRowValuesTemp.Id;
                xQueryTemp["titre"]          = xNewRowValuesTemp.Title;
                xQueryTemp["nationalite"]    = xNewRowValuesTemp.Country;
                xQueryTemp["titre_original"] = xNewRowValuesTemp.OriginalTitle;

                xQueryTemp.Execute();
            }
        }// PopulateTable()
Пример #4
0
        internal OrionRowCountQuery(OrionDatabase parentXDatabase, String tableName, String whereClause = null)
            : base(parentXDatabase)
        {
            StringBuilder strQueryString;

            this.QueryType = QueryTypes.RowCount;

            strQueryString = new StringBuilder("SELECT COUNT(*) FROM " + tableName);

            if (String.IsNullOrWhiteSpace(whereClause) == false)
            {
                whereClause = OrionQuery.TrimWhereClause(whereClause);
                strQueryString.Append(" WHERE " + whereClause);
            }
            this.QueryString = strQueryString.ToString();

            if (this.xDataAdapter == null)
            {
                this.xDataAdapter = this.ParentOrionDatabase.CreateDataAdapter(this.QueryString);
            }
            this.xDataAdapter.MissingMappingAction      = MissingMappingAction.Passthrough;
            this.xDataAdapter.SelectCommand.Transaction = this.ParentOrionDatabase.Transaction;
        }// OrionRowCountQuery
Пример #5
0
        }// OrionInsertQuery()

        internal OrionInsertQuery(OrionDatabase parentXDatabase, String tableName, DataRow sourceRow, params String[] exclusions)
            : base(parentXDatabase)
        {
            Boolean       bExcluded;
            StringBuilder strQueryString, strColumns, strValues;

            strQueryString = new StringBuilder("INSERT INTO " + tableName);
            strColumns     = new StringBuilder("(");
            strValues      = new StringBuilder("VALUES (");

            if (sourceRow != null)
            {
                foreach (DataColumn xColumnTemp in sourceRow.Table.Columns)
                {
                    bExcluded = false;
                    if (exclusions != null)
                    {
                        foreach (String strExclusionTemp in exclusions)
                        {
                            if (strExclusionTemp == xColumnTemp.ColumnName)
                            {
                                bExcluded = true;
                                break;
                            }
                        }
                    }

                    if (bExcluded == false)
                    {
                        strColumns.Append(xColumnTemp.ColumnName + ",");
                        strValues.Append(this.ParentOrionDatabase.ParameterCharacter + xColumnTemp.ColumnName + ",");
                    }
                }

                strQueryString.Append(" " + strColumns.ToString().Trim(',') + ")");
                strQueryString.Append(" " + strValues.ToString().Trim(',') + ")");
                this.QueryString = strQueryString.ToString();

                this.QueryType = QueryTypes.Insert;

                this.SQLCommand             = this.ParentOrionDatabase.CreateCommand(this.QueryString);
                this.SQLCommand.Transaction = this.ParentOrionDatabase.Transaction;

                foreach (DataColumn xColumnTemp in sourceRow.Table.Columns)
                {
                    bExcluded = false;
                    foreach (String strExclusionTemp in exclusions)
                    {
                        if (strExclusionTemp == xColumnTemp.ColumnName)
                        {
                            bExcluded = true;
                            break;
                        }
                    }

                    if (bExcluded == false)
                    {
                        this.AddParameter(xColumnTemp.ColumnName, sourceRow[xColumnTemp.ColumnName]);
                    }
                }
            }
        }// OrionInsertQuery()
Пример #6
0
 protected OrionQuery(OrionDatabase parentOrionDatabase)
 {
     this.ParentOrionDatabase = parentOrionDatabase;
 }// OrionQuery()