sql >> Database >  >> RDS >> PostgreSQL

Ruby:hoe dynamisch parameters in native PG-edelsteen te vervangen

Tijdelijke aanduidingen (d.w.z. $1 , $2 , ...) zijn voor waarden. Een databasenaam (of tabelnaam, kolomnaam, ...) is een identifier. Dit is vergelijkbaar met het verschil tussen de naam van een variabele en de waarde die de variabele in Ruby heeft.

Als u dynamisch een identifier in een SQL moet invoegen, moet u string-interpolatie gebruiken en het speciale doel quote_ident methode om ervoor te zorgen dat u het correct citeert. Dus iets meer als dit:

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



  1. Hoe krijg ik het laatste bericht in elk gesprek van een bepaalde gebruiker in SQL?

  2. Toon geselecteerd keuzerondje op de bewerkingspagina

  3. De kosten van uw databasehosting verlagen:DigitalOcean vs. AWS vs. Azure

  4. camelCase-kolom in postgresql-database in rails (ActiveRecord)