made database stuffs more composable