là có cách nào để nói với học thuyết automaticaly tạo bảng sơ đồ mà không cần sử dụng lệnh này:Học thuyết tự động tạo tất cả các bảng cơ sở dữ liệu?
Trả lời
Sử dụng SchemaTool và EntityManager bạn có thể làm điều này:
$schemaTool = new \Doctrine\ORM\Tools\SchemaTool($entityManager);
$classes = $entityManager->getMetadataFactory()->getAllMetadata();
$schemaTool->createSchema($classes);
làm thế nào tôi có thể xác định lược đồ đó được tạo trước hay không? –
Tôi không tin rằng có một cách để xem liệu lược đồ đã được tạo chưa. Theo kinh nghiệm của tôi, tôi đã sử dụng '$ schemaTool-> dropSChema ($ classes)' trước khi tạo nó. – trevorengstrom
@ Sina Miandashti bạn cũng có thể thực hiện thử. 'try {// here create table code} catch (\ Doctrine \ ORM \ Tools \ ToolsException $ exc) {// Bảng tồn tại}' – Hokusai
Tôi không chắc chắn những gì bạn muốn làm, nhưng nếu bạn muốn làm điều đó từ mã php, bạn có thể kiểm tra cách lệnh doctrine hoạt động và sao chép mã. Bạn có thể tìm thấy tại đây:
vendor/symfony/src/Symfony/Bundle/DoctrineBundle/Command/CreateDatabaseDoctrineCommand.php
Nếu bạn kiểm tra phương pháp thực thi, bạn sẽ thấy cách thực hiện. Rõ ràng bạn cần có một kết nối thông qua trình điều khiển DBManager, cho phép bạn truy cập vào một đối tượng lược đồ, do đó có một phương thức createDatabase. Tôi đã không cố gắng điều này bản thân mình.
- 1. SQL Server - Tạo Trigger đơn chạy cho TẤT CẢ các bảng trong cơ sở dữ liệu
- 2. Tự động tạo các bảng cơ sở dữ liệu từ các đối tượng, khung thực thể
- 3. Làm thế nào để tạo ra cơ sở dữ liệu trong học thuyết 2
- 4. Xóa tất cả các hàng trong bảng khỏi bảng cơ sở dữ liệu SQLite
- 5. Tạo trường DateTime trong cơ sở dữ liệu tự động?
- 6. Học thuyết 2. Tự động tạo proxy
- 7. Cách xem tất cả các bảng trong cơ sở dữ liệu HSQLDB?
- 8. Các kịch bản cơ sở dữ liệu tự động ELMAH
- 9. Liệt kê tất cả các bảng trong cơ sở dữ liệu
- 10. Đổi tên tất cả các bảng trong cơ sở dữ liệu
- 11. Cách lấy danh sách tất cả các bảng trong hai cơ sở dữ liệu khác nhau
- 12. Đang cập nhật tất cả các bảng trong một cơ sở dữ liệu MySQL
- 13. ứng dụng tự động tạo giao diện người dùng CRUD cho bảng cơ sở dữ liệu
- 14. Tạo cơ sở dữ liệu với JPA?
- 15. Tạo tập lệnh của tất cả các chỉ mục trong cơ sở dữ liệu
- 16. MySQL Dump Tất cả Cơ sở dữ liệu và Tạo (hoặc Tạo lại) chúng trên Nhập?
- 17. cắt ngắn tất cả các bảng trong cơ sở dữ liệu mysql
- 18. Làm thế nào để xóa tất cả các bảng trong cơ sở dữ liệu MySQL?
- 19. Đặt lại cơ sở dữ liệu (xóa tất cả), sau đó gieo một cơ sở dữ liệu
- 20. ID tăng tự động trong cơ sở dữ liệu H2
- 21. Hoạt động trên tất cả các cơ sở dữ liệu từ vỏ mongo
- 22. Làm thế nào để thả tất cả các bảng trong cơ sở dữ liệu mà không làm rơi cơ sở dữ liệu?
- 23. Tạo cơ sở dữ liệu từ cơ sở dữ liệu khác?
- 24. Xóa dữ liệu khỏi tất cả các bảng trong MYSQL
- 25. Cập nhật Collation của tất cả các trường trong cơ sở dữ liệu khi đang bay
- 26. Xóa tất cả trừ n trên cùng khỏi bảng cơ sở dữ liệu trong SQL
- 27. Mysql - tìm một bảng trong tất cả cơ sở dữ liệu
- 28. Bảng xóa MySQL - Cơ sở dữ liệu hiện tại hoặc mọi cơ sở dữ liệu?
- 29. Tạo bảng trong cơ sở dữ liệu sqlite trên android
- 30. Cách xuất tất cả các bảng từ Cơ sở dữ liệu Access sang Excel - Trang tính cho mỗi bảng
Bạn có thể thực hiện lệnh từ bên trong php ...? http://php.net/manual/en/function.exec.php –