Why not all of my columns show up in prisma client's types?

You have @default(autoincrement()) for id therefore you can let DB do the work and not pass it manually here, it will be controlled automatically on DB level to avoid conflicts and to simplify things for you.

But if you want to pass id you still can do it manually, this is why second type is there, it seems.

prisma generates two different types for some reason, and uses XOR type on them, so you can either use one or another, but not combination of them, like that:

  export type ExampleCreateArgs = {
    /**
     * Select specific fields to fetch from the Example
     * 
    **/
    select?: ExampleSelect | null
    /**
     * The data needed to create a Example.
     * 
    **/
    data: XOR<ExampleCreateInput, ExampleUncheckedCreateInput>
  }

For example, if you want to reuse that data type in your code you can do the following:

// substitute ExampleCreateArgs to correct one from your code
type Data = ExampleCreateArgs["data"]