Esempio n. 1
0
        private void QueryBuilder_SetupProperties(string serverType)
        {
            queryBuilder1.ExpressionEditor = expressionEditor1;
            sqlTextEditor1.QueryBuilder    = queryBuilder1;

            if (serverType.ToLower( ) == "mssql")
            {
                SqlConnection         mssqlConn        = (SqlConnection)Entity.GetConnection(iqtoolsConnString, "mssql");
                MSSQLSyntaxProvider   syntaxProvider   = new MSSQLSyntaxProvider( );
                MSSQLMetadataProvider metadataProvider = new MSSQLMetadataProvider( );

                metadataProvider.Connection    = mssqlConn;
                queryBuilder1.SyntaxProvider   = syntaxProvider;
                queryBuilder1.MetadataProvider = metadataProvider;
                qb.SyntaxProvider   = syntaxProvider;
                qb.MetadataProvider = metadataProvider;
            }
            else if (serverType.ToLower( ) == "mysql")
            {
                MySqlConnection       mysqlConn             = (MySqlConnection)Entity.GetConnection(iqtoolsConnString, "mysql");
                MySQLSyntaxProvider   mysqlSyntaxProvider   = new MySQLSyntaxProvider( );
                MySQLMetadataProvider mysqlMetadataProvider = new MySQLMetadataProvider( );

                mysqlMetadataProvider.Connection = mysqlConn;
                queryBuilder1.SyntaxProvider     = mysqlSyntaxProvider;
                queryBuilder1.MetadataProvider   = mysqlMetadataProvider;
                qb.SyntaxProvider = mysqlSyntaxProvider;
            }
            else if (serverType.ToLower() == "pgsql")
            {
                //NpgsqlConnection pgsqlConn = (NpgsqlConnection)Entity.GetConnection(iqtoolsConnString, "pgsql");
                //PostgreSQLSyntaxProvider pgsqlSyntaxProvider = new PostgreSQLSyntaxProvider();
                ////UniversalSyntaxProvider uSyntaxProvider = new UniversalSyntaxProvider();
                //UniversalMetadataProvider umdprovider = new UniversalMetadataProvider();

                //umdprovider.Connection = pgsqlConn;
                //queryBuilder1.SyntaxProvider = pgsqlSyntaxProvider;
                ////queryBuilder1.SyntaxProvider = uSyntaxProvider;
                //queryBuilder1.MetadataProvider = umdprovider;
                //qb.SyntaxProvider = pgsqlSyntaxProvider;
                ////qb.SyntaxProvider = uSyntaxProvider;
            }


            if (rdbAdvanced.Checked)
            {
                queryBuilder1.RefreshMetadata( );
            }
            else if (rdbBasic.Checked)
            {
                if (server == "pgsql")
                {
                    queryBuilder1.MetadataContainer.LoadFromXMLFile("Resources\\iqtools_cpad.xml");
                }
                else
                {
                    queryBuilder1.MetadataContainer.LoadFromXMLFile("Resources\\iqtools_iqcare.xml");
                }
            }
        }
Esempio n. 2
0
        private BaseMetadataProvider GetMetadataProvider()
        {
            BaseMetadataProvider metaprov = null;

            switch (this.DatabasePlatform)
            {
            case QueryBuilderDatabasePlatform.MSSQLServer:
                metaprov            = new MSSQLMetadataProvider();
                metaprov.Connection = new SqlConnection(this.ConnectionString);
                break;

            case QueryBuilderDatabasePlatform.SQLServerCE:
                //metaprov = new MSSQLCEMetadataProvider();  //does not work
                //metaprov = new UniversalMetadataProvider();  //does not work
                //metaprov.Connection = new SqlCeConnection(this.ConnectionString);

                string oledbConnectionString = ConvertSQLCE35ConnectionStringToOLEDB(this.ConnectionString);
                metaprov            = new OLEDBMetadataProvider();
                metaprov.Connection = new OleDbConnection(oledbConnectionString);
                queryBuilder.DatabaseSchemaTreeOptions.DefaultExpandLevel = 0;
                break;

            case QueryBuilderDatabasePlatform.OLEDB:
                metaprov            = new OLEDBMetadataProvider();
                metaprov.Connection = new OleDbConnection(this.ConnectionString);
                break;

            case QueryBuilderDatabasePlatform.ODBC:
                metaprov            = new ODBCMetadataProvider();
                metaprov.Connection = new OdbcConnection(this.ConnectionString);
                break;

            case QueryBuilderDatabasePlatform.MSAccess:
                metaprov            = new OLEDBMetadataProvider();
                metaprov.Connection = new OleDbConnection(this.ConnectionString);
                queryBuilder.DatabaseSchemaTreeOptions.DefaultExpandLevel = 0;
                break;

            case QueryBuilderDatabasePlatform.Oracle:
                metaprov            = new OracleMetadataProvider();
                metaprov.Connection = new System.Data.OracleClient.OracleConnection(this.ConnectionString);
                queryBuilder.DatabaseSchemaTreeOptions.DefaultExpandLevel = 0;
                break;

            default:
                metaprov            = new UniversalMetadataProvider();
                metaprov.Connection = new OdbcConnection(this.ConnectionString);
                break;
            }

            return(metaprov);
        }
Esempio n. 3
0
        //methods

        public void InitForTest()
        {
            ResetQueryBuilder();
            MSSQLMetadataProvider metaprov = new MSSQLMetadataProvider();

            //metaprov.Connection = new SqlConnection("Server=PROFASTWS1;Database=Namelists;Trusted_Connection=True;");
            metaprov.Connection           = new SqlConnection("Server=PROFASTWS1;Database=AdventureWorks2008R2;Trusted_Connection=True;");
            queryBuilder.MetadataProvider = metaprov;
            MSSQLSyntaxProvider sqlsyn = new MSSQLSyntaxProvider();

            queryBuilder.SyntaxProvider = sqlsyn;

            queryBuilder.SQL = this.QueryText;

            // kick the query builder to fill metadata tree
            queryBuilder.InitializeDatabaseSchemaTree();
        }