The following warnings occurred:
Warning [2] Use of undefined constant SAPI_NAME - assumed 'SAPI_NAME' (this will throw an Error in a future version of PHP) - Line: 3388 - File: inc/functions.php PHP 7.4.33-nmm7 (Linux)
File Line Function
/inc/functions.php 3388 errorHandler->error
/showthread.php 116 build_archive_link
Warning [2] Use of undefined constant IN_ARCHIVE - assumed 'IN_ARCHIVE' (this will throw an Error in a future version of PHP) - Line: 3331 - File: inc/functions.php PHP 7.4.33-nmm7 (Linux)
File Line Function
/inc/functions.php 3331 errorHandler->error
/inc/functions.php 3324 build_forum_breadcrumb
/showthread.php 195 build_forum_breadcrumb
Warning [2] Use of undefined constant IN_ARCHIVE - assumed 'IN_ARCHIVE' (this will throw an Error in a future version of PHP) - Line: 3331 - File: inc/functions.php PHP 7.4.33-nmm7 (Linux)
File Line Function
/inc/functions.php 3331 errorHandler->error
/showthread.php 195 build_forum_breadcrumb






Post Reply 
 
Thread Rating:
  • 1 Votes - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
aquery/aexecute question
Author Message
Rattlehead
Master
**

Posts: 290
Likes Given: 3
Likes Received: 8 in 6 posts
Joined: Jun 2012
Reputation: 8



Post: #1
aquery/aexecute question
ok, so i have a small procedure that simple checks my database to see if they have registered an email address, ill post it since i believe someone else was looking for somethign similiar:

Code:
on=@login

//----------------------------
// check for registered email
//----------------------------

db.connect
db.query SELECT email FROM wb_acc_info WHERE username LIKE '<account.name>'
if (<isempty <db.row.0.email>>)
dialog d_addemail
endif
db.close

super simple, if the cell is NULL, it brings up a dialog for them to put one in

now, my question is this;

will using a aquery instead of just the above make a difference in server performance? it seems i will have to write a bit more code for it to function the same, as aquery will need a function to call, basically what im asking is will it make any noticeable difference considering eventually the database will start to get big, or no?

[Image: matts_siggy.gif]
07-29-2013 04:06 PM
Find all posts by this user Like Post Quote this message in a reply
Shaklaban
Master
**

Posts: 378
Likes Given: 0
Likes Received: 1 in 1 posts
Joined: Mar 2012
Reputation: 8

DOT

Post: #2
RE: aquery/aexecute question
if you index your wb_acc_info table by username column it will run faster. also you need to use:

db.query SELECT email FROM wb_acc_info WHERE username = '<account.name>'

instead of using LIKE.

AEXECUTE and AQUERY only useful for large data processing in background.
(This post was last modified: 07-29-2013 09:16 PM by Shaklaban.)
07-29-2013 09:15 PM
Visit this user's website Find all posts by this user Like Post Quote this message in a reply
Rattlehead
Master
**

Posts: 290
Likes Given: 3
Likes Received: 8 in 6 posts
Joined: Jun 2012
Reputation: 8



Post: #3
RE: aquery/aexecute question
yes, my table is indexed for the username column, and i used LIKE becus username is a string, and since = is technically a numeric expression and not made for comparing strings:

'Per the SQL standard, LIKE performs matching on a per-character basis, thus it can produce results different from the = comparison operator:'

http://dev.mysql.com/doc/refman/5.0/en/s...tions.html

you are right in saying that the = will be faster, but according to MySQL, LIKE compares strings more accuratly than using the = Wink

[Image: matts_siggy.gif]
07-30-2013 03:39 AM
Find all posts by this user Like Post Quote this message in a reply
Post Reply 


Forum Jump:


User(s) browsing this thread: 1 Guest(s)