========================================================================================================
===  Tidy report for :F:\_Archive\_Programmieren\AutoIt3\User\4ern\romaSql-1.0.2\romaSql.au3
========================================================================================================

00001    #include <Array.au3>
00002    #include 'queryBuilder.au3'
00003    
00004    ; #INDEX# =======================================================================================================================
00005    ; Title .........: SQL Query Builder
00006    ; AutoIt Version : 3.3.14.2
00007    ; Language ......: German
00008    ; Description ...: SQL Query Builder
00009    ; Insperiert of .: doctrine & Laravel 
00010    ; Author(s) .....: 4ern.de
00011    ; ===============================================================================================================================
00012    
00013    ; #Commands# =====================================================================================================================
00014    ; $SQL_debug
00015    ; $SQL_connect
00016    ; $SQL_returnType
00017    ; $SQL_setDefaultTable
00018    ; $SQL_setDefaultKey
00019    	
00020    ; $SQL_get
00021    ; $SQL_update
00022    ; $SQL_delete
00023    ; $SQL_insertInto
00024    ; $SQL_take
00025    ; $SQL_limit
00026    ; $SQL_table
00027    ; $SQL_select
00028    ; $SQL_distinct
00029    ;
00030    ; $SQL_where
00031    ; $SQL_orWhere
00032    ; $SQL_whereBetween
00033    ; $SQL_whereNotBetween
00034    ; $SQL_whereIn
00035    ; $SQL_whereNotIn
00036    ; $SQL_whereNull
00037    ; $SQL_whereNotNull
00038    ; $SQL_having
00039    ; $SQL_orHaving
00040    ; $SQL_havingBetween
00041    ; $SQL_havingNotBetween
00042    ; $SQL_havingIn
00043    ; $SQL_havingNotIn
00044    ; $SQL_havingNull
00045    ; $SQL_havingNotNull
00046    ; $SQL_groupBy
00047    ; $SQL_orderBy    
00048    ; ===============================================================================================================================     
00049    
00050    ; #IN PLANNING# =================================================================================================================
00051    ; + Database
00052    ;	- SQL Create Table
00053    ;	- SQL Drop Table
00054    ;	- SQL Truncate Table
00055    ;	- SQL Alter
00056    ;	- SQL View
00057    ; + Aggregates
00058    ; 	- SQL AVG() Function
00059    ; 	- SQL COUNT() Function
00060    ; 	- SQL SUM() Function
00061    ; 	- SQL MAX() Function
00062    ; 	- SQL MIN() Function
00063    ; + SQL Joins
00064    ; 	- SQL INNER JOIN
00065    ; 	- SQL LEFT JOIN
00066    ; 	- SQL RIGHT JOIN
00067    ; + Unions
00068    ; + Oracle Connection
00069    ; + PostgrSQl Connection
00070    ; ===============================================================================================================================
00071    
00072    ; #INTERNAL_USE_ONLY# ===========================================================================================================
00073    ; __4ern_SQL__IsDefault 		;thx BugFix
00074    ; __4ern_SQL_rawQuery
00075    ; __4ern_SQL_raw_getAll
00076    ; __4ern_SQL_raw_getFirst
00077    ; __4ern_SQL__QueryBuilder__table
00078    ; __4ern_SQL__QueryBuilder__SELECT
00079    ; __4ern_SQL__QueryBuilder__WHERE
00080    ; __4ern_SQL__QueryBuilder__groupBy
00081    ; __4ern_SQL__QueryBuilder__Orderby
00082    ; ===============================================================================================================================
00083    
00084    ; #GLOBAL CONSTANTS# ============================================================================================================
00085    ; FUNKTIONS KONSTANTEN 
00086    ; ===============================================================================================================================
00087    	$SQL_debug            = __4ern_SQL_Console_startUp
00088    	$SQL_connect          = __4ern_SQL_Connect
00089    	$SQL_returnType       = __4ern_SQL_defReturn
00090    	$SQL_setDefaultTable  = __4ern_SQL__QueryBuilder__setTable
00091    	$SQL_setDefaultKey    = __4ern_SQL__QueryBuilder__setkey
00092    	$SQL_setDatabase	  = __4ern_set_SQL_Connection
00093    	
00094    	$SQL_get              = __4ern_SQL_QueryBuilder_get
00095    	$SQL_update           = __4ern_SQL_QueryBuilder_Update
00096    	$SQL_delete           = __4ern_SQL_QueryBuilder_Delete
00097    	$SQL_insertInto       = __4ern_SQL_Query_insert
00098    	$SQL_take	          = __4ern_SQL__QueryBuilder__limit
00099    	$SQL_limit	          = __4ern_SQL__QueryBuilder__limit
00100    	$SQL_table            = __4ern_SQL_Query_table
00101    	$SQL_select           = __4ern_SQL_Query_select
00102    	$SQL_distinct         = __4ern_SQL_Query_distinct
00103    	$SQL_where            = __4ern_SQL_Query_where
00104    	$SQL_orWhere          = __4ern_SQL_Query_orWhere
00105    	$SQL_whereBetween     = __4ern_SQL_Query_whereBetween
00106    	$SQL_whereNotBetween  = __4ern_SQL_Query_whereNotBetween
00107    	$SQL_whereIn          = __4ern_SQL_Query_whereIn
00108    	$SQL_whereNotIn       = __4ern_SQL_Query_whereNotIn
00109    	$SQL_whereNull        = __4ern_SQL_Query_whereNull
00110    	$SQL_whereNotNull     = __4ern_SQL_Query_whereNotNull
00111    	$SQL_having           = __4ern_SQL_Query_having
00112    	$SQL_orHaving         = __4ern_SQL_Query_orHaving
00113    	$SQL_havingBetween    = __4ern_SQL_Query_havingBetween
00114    	$SQL_havingNotBetween = __4ern_SQL_Query_havingNotBetween
00115    	$SQL_havingIn         = __4ern_SQL_Query_havingIn
00116    	$SQL_havingNotIn      = __4ern_SQL_Query_havingNotIn
00117    	$SQL_havingNull       = __4ern_SQL_Query_havingNull
00118    	$SQL_havingNotNull    = __4ern_SQL_Query_havingNotNull
00119    	$SQL_groupBy          = __4ern_SQL__QueryBuilder__groupBy
00120    	$SQL_orderBy          = __4ern_SQL_Query_orderBy
00121    	$SQL_raw			  = __4ern_SQL_rawQueryExpr
00122    	
00123    ; #FUNCTION# ====================================================================================================================
00124    ; Author ........: 4ern.de
00125    ; Description....: AU3 Check Syntax
00126    ; Source.........: queryBuilder.au3
00127    ; ===============================================================================================================================
00128    	#ignorefunc __4ern_SQL__QueryBuilder__setTable
00129    	#ignorefunc __4ern_SQL__QueryBuilder__setkey
00130    	#ignorefunc __4ern_SQL_QueryBuilder_get
00131    	#ignorefunc __4ern_SQL_QueryBuilder_Update
00132    	#ignorefunc __4ern_SQL_QueryBuilder_Delete
00133    	#ignorefunc __4ern_SQL_Query_insert
00134    	#ignorefunc __4ern_SQL__QueryBuilder__limit
00135    	#ignorefunc __4ern_SQL_Query_table
00136    	#ignorefunc __4ern_SQL_Query_select
00137    	#ignorefunc __4ern_SQL_Query_distinct
00138    	#ignorefunc __4ern_SQL_Query_where
00139    	#ignorefunc __4ern_SQL_Query_orWhere
00140    	#ignorefunc __4ern_SQL_Query_whereBetween
00141    	#ignorefunc __4ern_SQL_Query_whereNotBetween
00142    	#ignorefunc __4ern_SQL_Query_whereIn
00143    	#ignorefunc __4ern_SQL_Query_whereNotIn
00144    	#ignorefunc __4ern_SQL_Query_whereNull
00145    	#ignorefunc __4ern_SQL_Query_whereNotNull
00146    	#ignorefunc __4ern_SQL_Query_having
00147    	#ignorefunc __4ern_SQL_Query_orHaving
00148    	#ignorefunc __4ern_SQL_Query_havingBetween
00149    	#ignorefunc __4ern_SQL_Query_havingNotBetween
00150    	#ignorefunc __4ern_SQL_Query_havingIn
00151    	#ignorefunc __4ern_SQL_Query_havingNotIn
00152    	#ignorefunc __4ern_SQL_Query_havingNull
00153    	#ignorefunc __4ern_SQL_Query_havingNotNull
00154    	#ignorefunc __4ern_SQL__QueryBuilder__groupBy
00155    	#ignorefunc __4ern_SQL_Query_orderBy
00156    	#ignorefunc __4ern_SQL_rawQueryExpr
00157    
00158    ; #FUNCTION# ====================================================================================================================
00159    ; Author ........: 4ern.de
00160    ; Description....: Return Type 
00161    ; ...............: Default: Object Dictionary
00162    ; ...............: Array 
00163    ; ===============================================================================================================================
00164  +-func __4ern_SQL_defReturn($ptype = DEFAULT)
00165  |    	Local Static $rType = 'array'
00166  |    	if __4ern_SQL__IsDefault($ptype, '-1,', ',') Then return $rType
00167  |    	if $ptype = 'array' Then $rType = 'array'
00168  |    	if $ptype = 'oDict' Then $rType = 'oDict'
00169  +-endfunc
00170    
00171    ; #FUNCTION# ====================================================================================================================
00172    ; Author ........: 4ern.de
00173    ; Description....: set Default Database
00174    ; ...............: Default: MySQL
00175    ; ===============================================================================================================================
00176  +-func __4ern_set_SQL_Connection($database = 'mysql')
00177  |    	__4ern_SQL_Connection('set', -1, -1, -1, -1, -1, $database)
00178  +-endfunc
00179    
00180    ; #FUNCTION# ====================================================================================================================
00181    ; Author ........: 4ern.de
00182    ; Description....: set Connectionstrings
00183    ; ...............: Default: MySQL
00184    ; ...............: ConnectionString
00185    ;
00186    ; ...............: https://www.connectionstrings.com
00187    ; ===============================================================================================================================
00188  +-func __4ern_SQL_Connection($action = 'getDatabase', $SERVER=NULL, $DB=NULL, $USER=NULL, $PASSWORD=NULL, $DRIVER=NULL, $database=NULL) 
00189  |    	
00190  |    	local static $databaseDefault
00191  |    
00192  |    	;----------------------------------------------------------------------------------------------/
00193  |    	; setze die Standart Datenbank
00194  |    	;----------------------------------------------------------------------------------------------/
00195  |  +-	if $action = 'set' then
00196  |  |    		$databaseDefault = $database
00197  |  |    		return $databaseDefault
00198  |  +-	endif
00199  |    
00200  |    	;----------------------------------------------------------------------------------------------/
00201  |    	; Übergebe die gesetzte Database
00202  |    	;----------------------------------------------------------------------------------------------/
00203  |    	if $action = 'getDatabase' then return $databaseDefault
00204  |    
00205  |    	;----------------------------------------------------------------------------------------------/
00206  |    	; Übergebe den Connectionstring
00207  |    	;----------------------------------------------------------------------------------------------/
00208  |  +-	if $action = 'getConnectionString' then
00209  |  |  +-		switch $databaseDefault
00210  |  |  |    			
00211  |  |  |  +-			case 'mySql'
00212  |  |  |  |  +-				if __4ern_SQL__IsDefault($DRIVER, '-1,', ',') then 
00213  |  |  |  |  |    					return StringFormat('Driver={MySQL ODBC 5.3 ANSI Driver};Server=%s;Database=%s;User=%s;Password=%s;',$SERVER, $DB, $USER, $PASSWORD)
00214  |  |  |  |  +-				endif
00215  |  |  |  |    				return StringFormat('Driver={%s};Server=%s;Database=%s;User=%s;Password=%s;',$DRIVER, $SERVER, $DB, $USER, $PASSWORD)
00216  |  |  |  |    				
00217  |  |  |  +-			case 'sqlServer'
00218  |  |  |  |  +-				if __4ern_SQL__IsDefault($DRIVER, '-1,', ',') then 
00219  |  |  |  |  |    					return StringFormat('DRIVER={SQL Server};SERVER=%s;DATABASE=%s;uid=%s;pwd=%s;',$SERVER, $DB, $USER, $PASSWORD)
00220  |  |  |  |  +-				endif
00221  |  |  |  |    				return StringFormat('DRIVER={%s};SERVER=%s;DATABASE=%s;uid=%s;pwd=%s;', $DRIVER, $SERVER, $DB, $USER, $PASSWORD)
00222  |  |  |  |    			
00223  |  |  |  +-			case 'access'
00224  |  |  |  |  +-				if __4ern_SQL__IsDefault($DRIVER, '-1,', ',') then 
00225  |  |  |  |  |    					return StringFormat('Driver={Microsoft Access Driver (*.mdb)};%s;Uid=%s;Pwd=%s;',$DB, $USER, $PASSWORD)
00226  |  |  |  |  +-				endif
00227  |  |  |  |    				return StringFormat('Driver={%s};%s;Uid=%s;Pwd=%s;',$DRIVER, $DB, $USER, $PASSWORD)
00228  |  |  |  |    
00229  |  |  |  +-			case 'sqLite'
00230  |  |  |  |  +-				if __4ern_SQL__IsDefault($DRIVER, '-1,', ',') then 
00231  |  |  |  |  |    					return StringFormat('DRIVER=SQLite3 ODBC Driver;Database=%s;LongNames=0;Timeout=1000;NoTXN=0;SyncPragma=NORMAL;StepAPI=0;',$DB)
00232  |  |  |  |  +-				endif
00233  |  |  |  |    				return StringFormat('DRIVER=%s;Database=%s;LongNames=0;Timeout=1000;NoTXN=0;SyncPragma=NORMAL;StepAPI=0;', $DRIVER, $DB)
00234  |  |  +-		endswitch
00235  |  +-	endif
00236  +-endfunc
00237    
00238    ; #FUNCTION# ====================================================================================================================
00239    ; Author ........: 4ern.de
00240    ; Description....: MSSQL ADO Connection Object
00241    ; =====================================================================================================================
00242  +-func __4ern_SQL_Connect($pDB = DEFAULT, $pUSER = DEFAULT, $pPASSWORD = DEFAULT, $pSERVER = DEFAULT, $pDRIVER = DEFAULT, $ACTION = DEFAULT)
00243  |    	
00244  |    	;----------------------------------------------------------------------------------------------/
00245  |    	; Deklaration
00246  |    	;----------------------------------------------------------------------------------------------/
00247  |    	Global $gO__4ern_SQLError = ObjEvent("AutoIt.Error", "__4ern_SQL_errFunc")
00248  |    	Local Static $oCon, $SERVER = NULL, $DB = NULL, $USER = NULL, $PASSWORD = NULL, $DRIVER, $conInfo = NULL
00249  |    
00250  |    	;----------------------------------------------------------------------------------------------/
00251  |    	; Erstelle ein ADODB Verbindung
00252  |    	;----------------------------------------------------------------------------------------------/
00253  |    	$oCon                   = ObjCreate('ADODB.Connection')
00254  |    	$oCon.ConnectionTimeout = 30	
00255  |    
00256  |    	;----------------------------------------------------------------------------------------------/
00257  |    	; Setze DEFAULTS
00258  |    	;----------------------------------------------------------------------------------------------/
00259  |    	IF $ACTION 	  =  DEFAULT THEN $ACTION 	= 'get()'
00260  |    	IF $pDB       <> DEFAULT THEN $DB       = $pDB
00261  |    	IF $pUSER     <> DEFAULT THEN $USER     = $pUSER
00262  |    	IF $pPASSWORD <> DEFAULT THEN $PASSWORD = $pPASSWORD
00263  |    	IF $pSERVER   <> DEFAULT THEN $SERVER   = $pSERVER
00264  |    	IF $pDRIVER   <> DEFAULT THEN $DRIVER   = $pDRIVER
00265  |    
00266  |    	;----------------------------------------------------------------------------------------------/
00267  |    	; Prüfe ob alle Zugangsparameter vorhanden sind.
00268  |    	;----------------------------------------------------------------------------------------------/
00269  |    	$errorLogin = False
00270  |  +-	switch __4ern_SQL_Connection()
00271  |  |  +-		case 'mySql'
00272  |  |  |    			If ($DB = NULL) OR ($USER = NULL) OR ($PASSWORD = NULL) OR ($SERVER = NULL) Then $errorLogin = True
00273  |  |  +-		case 'sqlServer'
00274  |  |  |    			If ($DB = NULL) OR ($USER = NULL) OR ($PASSWORD = NULL) OR ($SERVER = NULL) Then $errorLogin = True
00275  |  |  +-		case 'access'
00276  |  |  |    			If ($DB = NULL) OR ($USER = NULL) OR ($PASSWORD = NULL) Then $errorLogin = True
00277  |  |  +-		case 'sqLite'
00278  |  |  |    			If ($DB = NULL) Then $errorLogin = True
00279  |  +-	endswitch
00280  |    	
00281  |  +-	If ($errorLogin = True) Then 
00282  |  |    		__4ern_SQL_Console('error', 'Fehler!', 'Eines der Zugangsparameter´oder der Datenbankpfad wurde nicht angegeben.')
00283  |  |    		return SetError(1)
00284  |  +-	endif
00285  |    
00286  |    	;----------------------------------------------------------------------------------------------/
00287  |    	; Connection Information
00288  |    	;----------------------------------------------------------------------------------------------/
00289  |  +-	if $conInfo == NULL then
00290  |  |    		__4ern_SQL_Console('info', 'Connection String', StringFormat('DATABASE=%s, SERVER=%s, DATABASE=%s, $USER=%s, PW=***, TimeOut=%s',__4ern_SQL_Connection(), $SERVER, $DB, $USER, $oCon.ConnectionTimeout))
00291  |  |    		$conInfo = 1
00292  |  +-	endif
00293  |    
00294  |    	;----------------------------------------------------------------------------------------------/
00295  |    	; Schließe Connection falls diese offen ist.
00296  |    	;----------------------------------------------------------------------------------------------/
00297  |    	if not $oCon.state = 0 then $oCon.close
00298  |    
00299  |    	;----------------------------------------------------------------------------------------------/
00300  |    	; Action
00301  |    	;----------------------------------------------------------------------------------------------/
00302  |  +-	Switch $ACTION
00303  |  |    
00304  |  |    		;----------------------------------------------------------------------------------------------/
00305  |  |    		; Verbindungsaufbau
00306  |  |    		;----------------------------------------------------------------------------------------------/
00307  |  |  +-		Case 'write()'
00308  |  |  |    	
00309  |  |  |    			;----------------------------------------------------------------------------------------------/
00310  |  |  |    			; Wenn Objekt erstellt wurde, stelle Verbindung her.
00311  |  |  |    			;----------------------------------------------------------------------------------------------/
00312  |  |  |  +-			If IsObj($oCon) Then
00313  |  |  |  |    				;----------------------------------------------------------------------------------------------/
00314  |  |  |  |    				; Object Mode
00315  |  |  |  |    				;----------------------------------------------------------------------------------------------/
00316  |  |  |  |    				$oCon.Mode = 16 
00317  |  |  |  |    
00318  |  |  |  +-			Else
00319  |  |  |  |    				__4ern_SQL_Console('error', '$oCon = ObjCreate', 'ADODB Objekt konnte nicht erstellt werden.')
00320  |  |  |  |    				return SetError(3, '', 0)
00321  |  |  |  +-			EndIf
00322  |  |  |    
00323  |  |  |    		;----------------------------------------------------------------------------------------------/
00324  |  |  |    		; Beende die ADODB Verbindung
00325  |  |  |    		;----------------------------------------------------------------------------------------------/
00326  |  |  +-		Case 'get()'
00327  |  |  |    
00328  |  |  |    			;----------------------------------------------------------------------------------------------/
00329  |  |  |    			; Wenn Objekt erstellt wurde, stelle Verbindung her.
00330  |  |  |    			;----------------------------------------------------------------------------------------------/
00331  |  |  |  +-			If IsObj($oCon) Then
00332  |  |  |  |    				;----------------------------------------------------------------------------------------------/
00333  |  |  |  |    				; Cursor Side
00334  |  |  |  |    				;----------------------------------------------------------------------------------------------/
00335  |  |  |  |    				$oCon.CursorLocation = 3
00336  |  |  |  |    
00337  |  |  |  +-			Else
00338  |  |  |  |    				__4ern_SQL_Console('error', '$oCon = ObjCreate', 'ADODB Objekt konnte nicht erstellt werden.')
00339  |  |  |  |    				return SetError(3, '', 0)
00340  |  |  |  +-			EndIf
00341  |  |  |    
00342  |  |  +-		Case 'reset()'
00343  |  |  |    			$oCon.close
00344  |  |  |    			$conInfo  = NULL
00345  |  |  |    			$SERVER   = NULL
00346  |  |  |    			$DB       = NULL
00347  |  |  |    			$USER     = NULL
00348  |  |  |    			$PASSWORD = NULL
00349  |  |  |    			return
00350  |  +-	EndSwitch
00351  |    
00352  |    	;----------------------------------------------------------------------------------------------/
00353  |    	; SQL Server Connection String
00354  |    	;----------------------------------------------------------------------------------------------/
00355  |    	$oCon.Open(__4ern_SQL_Connection('getConnectionString', $SERVER, $DB, $USER, $PASSWORD, $DRIVER))
00356  |  +-	IF @error then
00357  |  |    		__4ern_SQL_Console('error', '$oCon.Open', 'Verbindung zum Server konnte nicht hergestellt werden.')
00358  |  |    		return SetError(2, '', 0)
00359  |  +-	endif
00360  |    	
00361  |    	;----------------------------------------------------------------------------------------------/
00362  |    	; Retrun ADO Connection Object
00363  |    	;----------------------------------------------------------------------------------------------/
00364  |    	return $oCon
00365  +-endfunc
00366    
00367    ; #FUNCTION# ====================================================================================================================
00368    ; Author ........: 4ern.de
00369    ; Description....: ADO SQL Execute
00370    ; ===============================================================================================================================
00371  +-func __4ern_SQL_rawQuery($pQuery = DEFAULT, $ACTION = DEFAULT)
00372  |    
00373  |    	;----------------------------------------------------------------------------------------------/
00374  |    	; Local Statics
00375  |    	;----------------------------------------------------------------------------------------------/
00376  |    	Local $oRecordSet, $error
00377  |    
00378  |    	;----------------------------------------------------------------------------------------------/
00379  |    	; DEFAULT
00380  |    	;----------------------------------------------------------------------------------------------/
00381  |    	if ($ACTION = DEFAULT) or ($ACTION = -1) or ($ACTION = '') then $ACTION = 'get()'
00382  |    
00383  |    	;----------------------------------------------------------------------------------------------/
00384  |    	; Erstelle eine Verbindung zur DB
00385  |    	;----------------------------------------------------------------------------------------------/
00386  |  +-	if $ACTION == 'get()' Then 	
00387  |  |    		$oCon = __4ern_SQL_Connect()
00388  |  +-	else
00389  |  |    		$oCon = __4ern_SQL_Connect(DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, 'write()')
00390  |  +-	endif
00391  |    	
00392  |    	if @error or IsObj($oCon) = 0 then return SetError(@error, '', $oCon)
00393  |    
00394  |    	;----------------------------------------------------------------------------------------------/
00395  |    	; FastEscape 
00396  |    	;----------------------------------------------------------------------------------------------/
00397  |    	$pQuery = StringReplace($pQuery, '"', "'")
00398  |    	$pQuery = StringReplace($pQuery, '`', '"')
00399  |    	__4ern_SQL_Console('SQL', $pQuery)
00400  |    
00401  |    	;----------------------------------------------------------------------------------------------/
00402  |    	; Führe Query aus
00403  |    	;----------------------------------------------------------------------------------------------/
00404  |    	$oRecordSet = $oCon.Execute($pQuery)
00405  |  +-	if @error Then 
00406  |  |    		$error = '4ern SQL Error -- Query konnte nicht ausgefuehrt werden.'
00407  |  |    		__4ern_SQL_Console('error', '$oCon.Execute($pQuery)', 'Query konnte nicht ausgefuehrt werden.')
00408  |  |    		$oCon.close
00409  |  |    		return SetError(@error, '', $oRecordSet)
00410  |  +-	endif
00411  |    
00412  |    	;----------------------------------------------------------------------------------------------/
00413  |    	; Prüfe ob Query Daten enthält
00414  |    	;----------------------------------------------------------------------------------------------/
00415  |  +-	if $action == 'get()' then
00416  |  |  +-		if $oRecordSet.eof Then
00417  |  |  |    			__4ern_SQL_Console('warning', '$oRecordSet.eof Query enthält keine Daten')
00418  |  |  |    			$oCon.close
00419  |  |  |    			return SetError(1, '', 0)
00420  |  |  +-		endif
00421  |  +-	endif
00422  |    
00423  |    	;----------------------------------------------------------------------------------------------/
00424  |    	; Return Switch
00425  |    	;----------------------------------------------------------------------------------------------/
00426  |  +-	Switch $action 
00427  |  |    
00428  |  |    		;----------------------------------------------------------------------------------------------/
00429  |  |    		; Übergibt alle Werte
00430  |  |    		;----------------------------------------------------------------------------------------------/
00431  |  |  +-		Case StringInStr($action, 'get()') <> 0
00432  |  |  |    			return __4ern_SQL_raw_getAll($oRecordSet, $oCon)
00433  |  |  |    
00434  |  |  +-		Case StringInStr($action, 'update()') <> 0
00435  |  |  |    			return 1
00436  |  +-	EndSwitch
00437  +-endfunc
00438    
00439    ; #FUNCTION# ====================================================================================================================
00440    ; Author ........: 4ern.de
00441    ; ===============================================================================================================================
00442  +-func __4ern_SQL_raw_getAll($oRecordSet, $oCon)
00443  |    
00444  |    	;----------------------------------------------------------------------------------------------/
00445  |    	; Return Typ
00446  |    	;----------------------------------------------------------------------------------------------/
00447  |    	Local CONST $rType = __4ern_SQL_defReturn()
00448  |    
00449  |    	;----------------------------------------------------------------------------------------------/
00450  |    	; Ermittle die Anzahl der Ergebniss
00451  |    	;----------------------------------------------------------------------------------------------/
00452  |    
00453  |  +-	if $oRecordSet.RecordCount = 1 then 
00454  |  |    		return __4ern_SQL_raw_getFirst($oRecordSet, $rType, $oCon)
00455  |  +-	endif
00456  |    
00457  |    	;----------------------------------------------------------------------------------------------/
00458  |    	; Erstellung der Array mit Spaltnamen
00459  |    	;----------------------------------------------------------------------------------------------/
00460  |    	
00461  |    		;----------------------------------------------------------------------------------------------/
00462  |    		; Return Typ
00463  |    		;----------------------------------------------------------------------------------------------/
00464  |  +-		Switch $rType
00465  |  |    
00466  |  |    			;----------------------------------------------------------------------------------------------/
00467  |  |    			; Return als Object Dictionary
00468  |  |    			;----------------------------------------------------------------------------------------------/
00469  |  |  +-			Case 'oDict'
00470  |  |  |    
00471  |  |  |    				;----------------------------------------------------------------------------------------------/
00472  |  |  |    				; Haupt Dictionary
00473  |  |  |    				;----------------------------------------------------------------------------------------------/
00474  |  |  |    				Local $oDict = ObjCreate('Scripting.Dictionary')
00475  |  |  |    
00476  |  |  |    				;----------------------------------------------------------------------------------------------/
00477  |  |  |    				; Ermittle Row Key
00478  |  |  |    				;----------------------------------------------------------------------------------------------/
00479  |  |  |    				$oRecordSet = $oRecordSet.Clone
00480  |  |  |    				$rRowKey = __4ern_SQL__QueryBuilder__setTable(-1, -1, 'getTKey')
00481  |  |  |    
00482  |  |  |    				;----------------------------------------------------------------------------------------------/
00483  |  |  |    				; Anzahl der Spalte
00484  |  |  |    				;----------------------------------------------------------------------------------------------/
00485  |  |  |    				$i_Colum = $oRecordSet.Fields.Count
00486  |  |  |    
00487  |  |  |    				;----------------------------------------------------------------------------------------------/
00488  |  |  |    				; Prüfe ob RowKey Colm vorhanden ist.
00489  |  |  |    				; 	--> Wenn nicht vorhanden, werden Zeilennummern als RowKey genutzt
00490  |  |  |    				;----------------------------------------------------------------------------------------------/
00491  |  |  |    				$bColm = false
00492  |  |  |  +-				for $i = 0 to $i_Colum -1
00493  |  |  |  |  +-					if $oRecordSet.Fields($i).Name == $rRowKey then 
00494  |  |  |  |  |    						$bColm = True
00495  |  |  |  v--|----						ExitLoop
00496  |  |  |  |  +-					endif
00497  |  |  |  +-				next
00498  |  |  |    
00499  |  |  |    				;----------------------------------------------------------------------------------------------/
00500  |  |  |    				; Erstelle die Spalten
00501  |  |  |    				;----------------------------------------------------------------------------------------------/
00502  |  |  |  +-				for $element in $oRecordSet.Fields
00503  |  |  |  |    					$oDict.add($element.Name, ObjCreate('Scripting.Dictionary'))
00504  |  |  |  +-				next
00505  |  |  |    
00506  |  |  |    				;----------------------------------------------------------------------------------------------/
00507  |  |  |    				; Erstelle ein Dictionary Object
00508  |  |  |    				;----------------------------------------------------------------------------------------------/
00509  |  |  |  +-				while Not $oRecordSet.eof
00510  |  |  |  |    					$rowKey = ($bColm = True) ? $oRecordSet.Fields($rRowKey).Value : $oRecordSet.AbsolutePosition
00511  |  |  |  |  +-					for $element in $oRecordSet.Fields
00512  |  |  |  |  |    						$oDict($element.Name).add($rowKey,$element.Value)
00513  |  |  |  |  +-					next
00514  |  |  |  |    					$oRecordSet.MoveNext
00515  |  |  |  +-				wend
00516  |  |  |    				$oCon.close
00517  |  |  |    				return $oDict
00518  |  |  |    
00519  |  |  |    			;----------------------------------------------------------------------------------------------/
00520  |  |  |    			; Return als Array
00521  |  |  |    			;----------------------------------------------------------------------------------------------/
00522  |  |  +-			Case 'array'
00523  |  |  |  +-				With $oRecordSet
00524  |  |  |  |    					Local $iFields = .Fields.Count
00525  |  |  |  |    					Local $sFields[1][$iFields] 
00526  |  |  |  |  +-					for $i = 0 to $iFields -1
00527  |  |  |  |  |    						$sFields[0][$i] = .Fields($i).Name
00528  |  |  |  |  +-					next
00529  |  |  |  |    					$aValue = .GetRows()
00530  |  |  |  +-				Endwith
00531  |  |  |    				_ArrayConcatenate($sFields, $aValue)
00532  |  +-		EndSwitch
00533  |    
00534  |    	;----------------------------------------------------------------------------------------------/
00535  |    	; Retrun Array
00536  |    	;----------------------------------------------------------------------------------------------/
00537  |    	$oCon.close
00538  |    	return $sFields
00539  +-endfunc
00540    
00541    ; #FUNCTION# ====================================================================================================================
00542    ; Author ........: 4ern.de
00543    ; ===============================================================================================================================
00544  +-func __4ern_SQL_raw_getFirst($oRecordSet, $rType, $oCon)
00545  |    	
00546  |    		;----------------------------------------------------------------------------------------------/
00547  |    		; Return Typ
00548  |    		;----------------------------------------------------------------------------------------------/
00549  |  +-		Switch $rType
00550  |  |    
00551  |  |    			;----------------------------------------------------------------------------------------------/
00552  |  |    			; Return als Object Dictionary
00553  |  |    			;----------------------------------------------------------------------------------------------/
00554  |  |  +-			Case 'oDict'
00555  |  |  |    				Local $oDict = ObjCreate('Scripting.Dictionary')
00556  |  |  |  +-				for $elemet in $oRecordSet.Fields
00557  |  |  |  |    					$oDict.Add($elemet.Name, $elemet.Value)
00558  |  |  |  +-				next
00559  |  |  |    				$oCon.close
00560  |  |  |    				return $oDict
00561  |  |  |    
00562  |  |  |    			;----------------------------------------------------------------------------------------------/
00563  |  |  |    			; Return als Array
00564  |  |  |    			;----------------------------------------------------------------------------------------------/
00565  |  |  +-			Case 'array'
00566  |  |  |    				Local $array[$oRecordSet.Fields.Count]
00567  |  |  |    				Local $i = 0
00568  |  |  |  +-				for $row in $oRecordSet.Fields
00569  |  |  |  |    					$array[$i] = $row.Value
00570  |  |  |  |    					$i += 1
00571  |  |  |  +-				next
00572  |  |  |    				$oCon.close
00573  |  |  |    				return $array
00574  |  |  |    
00575  |  +-		Endswitch	
00576  +-endfunc
00577    
00578    ; #FUNCTION# ====================================================================================================================
00579    ; Author ........: 4ern.de
00580    ; Description....: Console Dubugger
00581    ; ===============================================================================================================================
00582  +-func __4ern_SQL_Console_startUp($mode = 'Console')
00583  |    	__4ern_SQL_Console('set',$mode)
00584  |    	return
00585  +-endfunc
00586  +-func __4ern_SQL_Console($ACTION = DEFAULT, $PTITEL = 'none', $PTXT = 'none')
00587  |    	
00588  |    	Local Static $Output = NULL
00589  |    
00590  |    	;----------------------------------------------------------------------------------------------/
00591  |    	; Art der Ausgabe!
00592  |    	;-------------------------------------------------s---------------------------------------------/
00593  |  +-		SELECT 
00594  |  |    			;----------------------------------------------------------------------------------------------/
00595  |  |    			; Output to Console
00596  |  |    			;----------------------------------------------------------------------------------------------/
00597  |  |  +-			Case $Output == 'Console'
00598  |  |  |  +-				Switch $ACTION
00599  |  |  |  |  +-					Case 'error'
00600  |  |  |  |  |    						$str = @CRLF &'*** FEHLER - ERROR **************************************************************************************'
00601  |  |  |  |  |    						$str &=  @CRLF &'- Funktion:'&@tab&@tab&$PTITEL
00602  |  |  |  |  |    						$str &=  @CRLF &'- TEXT:'&@tab&@tab&@tab&$PTXT
00603  |  |  |  |  |    						$str &=  @CRLF &'*********************************************************************************************************'
00604  |  |  |  |  |    					
00605  |  |  |  |  +-					Case 'warning'
00606  |  |  |  |  |    						$str = @CRLF &'*** Warning *********************************************************************************************'
00607  |  |  |  |  |    						$str &=  @CRLF &'- TEXT:'&@tab&$PTITEL
00608  |  |  |  |  |    
00609  |  |  |  |  +-					Case 'info'
00610  |  |  |  |  |    						$str = @CRLF &'*** Information *****************************************************************************************'
00611  |  |  |  |  |    						$str &=  @CRLF &'- Title:'&@tab&$PTITEL
00612  |  |  |  |  |    						$str &=  @CRLF &'- TEXT:'&@tab&$PTXT
00613  |  |  |  |  |    
00614  |  |  |  |  +-					Case 'SQL'
00615  |  |  |  |  |    						$str = @CRLF &'*** RAW SQL *********************************************************************************************'
00616  |  |  |  |  |    						$str &= @CRLF &'>> '&$PTITEL&' <<'
00617  |  |  |  +-				EndSwitch
00618  |  |  |    				ConsoleWrite($str & @CRLF)
00619  |  |  |    
00620  |  |  |    			;----------------------------------------------------------------------------------------------/
00621  |  |  |    			; SET OUTPUT
00622  |  |  |    			;----------------------------------------------------------------------------------------------/
00623  |  |  +-			Case $ACTION == 'set'
00624  |  |  |    				$Output = $PTITEL
00625  |  |  |    				return
00626  |  +-		ENDSELECT
00627  |    
00628  |    	;----------------------------------------------------------------------------------------------/
00629  |    	; Return
00630  |    	;----------------------------------------------------------------------------------------------/
00631  |    	RETURN
00632  +-endfunc
00633    
00634    ;----------------------------------------------------------------------------------------------/
00635    ; Beschreibung: = Object Error Info
00636    ; @return:      = bool
00637    ; von           = 4ern.de
00638    ;----------------------------------------------------------------------------------------------/
00639  +-func __4ern_SQL_errFunc()
00640  |    	$str = 	"We intercepted a COM Error !" 		  & @CRLF & @CRLF                             & _
00641  |  |       			"err.description is: "                & @TAB  & $gO__4ern_SQLError.description    & @CRLF & _
00642  |  |       			"err.windescription:"                 & @TAB  & $gO__4ern_SQLError.windescription & @CRLF & _
00643  |  |       			"err.number is: "                     & @TAB  & Hex($gO__4ern_SQLError.number, 8) & @CRLF & _
00644  |  |       			"err.lastdllerror is: "               & @TAB  & $gO__4ern_SQLError.lastdllerror   & @CRLF & _
00645  |  |       			"err.scriptline is: "                 & @TAB  & $gO__4ern_SQLError.scriptline     & @CRLF & _
00646  |  |       			"err.source is: "                     & @TAB  & $gO__4ern_SQLError.source         & @CRLF & _
00647  |  |       			"err.helpfile is: "                   & @TAB  & $gO__4ern_SQLError.helpfile       & @CRLF & _
00648  |  |       			"err.helpcontext is: "                & @TAB  & $gO__4ern_SQLError.helpcontext
00649  |    			
00650  |    	__4ern_SQL_Console('error', 'SQL ERROR', $str)
00651  |    	Return 1
00652  +-endfunc
00653    
00654    ; #FUNCTION# ====================================================================================================================
00655    ; Author ........: BugFix
00656    ; ===============================================================================================================================
00657  +-Func __4ern_SQL__IsDefault($var, $sOtherDefaults='-0', $sDelim=Default)
00658  |    	Local $aDef[1] = [0], $match = 0
00659  |    	If IsKeyword($sDelim) Then $sDelim = Opt('GUIDataSeparatorChar')
00660  |    	If $sOtherDefaults <> '-0' Then $aDef = StringSplit($sOtherDefaults, $sDelim, 1)
00661  |    	If Not $aDef[0] Then Return IsKeyword($var)
00662  |  +-	For $i = 1 To $aDef[0]
00663  |  |    		If $var = $aDef[$i] Then $match = 1
00664  |  +-	Next
00665  |    	If Not $match Then Return IsKeyword($var)
00666  |    	Return 1
00667  +-EndFunc

