sql >> Database teknologi >  >> RDS >> PostgreSQL

Ruby:Sådan udskiftes parametre dynamisk i native PG gem

Pladsholdere (dvs. $1 , $2 , ...) er for værdier. Et databasenavn (eller tabelnavn, kolonnenavn, ...) er en identifikator. Dette svarer til forskellen mellem et variabelnavn og den værdi, variablen har i Ruby.

Hvis du har brug for dynamisk at indsætte en identifikator i noget SQL, skal du bruge strenginterpolation og det særlige formål quote_ident metode til at sikre, at du citerer det korrekt. Så noget mere som dette:

db_name = conn.quote_ident(db_name)
res     = conn.exec("CREATE DATABASE #{db_name}")



  1. Masseindlæg fra csv i postgres ved hjælp af golang uden brug af for loop

  2. Fejlkode:1452. Kan ikke tilføje eller opdatere en underordnet række

  3. Kan MySQL konvertere en gemt UTC-tid til lokal tidszone?

  4. Beskyttelse af en mappe mod direkte URL-adgang