[DAO Database in win32] What is more efficient
Arturo Pérez Mulas
arturo_perez at wanadoo.es
Tue Dec 5 16:57:48 CET 2000
I am accessing an Access database under Windows NT from Python. I am
using Mark's python windows extensions to access through the DAO
objects, and I have a question and a performance comment:
a) When I open a connection and create a recordset executing an arbitrary
SQL instruction, as follows:
db = dbengine.OpenDatabase("filename")
SQL_query = 'SELECT Table1.Column1, Table2.Colum2 FROM Table1 INNER JOIN Table2 ON (Table1.Num = Table2.Num) WHERE (((Table1.ID)="name"));'
myrecordset = self.db.OpenRecordset(SQL_BCSet_query)
Is there any way to check if the resulting recordset is empty?
b) I need to add a register to a database but being sure that one particular field is not repeated; I have no access to the predefined structure of the
database, so I need to check manually if such a register exists before adding it; which of the following is more efficient?:
- make an SQL query restricting the table records with "WHERE field = desired_value" and then check if the resulting recordset is empty
- retrieve the whole table to a recordset, and check the records one by one:
while not myrecordset.EOF:
if myrecordset.Fields(n) == desired_value:
print "found in db"
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Python-list