======================
=== xref reports =====
======================

== User functions =================================================================================================
                          Func
Function name             Row     Referenced at Row(s)
========================= ====== ==================================================================================
__4ern_SQL_Connect        00242 
__4ern_SQL_Connection     00188 
__4ern_SQL_Console        00586 
__4ern_SQL_Console_startUp  00582 
__4ern_SQL__IsDefault     00657 
__4ern_SQL_defReturn      00164 
__4ern_SQL_errFunc        00639 
__4ern_SQL_rawQuery       00371 
__4ern_SQL_raw_getAll     00442 
__4ern_SQL_raw_getFirst   00544 
__4ern_set_SQL_Connection  00176 

#### indicates that this specific variable only occurs one time in the script.
---- indicates that this specific variable isn't declared with Dim/Local/Global/Const.

== Variables ======================================================================================================
Variable name             Dim   Used in Row(s)
========================= ===== ===================================================================================
#ignorefunc               ----- 00128 00129 00130 00131 00132 00133 00134 00135 00136 00137 00138 00139 00140 00141 
                                00142 00143 00144 00145 00146 00147 00148 00149 00150 00151 00152 00153 00154 00155 
                                00156
#include                  ----- 00001 00002
$DB                       ----- 00188 00213 00215 00219 00221 00225 00227 00231 00233 00248 00260 00272 00274 00276 
                                00278 00290 00346 00355
