Database - Legge Nome Caratteristiche Tabelle QueryCampi




Tabelle # ' questa funzione legge il nome e le caratteristiche di: tabelle, query,
campi
'***********************************

dim dbscurrente as database, tdftable as tabledef, qdfquery as querydef, fld as field
dim i as integer
dim db as database
set db = workspaces(0).opendatabase("\protocol\protocollo.mdb")
set dbscurrente = db
for each tdftable in db.tabledefs
'if ((tdftable.attributes and dbsystemobject) or (tdftable.attributes and dbhiddenobject)) then

' ignora questa tabella di sistema

' else

print chr(9) & "tabella di servizio " & tdftable.name
print chr(9) & " attributes " & tdftable.attributes
print chr(9) & " connect " & tdftable.connect
print chr(9) & " datecreated " & tdftable.datecreated
print chr(9) & " recordcount " & tdftable.recordcount
print chr(9) & " sourcetablename " & tdftable.sourcetablename
print chr(9) & " updatable " & tdftable.updatable
print chr(9) & " validationrule " & tdftable.validationrule
print chr(9) & " validationtext " & tdftable.validationtext

for i = 0 to tdftable.fields.count - 1
print chr(9) & " tabella "; tdftable.name;
print "; campo : -> "; tdftable.fields(i).name
' elenca le proprieta' incorporate di miocampo.

print chr(9) & "fld.name: "; tdftable.fields(i).name
print chr(9) & "fld.allowzerolength: "; tdftable.fields(i).allowzerolength
print chr(9) & "fld.attributes: "; tdftable.fields(i).attributes
print chr(9) & "fld.collatingorder: "; tdftable.fields(i).collatingorder
print chr(9) & "fld.defaultvalue: "; tdftable.fields(i).defaultvalue
print chr(9) & "fld.ordinalposition: "; tdftable.fields(i).ordinalposition
print chr(9) & "fld.required: "; tdftable.fields(i).required
print chr(9) & "fld.size: "; tdftable.fields(i).size
print chr(9) & "fld.sourcefield: "; tdftable.fields(i).sourcefield
print chr(9) & "fld.sourcetable: "; tdftable.fields(i).sourcetable
print chr(9) & "fld.type: "; tdftable.fields(i).type
select case tdftable.fields(i).type
case is = 8
print chr(9) & " tipo = data/ora"
case is = 10
print chr(9) & " tipo = text"
case is = 12
print chr(9) & " tipo = memo"
case is = 1
print chr(9) & " tipo = boolean"
case is = 3
print chr(9) & " tipo = integer"
case is = 4
print chr(9) & " tipo = integer"
case is = 5
print chr(9) & " tipo = currency"
case is = 6
print chr(9) & " tipo = single"
case is = 7
print chr(9) & " tipo = double"
case is = 2
print chr(9) & " tipo = byte"
case is = 11
print chr(9) & " tipo = long bynary"
end select

print chr(9) & "fld.validationrule: "; tdftable.fields(i).validationrule
print chr(9) & "fld.validationtext: "; tdftable.fields(i).validationtext
next i
print
form1.cls
'end if

next
for each qdfquery in db.querydefs
print chr(9) & "query di servizio " & qdfquery.name
print chr(9) & " connect " & qdfquery.connect
print chr(9) & " datecreated " & qdfquery.datecreated
print chr(9) & " updatable " & qdfquery.updatable
print chr(9) & " lastupdated " & qdfquery.lastupdated
print chr(9) & " odbctimeout " & qdfquery.odbctimeout
print chr(9) & " recordsaffected " & qdfquery.recordsaffected
print chr(9) & " returnsrecords " & qdfquery.returnsrecords
print chr(9) & " sql " & qdfquery.sql
print chr(9) & " type " & qdfquery.type
' dbqselect 0 query select.

' dbqaction 240 query di comando.

' dbqcrosstab 16 query a campi incrociati.

' dbqdelete 32 query delete.

' dbqupdate 48 query update.

' dbqappend 64 query append.

' dbqmaketable 80 query per la creazione di tabelle.

' dbqddl 96 query del linguaggio per la definizione di dati (ddl).

' dbqsqlpassthrough 112 query pass-through sql.

' dbqsetoperation 128 query per operazioni set.

' dbqsptbulk 144 query per operazioni generali.

Next










( databaseleggenomecaratteristichetabellequerycampi.html )- by Paolo Puglisi - Modifica del 17/12/2023