2012-07-20 2 views
0

두 개의 데이터베이스가 있다고 가정 해 봅시다 : 하나는 목록에 포함되어있는 books이고 다른 하나는 정부가 소유하고있는 모든 allowed_books리스트를 포함하고 있습니다 (예, 아마도 나쁜 예이지만, 곧 아이디어를 얻을 수 있습니다.) allowed_books 데이터베이스는 일정하고 일관성이 있습니다. 내 books 데이터베이스의 Bookallowed_books 데이터베이스에도 없으면 books에서 삭제해야합니다.레일에서 데이터베이스/테이블 비교

가장 좋은 방법은 무엇입니까?

두 개의 데이터베이스를 비교하고 관계없는 항목을 제거하는 Rails/Sqlite 함수/메소드가 있습니까? 아니면 수동으로해야합니까?

나는 실제로 새로운 Book을 만들기 전에 먼저 AllowedBook.find_by_name(book_name)과 같은 것을 실행할 것이라고 생각했습니다. nil을 반환하면 처음부터 추가하지 않겠습니다. 또는 위에서 언급했듯이 Rails/Sqlite가 데이터베이스 간의 불일치를 확인하는 기본 방법을 가지고 있다면이 방법이 더 좋습니까?

저는 수동으로 find_by_name을 사용하여이를 수행 할 수 있다고 확신합니다. 그러나 이것이 최선의 선택입니까?

루비 1.9.3, 레일즈 3.2.6, SQLite3 3.6.20.

감사합니다.

+0

이것은 도움이 될 수 있습니다 : http://www.sql-server-tool.com/compare-two-tables.htm – Brian

답변

0

"두 개의 데이터베이스"가 아니라 "두 개의 테이블"을 의미한다고 가정합니다. Rails 나 Sqlite에서 제안하는 것을 할 방법이 없다. 수동으로해야합니다.

+0

고마워요. 코드를 구현하기 만하면 실제로 모든 것을 삽입하는 것보다 빠르게 실행됩니다. 기대하지 않았고, 따라서 질문. 감사! –