$DRIVER                   ----- 00188 00212 00215 00218 00221 00224 00227 00230 00233 00248 00264 00355
$Output                   ----- 00588 00597 00624
$PASSWORD                 ----- 00188 00213 00215 00219 00221 00225 00227 00248 00262 00272 00274 00276 00348 00355
$PTITEL                   ----- 00586 00601 00607 00611 00616 00624
$PTXT                     ----- 00586 00602 00612
$SERVER                   ----- 00188 00213 00215 00219 00221 00248 00263 00272 00274 00290 00345 00355
$SQL_connect              ----- 00088
$SQL_debug                ----- 00087
$SQL_delete               ----- 00096
$SQL_distinct             ----- 00102
$SQL_get                  ----- 00094
$SQL_groupBy              ----- 00119
$SQL_having               ----- 00111
$SQL_havingBetween        ----- 00113
$SQL_havingIn             ----- 00115
$SQL_havingNotBetween     ----- 00114
$SQL_havingNotIn          ----- 00116
$SQL_havingNotNull        ----- 00118
$SQL_havingNull           ----- 00117
$SQL_insertInto           ----- 00097
$SQL_limit                ----- 00099
$SQL_orHaving             ----- 00112
$SQL_orWhere              ----- 00104
$SQL_orderBy              ----- 00120
$SQL_raw                  ----- 00121
$SQL_returnType           ----- 00089
$SQL_select               ----- 00101
$SQL_setDatabase          ----- 00092
$SQL_setDefaultKey        ----- 00091
$SQL_setDefaultTable      ----- 00090
$SQL_table                ----- 00100
$SQL_take                 ----- 00098
$SQL_update               ----- 00095
$SQL_where                ----- 00103
$SQL_whereBetween         ----- 00105
$SQL_whereIn              ----- 00107
$SQL_whereNotBetween      ----- 00106
$SQL_whereNotIn           ----- 00108
$SQL_whereNotNull         ----- 00110
$SQL_whereNull            ----- 00109
$USER                     ----- 00188 00213 00215 00219 00221 00225 00227 00248 00261 00272 00274 00276 00290 00347 
                                00355
