Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Has anyone bundled Views in a DBC into an EXE? Any Probl
Message
De
12/01/2000 07:19:45
Cetin Basoz
Engineerica Inc.
Izmir, Turquie
 
Information générale
Forum:
Visual FoxPro
Catégorie:
Base de données, Tables, Vues, Index et syntaxe SQL
Divers
Thread ID:
00316596
Message ID:
00316818
Vues:
12
>Bob Archer gave me a suggestion earlier about putting a DBC into my EXE so end users can't possibly corrupt my views using the View Designer.
>
>Has anyone else done this?
>
>Any problems?
>
>I've done some testing and was playing with creating a Local View DBC and a separate Remote View DBC files to go with my apps and then switch them at runtime depending on the backend. I was hoping to store all of my Base Tables in another DBC for Local data and pull all of my Views out of that DBC or at least most all of them.
>
>I'm trying to get around the problems with the View Designer corrupting parenthesis in a View.
>
>I've also read some stuff from Doug Hennig and Steven Black about performance issues when 30 or 40 users are hitting a shared DBC so this is another reason I believe I am wanting to do it this way as well.
>
>TIA



Rich,
You're right view designer interpretation of views are awfull especially with parentheses or have joins not as flat as in sample testdata.dbc.
The main idea is to keep endusers or coworkers away from using view designer and thus screwing the view (80% of my views are kinda what v.des. would screw), right ? I wish natively it supported something like "lock". Anyway as this was a problem for me too I found some ways to prevent it and posted here before as a tip.
-One is to include a dummy subquery. ie:
create sql view myView as select * from ... where SomeThing not in (select ...)

In this case view designer complains "the view is too complex" and doesn't open it, leaving intact.

-The other is to use a "force" clause. ie :
select * from FORCE table1 join table2 on ...

View designer complains "Not a character expression" and doesn't open the view again leaving intact.

As long as one or the other is applicable (in my cases generally second is what I explicitly prefer) this prevents view designer screws.
Designing views w/o a designer is harder but what I do is to create it by coding as a plain SQL and test results. After satisfied with it I add "create sql view cViewName then I use Erik Moore's (thanks Erik) eview utility to generate "programmatic creation" of the view to change update list. Delete the view and run generated, modified code to create it as I want.
Cetin
Çetin Basöz

The way to Go
Flutter - For mobile, web and desktop.
World's most advanced open source relational database.
.Net for foxheads - Blog (main)
FoxSharp - Blog (mirror)
Welcome to FoxyClasses

LinqPad - C#,VB,F#,SQL,eSQL ... scratchpad
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform