sql >> Databasteknik >  >> RDS >> PostgreSQL

Operator finns inte:heltal =? när du använder Postgres

PostgreSQL fungerar med numrerade platshållare ($1 , $2 , ...) naturligt snarare än de vanliga positionsfrågetecknen. Dokumentationen för Go-gränssnittet använder också numrerade platshållare i sina exempel:

rows, err := db.Query("SELECT name FROM users WHERE age = $1", age)

Det verkar som att Go-gränssnittet inte översätter frågetecknen till numrerade platshållare som många gränssnitt gör, så frågetecknet når hela vägen till databasen och förvirrar allt.

Du bör kunna byta till numrerade platshållare istället för frågetecken:

 row := db.QueryRow(
    "SELECT name FROM users WHERE id = $1", id)



  1. Uppdatera en kolumn i MySQL

  2. 2 funktioner som returnerar månadens namn från ett datum i MySQL

  3. PostgreSQL Connection Pooling:Del 4 – PgBouncer vs. Pgpool-II

  4. Ta bort en ansluten användare från ett Oracle 10g-databasschema