$aDef                     ----- 00658 00660 00661 00662 00663
$aValue                   ----- 00529 00531
$action                   ----- 00188 00195 00203 00208 00242 00259 00302 00371 00381 00386 00415 00426 00431 00434 
                                00586 00598 00623
$array                    ----- 00566 00569 00573
$bColm                    ----- 00491 00494 00510
$conInfo                  ----- 00248 00289 00291 00344
$database                 ----- 00176 00177 00188 00196
$databaseDefault          ----- 00190 00196 00197 00203 00209
$element                  ----- 00502 00503 00511 00512
$elemet                   ----- 00556 00557
$error                    ----- 00376 00406
$errorLogin               ----- 00269 00272 00274 00276 00278 00281
$gO__4ern_SQLError        ----- 00247 00640
$i                        ----- 00492 00493 00526 00527 00567 00569 00570 00662 00663
$iFields                  ----- 00524 00525 00526
$i_Colum                  ----- 00485 00492
$match                    ----- 00658 00663 00665
$mode                     ----- 00582 00583
$oCon                     ----- 00248 00253 00254 00290 00297 00312 00316 00331 00335 00343 00355 00364 00387 00389 
                                00392 00404 00408 00418 00432 00442 00454 00516 00537 00544 00559 00572
$oDict                    ----- 00474 00503 00517 00555 00557 00560
$oRecordSet               ----- 00376 00404 00409 00416 00432 00442 00453 00454 00479 00485 00493 00502 00509 00510 
                                00511 00514 00523 00544 00556 00566 00568
