예제 #1
0
        public static bool SearchFileBD(string arquivo, Conexao ds = null)
        {
            bool    lAchado   = false;
            DataSet dsArquivo = new DataSet();

            try
            {
                Conexao ds_conexao;
                if (ds == null)
                {
                    ds_conexao = new Conexao();
                    ds_conexao.Conecta();
                }
                else
                {
                    ds_conexao = ds;
                }

                dsArquivo = FuncoesGerais.oxcQuery("SELECT count(1) as qtde from pg_tables where tablename ='" + arquivo + "'", ds_conexao);

                lAchado = Int32.Parse(dsArquivo.Tables[0].Rows[0]["qtde"].ToString()) > 0;

                if (ds == null)
                {
                    ds_conexao.desconecta();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Erro SQL:" + ex.Message);
            }
            return(lAchado);
        }
        private void timer1_Tick(object sender, EventArgs e)
        {
            timer1.Enabled      = false;
            lIniciarAtualizacao = FuncoesGerais.ConfirmarAcao("Atualizar Bando de Dados ?");
            if (lIniciarAtualizacao)
            {
                lblAtualizacao.Text = "Aguarde... conectando ao banco de dados..";
                lblAtualizacao.Update();
                VerificarBancoDados();
            }

            this.Close();
        }
예제 #3
0
        public string CriarTemporaria(string cSql, string cCamposAdicionais = "", string cName = "")
        {
            string cNameTmp   = "";
            string cSqlCreate = "";

            System.DateTime DataHoje = DateTime.Now;

            if (cName != string.Empty)
            {
                cNameTmp = cName;
            }
            else
            {
                cNameTmp = "tmp" + DataHoje.ToLongTimeString().Replace(":", "") + DataHoje.Millisecond.ToString();
            }


            cSqlCreate = "CREATE TEMPORARY TABLE IF NOT EXISTS  " + cNameTmp;

            if (cSql == string.Empty)
            {
                cSqlCreate += "( tmp_id serial primary key " + FuncoesGerais.IIf(cCamposAdicionais != string.Empty, "," + cCamposAdicionais, "") + ");";
            }
            else
            {
                cSqlCreate += " as " + cSql + ";";

                cSqlCreate += " ALTER TABLE " + cNameTmp + " ADD COLUMN tmp_id SERIAL PRIMARY KEY;";

                if (cCamposAdicionais != string.Empty)
                {
                    cSqlCreate += " ALTER TABLE " + cNameTmp + " ADD COLUMN " + cCamposAdicionais + ";";
                }
            }


            try
            {
                ExecutarSql(cSqlCreate);
            }
            catch (Exception ex)
            {
                MessageBox.Show("Erro na criação da temporaria:" + ex.Message);
            }


            return(cNameTmp);
        }
예제 #4
0
        public void HabilitarExtension(string cName)
        {
            DataSet dsExtension = new DataSet();

            dsExtension = FuncoesGerais.oxcQuery("SELECT count(1) as qtde FROM pg_extension where extname = " + FuncoesGerais.QuoteStr(cName.ToLower()), ds);

            if (dsExtension.Tables[0].Rows[0]["qtde"].ToString() == "0")
            {
                using (NpgsqlCommand cmdsql = new NpgsqlCommand("create extension " + cName.ToLower(), ds.DsCps))
                {
                    cmdsql.ExecuteNonQuery();
                }
            }

            dsExtension.Dispose();
        }
        private void Splash_Load(object sender, EventArgs e)
        {
            string  cSql             = "";
            Version VersaoSistema    = Assembly.GetExecutingAssembly().GetName().Version;
            int     NumeroBancoDados = VersaoSistema.Build;

            DataSet dsAtualizacao = new DataSet();

            try
            {
                if (!FuncoesGerais.SearchFileBD("sis_atualizacaobanco"))
                {
                    cSql = "create table sis_atualizacaobanco (atu_id serial,atu_numeroatual integer)";

                    FuncoesGerais.SqlExecute(cSql);
                }

                dsAtualizacao = FuncoesGerais.oxcQuery("select count(1) as qtde from sis_atualizacaobanco");

                if (Int32.Parse(dsAtualizacao.Tables[0].Rows[0]["qtde"].ToString()) == 0)
                {
                    FuncoesGerais.SqlExecute("insert into sis_atualizacaobanco (atu_numeroatual) values(" + NumeroBancoDados.ToString() + ")");
                    lIniciarAtualizacao = true;
                }
                else
                {
                    dsAtualizacao = FuncoesGerais.oxcQuery("select atu_numeroatual from sis_atualizacaobanco");

                    if (Int32.Parse(dsAtualizacao.Tables[0].Rows[0]["atu_numeroatual"].ToString()) < NumeroBancoDados)
                    {
                        lIniciarAtualizacao = true;

                        FuncoesGerais.SqlExecute("update sis_atualizacaobanco set atu_numeroatual=" + NumeroBancoDados.ToString());
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Erro na criação do arquivo de atualização." + Environment.NewLine + ex.Message);
            }

            dsAtualizacao.Dispose();

            timer1.Enabled = true;
        }