Interface IEngine
	
	
All Engine implementations should implement this interface
	 
	
	
	
	Methods summary
	
		
			 public 
			
			
			
		 | 
		
		#
		beginTransaction( )
		
			
Start an atomic transaction on the database. These should generally not be
held open very long in order to prevent deadlocks 
		 
		
			
Start an atomic transaction on the database. These should generally not be
held open very long in order to prevent deadlocks 
		 
		  | 
	
	
		
			 public 
			
			
			
		 | 
		 | 
	
	
		
			 public 
			Alchemy\engine\ResultSet
			
			
		 | 
		
		#
		query( Alchemy\core\query\IQuery $query )
		
			
Compile and run a SQL expression on the database 
		 
		
			
Compile and run a SQL expression on the database 
				Parameters
				
					- $query
 
					Query Query to compile 
				  
				Returns
				
		 
		  | 
	
	
		
			 public 
			Alchemy\engine\ResultSet
			
			
		 | 
		
		#
		execute( string $sql, array $params = array() )
		
			
Execute raw SQL on the database connection 
		 
		
			
Execute raw SQL on the database connection 
				Parameters
				
					- $sql
 
					string $sql Statement string 
					- $params
 
					array $params Params to bind to statement 
				  
				Returns
				
		 
		  | 
	
	
		
			 public 
			
			
			
		 | 
		
		#
		rollbackTransaction( )
		
			
Revert a pending transaction on the database 
		 
		
			
Revert a pending transaction on the database 
		 
		  |