$pDB                      ----- 00242 00260
$pDRIVER                  ----- 00242 00264
$pPASSWORD                ----- 00242 00262
$pQuery                   ----- 00371 00397 00398 00399 00404
$pSERVER                  ----- 00242 00263
$pUSER                    ----- 00242 00261
$ptype                    ----- 00164 00166 00167 00168
$rRowKey                  ----- 00480 00493 00510
$rType                    ----- 00165 00166 00167 00168 00447 00454 00464 00544 00549
$row                      ----- 00568 00569
$rowKey                   ----- 00510 00512
$sDelim                   ----- 00657 00659 00660
$sFields                  ----- 00525 00527 00531 00538
$sOtherDefaults           ----- 00657 00660
$str                      ----- 00600 00601 00602 00603 00606 00607 00610 00611 00612 00615 00616 00618 00640 00650
$var                      ----- 00657 00661 00663 00665
0                         ----- 00297 00320 00339 00358 00392 00419 00431 00434 00492 00526 00527 00567 00658 00661 
                                00662
1                         ----- 00177 00283 00291 00381 00419 00435 00453 00480 00492 00525 00526 00570 00651 00658 
                                00660 00662 00663 00666
16                        ----- 00316
2                         ----- 00358
3                         ----- 00320 00335 00339
30                        ----- 00254
8                         ----- 00640
@CRLF                     ----- 00600 00601 00602 00603 00606 00607 00610 00611 00612 00615 00616 00618 00640
@TAB                      ----- 00601 00602 00607 00611 00612 00640
@error                    ----- 00356 00392 00405 00409
ACTION                    00242 00371 00586
AbsolutePosition          ----- 00510
Array                     ----- 00001
Case                      ----- 00211 00217 00223 00229 00271 00273 00275 00277 00307 00326 00342 00431 00434 00469 
                                00522 00554 00565 00597 00599 00605 00609 00614 00623
