|  |  |  | @ -7,6 +7,7 @@ | 
			
		
	
		
			
				
					|  |  |  |  |  */ | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | namespace yii\db\pgsql; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | use yii\base\InvalidParamException; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | /** | 
			
		
	
	
		
			
				
					|  |  |  | @ -76,16 +77,16 @@ class QueryBuilder extends \yii\db\QueryBuilder | 
			
		
	
		
			
				
					|  |  |  |  | 	{ | 
			
		
	
		
			
				
					|  |  |  |  | 		$table = $this->db->getTableSchema($tableName); | 
			
		
	
		
			
				
					|  |  |  |  | 		if ($table !== null && $table->sequenceName !== null) { | 
			
		
	
		
			
				
					|  |  |  |  | 			$sequence='"'.$table->sequenceName.'"'; | 
			
		
	
		
			
				
					|  |  |  |  | 			$sequence = '"' . $table->sequenceName . '"'; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 			if (strpos($sequence,'.')!==false) { | 
			
		
	
		
			
				
					|  |  |  |  | 				$sequence=str_replace('.','"."',$sequence); | 
			
		
	
		
			
				
					|  |  |  |  | 			if (strpos($sequence, '.') !== false) { | 
			
		
	
		
			
				
					|  |  |  |  | 				$sequence = str_replace('.', '"."', $sequence); | 
			
		
	
		
			
				
					|  |  |  |  | 			} | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 			$tableName = $this->db->quoteTableName($tableName); | 
			
		
	
		
			
				
					|  |  |  |  | 			if ($value === null) { | 
			
		
	
		
			
				
					|  |  |  |  | 				$key = reset($table->primaryKey); | 
			
		
	
		
			
				
					|  |  |  |  | 				$value="(SELECT COALESCE(MAX(\"{$key}\"),0) FROM {$tableName})+1"; | 
			
		
	
		
			
				
					|  |  |  |  | 				$value = "(SELECT COALESCE(MAX(\"{$key}\"),0) FROM {$tableName})+1"; | 
			
		
	
		
			
				
					|  |  |  |  | 			} else { | 
			
		
	
		
			
				
					|  |  |  |  | 				$value = (int)$value; | 
			
		
	
		
			
				
					|  |  |  |  | 			} | 
			
		
	
	
		
			
				
					|  |  |  | @ -111,9 +112,8 @@ class QueryBuilder extends \yii\db\QueryBuilder | 
			
		
	
		
			
				
					|  |  |  |  | 		$tableNames = $table ? [$table] : $this->db->schema->findTableNames($schema); | 
			
		
	
		
			
				
					|  |  |  |  | 		$command = ''; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 		foreach($tableNames as $tableName) | 
			
		
	
		
			
				
					|  |  |  |  | 		{ | 
			
		
	
		
			
				
					|  |  |  |  | 			$tableName='"'.$schema.'"."'.$tableName.'"'; | 
			
		
	
		
			
				
					|  |  |  |  | 		foreach ($tableNames as $tableName) { | 
			
		
	
		
			
				
					|  |  |  |  | 			$tableName = '"' . $schema . '"."' . $tableName . '"'; | 
			
		
	
		
			
				
					|  |  |  |  | 			$command .= "ALTER TABLE $tableName $enable TRIGGER ALL; "; | 
			
		
	
		
			
				
					|  |  |  |  | 		} | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
	
		
			
				
					|  |  |  | 
 |