나는 다음 루비 코드를 한 :어떻게 데이터베이스 테이블에 배열을 삽입합니까?
94 def open_connection(info)
95 self.log "opening #{info.inspect}"
96 db = Mysql.init
97 db.options(Mysql::SET_CHARSET_NAME, 'utf8')
98 db.real_connect(info.host, info.user, info.password, info.dbname, info.port)
99 db.query("SET NAMES utf8")
100 »···res = db.query("SELECT realname FROM profiles")
101
102 »···conn = PGconn.connect("localhost", 5432, '', '', "dbname", "user", "pwd")
어떻게 걸릴 않는 res
내 포스트 그레스 데이터베이스에 삽입을 통해 변수 및 루프?
나는 매우를 제외하고, DB 작업의 가장 사소한를 ORM을 사용하는 것이 좋습니다 것 . 나는 [Sequel] (http://sequel.rubyforge.org/)을 좋아하지만 [Datamapper] (http://datamapper.org/)와 [ActiveRecord] (http://ar.rubyonrails.org/)는 좋다. 또한. 좋은 ORM으로 큰 승리를 거둔 것은 다른 DBM으로 전환해야 할 때 코드가 변경되지 않는다는 것입니다. –
@theTinMan : ORM의 단점은 일회성을 위해 많은 노력이 필요하다는 것과 동시에 두 개의 다른 데이터베이스와 대화하게하는 것이 어려울 수 있다는 것입니다. 또한 ORM은 데이터베이스 고유의 데이터 유형 (예 : PostgreSQL의 풍부하지만 비표준 유형)과 고급 SQL 기능 (예 : 트리거 및 창 기능)에 문제가있는 경향이 있습니다. 나는 Ruby ORM 경험의 대부분이 (불행히도) ActiveRecord를 사용하고 있고, 다른 것들은 더 나은 태도를 가지며 제한이 적을 수 있음을 지적함으로써이를 증명할 것입니다. –
FWIW, [Sequel] (http://sequel.rubyforge.org/index.html)은 여러 데이터베이스와 대화하기가 어렵지 않고 일반적으로 원시 SQL 문과 동일한 작업에 대한 입력이 적습니다. 윈 - 윈 (그리고 아니요, 단지 데이터 세트를 사용하여 실제 ORM이 아니기 때문에 효율적이고 사용하기 쉽습니다). – Phrogz