Clone                     ----- 00479
ConnectionTimeout         ----- 00254 00290
Const                     ----- 00447
Count                     ----- 00485 00524 00566
CursorLocation            ----- 00335
DB                        00188 00248
DRIVER                    00188 00248
Default                   ----- 00164 00242 00259 00260 00261 00262 00263 00264 00371 00381 00389 00586 00657
Else                      ----- 00318 00337 00388
EndFunc                   ----- 00169 00178 00236 00365 00437 00539 00576 00585 00632 00652 00667
EndIf                     ----- 00198 00214 00220 00226 00232 00235 00284 00292 00321 00340 00359 00390 00410 00420 
                                00421 00455 00496
EndSelect                 ----- 00626
EndSwitch                 ----- 00234 00279 00350 00436 00532 00575 00617
EndWith                   ----- 00530
ExitLoop                  ----- 00495
False                     ----- 00269 00491
Fields                    ----- 00485 00502 00511 00524 00556 00566 00568
For                       ----- 00492 00502 00511 00526 00556 00568 00662
Func                      ----- 00164 00176 00188 00242 00371 00442 00544 00582 00586 00639 00657
Global                    ----- 00247
If                        ----- 00166 00167 00168 00195 00203 00208 00212 00218 00224 00230 00259 00260 00261 00262 
                                00263 00264 00289 00297 00312 00331 00356 00386 00392 00405 00415 00416 00453 00493 
                                00659 00660 00661 00663 00665
