2009-10-10 6 views
5

Gần đây tôi đã bắt đầu đọc trên Grails và muốn sử dụng các lược đồ bảo mật SQL Server để nhóm các bảng được tạo bởi GORM. Tuy nhiên, tôi dường như không thể tìm thấy một tài liệu tham khảo giải thích cách thực hiện tác vụ này. Tôi mới đến Hibernate là tốt và muốn biết nếu điều này là có thể. Cảm ơn bạn.Trong Grails, làm thế nào để khai báo một tên Schema SQL Server cho một Domain Class?

Trả lời

12

Bạn có thể làm điều này khi bạn xác định rõ ràng các bản đồ trong một lớp học miền như described here:

class Book { 
    static mapping = { 
     table name:"books", schema:"dbo" 
    } 
} 
+0

Điều này thật tuyệt. Cảm ơn vì mối lên kết đó. GORM có tạo lược đồ không? Nếu không, thực hành tốt nhất trong Grails bao quanh kiểu thiết kế này là gì? –

+0

Tôi đã không thực sự sử dụng các lược đồ như thế này, nhưng nó không khó để tìm ra bởi tring. –

+0

Tôi sẽ thử. Tôi đánh giá cao phản hồi của bạn. Cảm ơn bạn. –

0

Câu trả lời được đưa ra bởi Michael Borgwardt là đúng về mặt kỹ thuật, nhưng lưu ý rằng tính Grails 1.3.4, có vẫn là một lỗi khi sử dụng kế thừa bảng cho mỗi lớp, tất cả các lớp con sẽ bỏ qua định nghĩa lược đồ.

Có thể làm việc xung quanh là đặt tên cho toàn bộ bảng và bao gồm lược đồ như vậy: "dbo.books", tuy nhiên điều này có thể gây ra vấn đề với tính toàn vẹn tham chiếu; GORM sẽ cố gắng tạo tên có chứa quá nhiều "." ký tự, và PostgreSQL (cho một) nghĩ rằng bạn đang cố gắng tạo tính toàn vẹn tham chiếu máy chủ cơ sở dữ liệu chéo, không được hỗ trợ.