sql >> Databasteknik >  >> RDS >> PostgreSQL

Ruby:Hur man dynamiskt ersätter parametrar i native PG gem

Platshållare (d.v.s. $1 , $2 , ...) är för värden. Ett databasnamn (eller tabellnamn, kolumnnamn, ...) är en identifierare. Detta liknar skillnaden mellan ett variabelnamn och värdet som variabeln har i Ruby.

Om du dynamiskt behöver infoga en identifierare i viss SQL måste du använda stränginterpolation och det speciella syftet quote_ident metod för att se till att du citerar det korrekt. Så något mer så här:

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



  1. Hur man visar en sträng som är på två olika språk (Hindi/engelska) i php

  2. SUM() Funktion i MySQL

  3. Relationen hittades inte fel när du använder Django utan syncdb

  4. Vad som ska indexeras på frågor med många kolumner i WHERE-satsen