In                        ----- 00502 00511 00556 00568
Local                     ----- 00165 00190 00248 00376 00447 00474 00524 00525 00555 00566 00567 00588 00658
Mode                      ----- 00316
MoveNext                  ----- 00514
Name                      ----- 00493 00503 00512 00527 00557
Next                      ----- 00497 00504 00513 00528 00558 00571 00664
Not                       ----- 00297 00509 00661 00665
Null                      ----- 00188 00248 00272 00274 00276 00278 00289 00344 00345 00346 00347 00348 00588
Or                        ----- 00392
PASSWORD                  00188 00248
#### PTITEL               00586
#### PTXT                 00586
RecordCount               ----- 00453
Return                    ----- 00166 00197 00203 00213 00215 00219 00221 00225 00227 00231 00233 00283 00320 00339 
                                00349 00358 00364 00392 00409 00419 00432 00435 00454 00517 00538 00560 00573 00584 
                                00625 00631 00651 00661 00665 00666
SERVER                    00188 00248
Select                    ----- 00593
Static                    ----- 00165 00190 00248 00588
#### Static$Output        00588
#### Static$oCon          00248
#### Static$rType         00165
Switch                    ----- 00209 00270 00302 00426 00464 00549 00598
Then                      ----- 00166 00167 00168 00195 00203 00208 00212 00218 00224 00230 00259 00260 00261 00262 
                                00263 00264 00272 00274 00276 00278 00281 00289 00297 00312 00331 00356 00381 00386 
                                00392 00405 00415 00416 00453 00493 00659 00660 00661 00663 00665
