コード例 #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");
                }
            }
        }
コード例 #2
0
        private BaseMetadataProvider GetMetadataProvider()
        {
            BaseMetadataProvider metaprov = null;

            switch (this.DatabasePlatform)
            {
            case QueryBuilderDatabasePlatform.MySQL:
                metaprov            = new MySQLMetadataProvider();
                metaprov.Connection = new MySqlConnection(this.ConnectionString);
                break;

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

            return(metaprov);
        }