When a statement is first compiled in the database server it is assigned a unique number. If the same or other application submit the same SQL statement the compilation is reused and the SqlId remains the same. When there are no references to a particular statement the server will eventually discard the compilation. If the same statement is compiled again it will be assigned a new SqlId.