To                        ----- 00492 00526 00662
True                      ----- 00272 00274 00276 00278 00281 00494 00510
USER                      00188 00248
Value                     ----- 00510 00512 00557 00569
WEnd                      ----- 00515
While                     ----- 00509
With                      ----- 00523
__4ern_SQL_Connect        ----- 00088
__4ern_SQL_Console_startUp  ----- 00087
__4ern_SQL_QueryBuilder_Delete  ----- 00096
__4ern_SQL_QueryBuilder_Update  ----- 00095
__4ern_SQL_QueryBuilder_get  ----- 00094
__4ern_SQL_Query_distinct  ----- 00102
__4ern_SQL_Query_having   ----- 00111
__4ern_SQL_Query_havingBetween  ----- 00113
__4ern_SQL_Query_havingIn  ----- 00115
__4ern_SQL_Query_havingNotBetween  ----- 00114
__4ern_SQL_Query_havingNotIn  ----- 00116
__4ern_SQL_Query_havingNotNull  ----- 00118
__4ern_SQL_Query_havingNull  ----- 00117
__4ern_SQL_Query_insert   ----- 00097
__4ern_SQL_Query_orHaving  ----- 00112
__4ern_SQL_Query_orWhere  ----- 00104
__4ern_SQL_Query_orderBy  ----- 00120
__4ern_SQL_Query_select   ----- 00101
__4ern_SQL_Query_table    ----- 00100
__4ern_SQL_Query_where    ----- 00103
__4ern_SQL_Query_whereBetween  ----- 00105
__4ern_SQL_Query_whereIn  ----- 00107
__4ern_SQL_Query_whereNotBetween  ----- 00106
__4ern_SQL_Query_whereNotIn  ----- 00108
__4ern_SQL_Query_whereNotNull  ----- 00110
__4ern_SQL_Query_whereNull  ----- 00109
__4ern_SQL__QueryBuilder__groupBy  ----- 00119
__4ern_SQL__QueryBuilder__limit  ----- 00098 00099
__4ern_SQL__QueryBuilder__setTable  ----- 00090
__4ern_SQL__QueryBuilder__setkey  ----- 00091
__4ern_SQL_defReturn      ----- 00089
__4ern_SQL_rawQueryExpr   ----- 00121
__4ern_set_SQL_Connection  ----- 00092
#### aDef                 00658
#### action               00188
#### array                00566
au3                       ----- 00001
close                     ----- 00297 00343 00408 00418 00516 00537 00559 00572
#### conInfo              00248
database                  00176 00188
description               ----- 00640
eof                       ----- 00416 00509
#### error                00376
#### gO__4ern_SQLError    00247
helpcontext               ----- 00640
helpfile                  ----- 00640
#### i                    00567
#### iFields              00524
lastdllerror              ----- 00640
#### match                00658
#### mode                 00582
number                    ----- 00640
oCon                      00442 00544
oDict                     00474 00555
oRecordSet                00376 00442 00544
#### pDB                  00242
#### pDRIVER              00242
#### pPASSWORD            00242
#### pQuery               00371
#### pSERVER              00242
#### pUSER                00242
#### ptype                00164
rType                     00447 00544
#### sDelim               00657
#### sFields              00525
#### sOtherDefaults       00657
scriptline                ----- 00640
source                    ----- 00640
state                     ----- 00297
#### static$databaseDefault  00190
#### var                  00657
windescription            ----- 00640
== Sort Func Names Within #regions =====================================================================
 --------------- Current sequence  ----------------------------------------------------------- 
0000000164   Func __4ern_SQL_defReturn($ptype = Default)
0000000169   EndFunc   ;==>__4ern_SQL_defReturn
0000000176   Func __4ern_set_SQL_Connection($database = 'mysql')
0000000178   EndFunc   ;==>__4ern_set_SQL_Connection
0000000188   Func __4ern_SQL_Connection($action = 'getDatabase', $SERVER = Null, $DB = Null, $USER = Null, $PASSWORD = Null, $DRIVER = Null, $database = Null)
0000000236   EndFunc   ;==>__4ern_SQL_Connection
0000000242   Func __4ern_SQL_Connect($pDB = Default, $pUSER = Default, $pPASSWORD = Default, $pSERVER = Default, $pDRIVER = Default, $action = Default)
0000000365   EndFunc   ;==>__4ern_SQL_Connect
0000000371   Func __4ern_SQL_rawQuery($pQuery = Default, $action = Default)
0000000437   EndFunc   ;==>__4ern_SQL_rawQuery
0000000442   Func __4ern_SQL_raw_getAll($oRecordSet, $oCon)
0000000539   EndFunc   ;==>__4ern_SQL_raw_getAll
0000000544   Func __4ern_SQL_raw_getFirst($oRecordSet, $rType, $oCon)
0000000576   EndFunc   ;==>__4ern_SQL_raw_getFirst
0000000582   Func __4ern_SQL_Console_startUp($mode = 'Console')
0000000585   EndFunc   ;==>__4ern_SQL_Console_startUp
0000000586   Func __4ern_SQL_Console($action = Default, $PTITEL = 'none', $PTXT = 'none')
0000000632   EndFunc   ;==>__4ern_SQL_Console
0000000639   Func __4ern_SQL_errFunc()
0000000652   EndFunc   ;==>__4ern_SQL_errFunc
0000000657   Func __4ern_SQL__IsDefault($var, $sOtherDefaults = '-0', $sDelim = Default)
0000000667   EndFunc   ;==>__4ern_SQL__IsDefault
 --------------- New Sequence      ----------------------------------------------------------- 
0000000163   Func __4ern_set_SQL_Connection($database = 'mysql')
0000000165   EndFunc   ;==>__4ern_set_SQL_Connection
0000000170   Func __4ern_SQL__IsDefault($var, $sOtherDefaults = '-0', $sDelim = Default)
0000000180   EndFunc   ;==>__4ern_SQL__IsDefault
0000000186   Func __4ern_SQL_Connect($pDB = Default, $pUSER = Default, $pPASSWORD = Default, $pSERVER = Default, $pDRIVER = Default, $action = Default)
0000000309   EndFunc   ;==>__4ern_SQL_Connect
0000000319   Func __4ern_SQL_Connection($action = 'getDatabase', $SERVER = Null, $DB = Null, $USER = Null, $PASSWORD = Null, $DRIVER = Null, $database = Null)
0000000367   EndFunc   ;==>__4ern_SQL_Connection
0000000368   Func __4ern_SQL_Console($action = Default, $PTITEL = 'none', $PTXT = 'none')
0000000414   EndFunc   ;==>__4ern_SQL_Console
0000000420   Func __4ern_SQL_Console_startUp($mode = 'Console')
0000000423   EndFunc   ;==>__4ern_SQL_Console_startUp
0000000431   Func __4ern_SQL_defReturn($ptype = Default)
0000000436   EndFunc   ;==>__4ern_SQL_defReturn
0000000443   Func __4ern_SQL_errFunc()
0000000456   EndFunc   ;==>__4ern_SQL_errFunc
0000000461   Func __4ern_SQL_raw_getAll($oRecordSet, $oCon)
0000000558   EndFunc   ;==>__4ern_SQL_raw_getAll
0000000563   Func __4ern_SQL_raw_getFirst($oRecordSet, $rType, $oCon)
0000000595   EndFunc   ;==>__4ern_SQL_raw_getFirst
0000000601   Func __4ern_SQL_rawQuery($pQuery = Default, $action = Default)
0000000667   EndFunc   ;==>__4ern_SQL_rawQuery
== END Sort Func Names Within #Region - #EndRegion =====================================================

