I've written code that dynamically builds an sql query based on
various constraint possibilities.
The problem is the code would have been very complex had I not come up
with a dummy constraint as a kind of place holder in the statement.
To avoid complex logic that determines if there was another constraint
before any other constraint and hence the need to add, say, AND or
not, I came up with a dummy constraint so that every subsequent
constraint will begin with AND. There's no need to determine whether
to add AND or not. This makes the coding much simpler because all
that needs to be done is ask if a certain condition exists then add
the constraint along with AND in front every time.
So what I did was create the statement like this:
SELECT elapsed_time AS ET from Table1 WHERE 1 > 0 AND 1stConstraint
AND 2nd Constraint and so on.
See if the 1 > 0 condition were not there it would be necessary to
first determine the first actual contraint and not add AND in front of
it and then add the rest with ANDs in front of every one.
I should add that the user does not have to select any constraint and
that's the problem. I need to stick that WHERE 1>0 in there so that
there doesn't need to be a determination of which other, if any,
constraints are selected.
Even if my explanation above is not well understood, believe me the
front-end coding is much easier this way.
My question is does the 1 > 0 conditional check present the database
with any significant overhead or as far was dummy constraints go is
this as good as any other?
-David 4 2911
"wireless" <wi*********@ya hoo.com> wrote in message
news:90******** *************** ***@posting.goo gle.com... I've written code that dynamically builds an sql query based on various constraint possibilities.
The problem is the code would have been very complex had I not come up with a dummy constraint as a kind of place holder in the statement.
To avoid complex logic that determines if there was another constraint before any other constraint and hence the need to add, say, AND or not, I came up with a dummy constraint so that every subsequent constraint will begin with AND. There's no need to determine whether to add AND or not. This makes the coding much simpler because all that needs to be done is ask if a certain condition exists then add the constraint along with AND in front every time.
So what I did was create the statement like this:
SELECT elapsed_time AS ET from Table1 WHERE 1 > 0 AND 1stConstraint AND 2nd Constraint and so on.
See if the 1 > 0 condition were not there it would be necessary to first determine the first actual contraint and not add AND in front of it and then add the rest with ANDs in front of every one.
I should add that the user does not have to select any constraint and that's the problem. I need to stick that WHERE 1>0 in there so that there doesn't need to be a determination of which other, if any, constraints are selected.
Even if my explanation above is not well understood, believe me the front-end coding is much easier this way.
My question is does the 1 > 0 conditional check present the database with any significant overhead or as far was dummy constraints go is this as good as any other?
-David
In itself, adding such a trivial filter condition shouldn't affect anything,
but building dynamic query strings for every query isn't as robust as
executing stored procedures. If it's possible in your situation, you might
want to consider something like this: http://www.algonet.se/~sommar/dyn-search.html
Simon
Simon Hayes (sq*@hayes.ch) writes: In itself, adding such a trivial filter condition shouldn't affect anything, but building dynamic query strings for every query isn't as robust as executing stored procedures. If it's possible in your situation, you might want to consider something like this:
http://www.algonet.se/~sommar/dyn-search.html
And if you read that article, you will see that the author uses
precisely that kind of dummy condition to simplify building the
dynamic query!
--
Erland Sommarskog, SQL Server MVP, so****@algonet. se
Books Online for SQL Server SP3 at http://www.microsoft.com/sql/techinf...2000/books.asp
On Mon, 22 Sep 2003 21:50:36 +0200, "Simon Hayes" <sq*@hayes.ch >
wrote: In itself, adding such a trivial filter condition shouldn't affect anything, but building dynamic query strings for every query isn't as robust as executing stored procedures. If it's possible in your situation, you might want to consider something like this:
http://www.algonet.se/~sommar/dyn-search.html
Simon, thanks. This is interesting. I had not used stored procedures
before except to implement a data loading program.
-David
David,
I have dealt with this problem before and it isn't too complex to
check your SQL string for a ' where ' piece and then performing either
an operation that adds a logical operator or not adding one.
Try using a sql server function called PATINDEX.
Cliff
David Brown <wi*********@NO SPAMyahoo.com> wrote in message news:<t3******* *************** **********@4ax. com>... On Mon, 22 Sep 2003 21:50:36 +0200, "Simon Hayes" <sq*@hayes.ch > wrote:
In itself, adding such a trivial filter condition shouldn't affect anything, but building dynamic query strings for every query isn't as robust as executing stored procedures. If it's possible in your situation, you might want to consider something like this:
http://www.algonet.se/~sommar/dyn-search.html
Simon, thanks. This is interesting. I had not used stored procedures before except to implement a data loading program.
-David This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics |
by: Krist |
last post by:
Hi All,
I have a database design question, pls give me some help..
I want to define tables for salesman's sales target commission . The
commission could be given per EITHER sales amount of : Group of
Products OR Group of Brand.
e.g : the data example :
For one salesman_A :
product_1, product_2, product_3 etc.. => sales = $100 - $200 =>
|
by: Krist |
last post by:
Hi All,
There is some additional info I forget on this same topic I just posted.
I have a database design question, pls give me some help..
I want to define tables for salesman's sales target commission . The
commission could be given per EITHER sales amount of : Group of Products OR
Group of Brand. e.g : the data example :
For one...
|
by: Kitty |
last post by:
Hi, everyone.
Given a vector<int>, what is the fastest way to find out whether there is a
repeated element in it? The result is just "true" or "false". Thanks.
Kitty
|
by: DW |
last post by:
Greetings:
I have to do a one-off forceful change of some data in a database. I
need to disable some FK constraints, make the data change, and then
re-enable the constraints.
My process will be:
ALTER TABLE TABLE1 NOCHECK CONSTRAINT FK_TABLE1_TABLE2
UPDATE TABLE1 SET COLUMN1=2 WHERE COLUMN2='Problem row'
|
by: Dan |
last post by:
Let's say I have a class like:
class Dummy
{
public const string CONE = "one";
public const string CTWO = "two";
... other stuff ....
}
| |
by: Bob |
last post by:
I have noticed that as one adds related tables to a bindingsource and
dataset(vs2005 Vb.Net Sql Server 2005), the TODO and following code that
fills the datasets on form load are written to the formload event in the
order in which you drag the tables to the form to make a gridview, the last
table you drag is written to the top. Since you...
|
by: sagi.perel |
last post by:
I have tried to compile the following code on Win & Unix. Doesn't work
on either.
<----- CODE ----->
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <vector>
#include <typeinfo>
using namespace std;
|
by: wugon.net |
last post by:
question: db2 LUW V8 UNION ALL with table function month() have bad
query performance
Env:
db2 LUW V8 + FP14
Problem :
We have history data from 2005/01/01 ~ 2007/05/xx in single big
table,
we try separate this big table into twelve tables and create a view
|
by: heavyz |
last post by:
In C, if i want to declare a struct, there are 3 methods to do so:
1: struct dummy { ... };
2: typedef struct { ... } dummy;
3: typedef struct _dummy { ... } dummy;
Usually i use the first method to declare my structs, but in many open
source projects (such as libxml2), the third method is used. I am just
curious about the difference.....
|
by: Hystou |
last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it.
First, let's disable language...
|
by: Hystou |
last post by:
Overview:
Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For...
| |
by: tracyyun |
last post by:
Dear forum friends,
With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the...
|
by: conductexam |
last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one.
At the time of converting from word file to html my equations which are in the word document file was convert...
|
by: TSSRALBI |
last post by:
Hello
I'm a network technician in training and I need your help.
I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs.
The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols.
I succeeded, with both firewalls in...
|
by: adsilva |
last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
|
by: 6302768590 |
last post by:
Hai team
i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
|
by: muto222 |
last post by:
How can i add a mobile payment intergratation into php mysql website.
| |
by: bsmnconsultancy |
last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating...
| |