MS SQLSERVER에 액세스 할 수 JRuby를, 액티브, 그리고 JDBC를 사용하는 경우 스키마를 설정하고 속성 이름의 경우 처리 방법 : 스키마 설정하는 방법내가 SQL 서버 데이터베이스에 액세스하는 두 가지 문제가 있었다
내가 액세스해야하는 테이블은 'dbo'대신 'general'스키마 아래에 있습니다. 내가 set_table_name를 사용하지 않는 한, 나는 '잘못된 개체'와 같은 오류를 얻을 것이다
class Role < ActiveRecord::Base
set_table_name "general.Role"
end
는 JDBC URL의 속성 스키마를 설정하는 또 다른 방법이있다. 나는 MS jdbc 드라이버와 jtds 드라이버를 확인했지만 그런 속성을 찾을 수 없습니다.
- 방법 DB2에 액세스 할 때 이름
속성 처리하기 위해, 모든 이름은 소문자입니다 속성. 그러나 mssql의 경우 속성 이름은 데이터베이스에 정의 된 것과 동일한 대소 문자 (예 : "RoleID")로 유지됩니다. db2 드라이버가 특성 이름을 소문자로 만들 것인지 궁금합니다.
예. 당신 말이 맞아요. 나는 oracle/db2/mysql을 대부분 사용한다. 그러나 나는 여전히 옳다. 나의 예에서는 "일반적"이다. SQL Server 2005 이상에는 "사용자 - 스키마 분리"가 있습니다. "Microsoft SQL Server Management Studio"에서 테이블의 속성을 열면 "스키마"라고합니다. 다음 sqls를 실행하는 경우 : select * from sys.schemas; select * from sys.database_principals; general는 pricipal_id = 1 인 스키마가 "dbo"임을 보여줍니다. 나는 set_table_name을 사용할 수 있지만 SQL 서버에서는 코드가 고정되어 있으므로 변경하지 않고 다른 db로 이동할 수 없음을 의미합니다. – Bewang