859
Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.
Trong vỏ MongoDB, làm cách nào để liệt kê tất cả các bộ sưu tập cho cơ sở dữ liệu hiện tại mà tôi đang sử dụng?
hỏi ngày 14 tháng 1 năm 2012 lúc 22:52Jan 14, 2012 at 22:52
coffee-grindercoffee-grindercoffee-grinder
26.3K19 Huy hiệu vàng54 Huy hiệu bạc81 Huy hiệu đồng19 gold badges54 silver badges81 bronze badges
0
Bạn có thể làm...
JavaScript [Shell]:
db.getCollectionNames[]
Node.js:
db.listCollections[]
Không phải là JavaScript [chỉ Shell]:
show collections
Lý do tôi gọi là không phải là JavaScript là vì:
$ mongo prodmongo/app --eval "show collections"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
2016-10-26T19:34:34.886-0400 E QUERY [thread1] SyntaxError: missing ; before statement @[shell eval]:1:5
$ mongo prodmongo/app --eval "db.getCollectionNames[]"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
[
"Profiles",
"Unit_Info"
]
Nếu bạn thực sự muốn đầu ra
$ mongo prodmongo/app --eval "db.getCollectionNames[].join['\n']"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
Profiles
Unit_Info
5 ngọt ngào, ngọt ngào đó, bạn có thể:$ mongo prodmongo/app --eval "db.getCollectionNames[].join['\n']"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
Profiles
Unit_Info
Đã trả lời ngày 14 tháng 1 năm 2012 lúc 22:57Jan 14, 2012 at 22:57
AdathedevadathedevAdaTheDev
Huy hiệu vàng 138K2727 gold badges199 silver badges195 bronze badges
5
> show collections
Sẽ liệt kê tất cả các bộ sưu tập trong DB hiện được chọn, như đã nêu trong Trợ giúp dòng lệnh [
$ mongo prodmongo/app --eval "db.getCollectionNames[].join['\n']"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
Profiles
Unit_Info
6].
Đã trả lời ngày 14 tháng 1 năm 2012 lúc 22:56Jan 14, 2012 at 22:56
3
Làm cách nào để liệt kê tất cả các bộ sưu tập cho cơ sở dữ liệu hiện tại mà tôi đang sử dụng?
Ba phương pháp
5$ mongo prodmongo/app --eval "db.getCollectionNames[].join['\n']" MongoDB shell version: 3.2.10 connecting to: prodmongo/app Profiles Unit_Info
8$ mongo prodmongo/app --eval "db.getCollectionNames[].join['\n']" MongoDB shell version: 3.2.10 connecting to: prodmongo/app Profiles Unit_Info
9$ mongo prodmongo/app --eval "db.getCollectionNames[].join['\n']" MongoDB shell version: 3.2.10 connecting to: prodmongo/app Profiles Unit_Info
Để liệt kê tất cả các cơ sở dữ liệu:
show dbs
Để nhập hoặc sử dụng cơ sở dữ liệu đã cho:
use databasename
Để liệt kê tất cả các bộ sưu tập:
show collections
Output:
collection1 collection2 system.indexes
[or]
db.listCollections[]
0Output:
collection1 collection2 system.indexes
[or]
db.getCollectionNames[]
Output:
3db.listCollections[]
Để nhập hoặc sử dụng bộ sưu tập đã cho
db.listCollections[]
4
Đã trả lời ngày 19 tháng 5 năm 2014 lúc 10:08May 19, 2014 at 10:08
3
> show collections
0Nó cho kết quả tương tự như câu trả lời của Cameron.
Đã trả lời ngày 14 tháng 10 năm 2013 lúc 18:20Oct 14, 2013 at 18:20
Kevin Meredithkevin MeredithKevin Meredith
40.2k61 Huy hiệu vàng202 Huy hiệu bạc363 Huy hiệu Đồng61 gold badges202 silver badges363 bronze badges
Ngoài các tùy chọn được đề xuất bởi người khác:
db.listCollections[]
5Ngoài ra còn có một cách khác có thể thực sự tiện dụng nếu bạn muốn biết làm thế nào mỗi bộ sưu tập được tạo ra [ví dụ: đó là một bộ sưu tập được giới hạn với một kích thước cụ thể]:
db.listCollections[]
6
Đã trả lời ngày 31 tháng 10 năm 2013 lúc 5:22Oct 31, 2013 at 5:22
Salvador Dalisalvador DaliSalvador Dali
205K142 Huy hiệu vàng687 Huy hiệu bạc746 Huy hiệu Đồng142 gold badges687 silver badges746 bronze badges
Đầu tiên bạn cần sử dụng cơ sở dữ liệu để hiển thị tất cả các bộ sưu tập/bảng bên trong nó.
db.listCollections[]
7Đã trả lời ngày 9 tháng 11 năm 2013 lúc 7:54Nov 9, 2013 at 7:54
Tarun Guptatarun GuptaTarun Gupta
6.1872 Huy hiệu vàng39 Huy hiệu bạc38 Huy hiệu Đồng2 gold badges39 silver badges38 bronze badges
Thử:
db.listCollections[]
8
người sử dụng
86.6K18 Huy hiệu vàng197 Huy hiệu bạc190 Huy hiệu Đồng18 gold badges197 silver badges190 bronze badges
Đã trả lời ngày 5 tháng 5 năm 2014 lúc 6:21May 5, 2014 at 6:21
Bạn có thể sử dụng
$ mongo prodmongo/app --eval "db.getCollectionNames[].join['\n']"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
Profiles
Unit_Info
8 hoặc $ mongo prodmongo/app --eval "db.getCollectionNames[].join['\n']"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
Profiles
Unit_Info
5.
Đã trả lời ngày 16 tháng 4 năm 2015 lúc 8:46Apr 16, 2015 at 8:46
LXGLXGlxg
2153 Huy hiệu bạc9 Huy hiệu đồng3 silver badges9 bronze badges
1
Lệnh được sử dụng để hiển thị tất cả các bộ sưu tập trong cơ sở dữ liệu MongoDB là
show collections
Trước khi chạy lệnh
$ mongo prodmongo/app --eval "db.getCollectionNames[].join['\n']"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
Profiles
Unit_Info
5, bạn phải chọn cơ sở dữ liệu:show collections
0Để xem tất cả các cơ sở dữ liệu, bạn có thể sử dụng lệnh
show collections
1Để biết thêm thông tin, hãy truy cập xem bắt đầu.
Đã trả lời ngày 4 tháng 4 năm 2015 lúc 16:38Apr 4, 2015 at 16:38
KKKKKKkkk
1.8001 huy hiệu vàng24 Huy hiệu bạc44 Huy hiệu đồng1 gold badge24 silver badges44 bronze badges
Các lệnh sau đây trên Mongoshell là phổ biến.
show collections
2Also,
show collections
3Đôi khi thật hữu ích khi thấy tất cả các bộ sưu tập cũng như các chỉ mục trên các bộ sưu tập là một phần của không gian tên tổng thể:
Đây là cách bạn sẽ làm điều đó:
show collections
4Giữa ba lệnh và đoạn trích này, bạn nên được bảo hiểm tốt!
Đã trả lời ngày 24 tháng 1 năm 2016 lúc 17:05Jan 24, 2016 at 17:05
SoodsoodSood
1591 Huy hiệu bạc6 Huy hiệu đồng1 silver badge6 bronze badges
Nếu bạn muốn hiển thị tất cả các bộ sưu tập từ vỏ MongoDB [dòng lệnh], hãy sử dụng trình trợ giúp Shell,
show collections
Điều đó cho thấy tất cả các bộ sưu tập cho cơ sở dữ liệu hiện tại. Nếu bạn muốn nhận tất cả các danh sách bộ sưu tập từ ứng dụng của mình thì bạn có thể sử dụng phương thức cơ sở dữ liệu MongoDB
db.getCollectionNames[]
Để biết thêm thông tin về Trình trợ giúp Shell MongoDB, bạn có thể thấy
> show collections
4 tham chiếu nhanh Shell.
Đã trả lời ngày 22 tháng 12 năm 2014 lúc 6:37Dec 22, 2014 at 6:37
0
Tôi nghĩ rằng một trong những nhầm lẫn lớn nhất là sự khác biệt giữa những gì bạn có thể làm với
> show collections
4 [hoặc vỏ tương tác/lai] so với > show collections
6 [hoặc vỏ JavaScript thuần túy]. Tôi giữ những tài liệu hữu ích này tiện dụng:- Sự khác biệt giữa tương tác và kịch bản
4> show collections
- Người trợ giúp lệnh Shell Shell
Dưới đây là một ví dụ về kịch bản những gì bạn có thể làm với các lệnh
> show collections
8:show collections
7Lưu ý: Điều đó hoạt động thực sự tốt như một lớp lót. [Nhưng nó trông khủng khiếp trên Stack & nbsp; tràn.]
show collections
8
Đã trả lời ngày 3 tháng 1 năm 2017 lúc 21:04Jan 3, 2017 at 21:04
Bruno Bronoskybruno BronoskyBruno Bronosky
62,8K11 Huy hiệu vàng154 Huy hiệu bạc138 Huy hiệu đồng11 gold badges154 silver badges138 bronze badges
0
show collections
9Thông tin chi tiết cho mỗi bộ sưu tập:
$ mongo prodmongo/app --eval "show collections"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
2016-10-26T19:34:34.886-0400 E QUERY [thread1] SyntaxError: missing ; before statement @[shell eval]:1:5
$ mongo prodmongo/app --eval "db.getCollectionNames[]"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
[
"Profiles",
"Unit_Info"
]
0- Đối với người dùng có quyền truy cập cần thiết [đặc quyền cấp hành động ListCollection trên cơ sở dữ liệu], phương thức liệt kê tên của tất cả các bộ sưu tập cho cơ sở dữ liệu.
- Đối với người dùng không có quyền truy cập cần thiết, phương thức chỉ liệt kê các bộ sưu tập mà người dùng có đặc quyền. Ví dụ: nếu người dùng đã tìm thấy trên một bộ sưu tập cụ thể trong cơ sở dữ liệu, phương thức sẽ trả về bộ sưu tập đó.
Để liệt kê danh sách bộ sưu tập dựa trên chuỗi tìm kiếm.
$ mongo prodmongo/app --eval "show collections"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
2016-10-26T19:34:34.886-0400 E QUERY [thread1] SyntaxError: missing ; before statement @[shell eval]:1:5
$ mongo prodmongo/app --eval "db.getCollectionNames[]"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
[
"Profiles",
"Unit_Info"
]
1Ví dụ: Tìm tất cả bộ sưu tập có "nhập" trong tên Find all collection having "import" in the name
$ mongo prodmongo/app --eval "show collections"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
2016-10-26T19:34:34.886-0400 E QUERY [thread1] SyntaxError: missing ; before statement @[shell eval]:1:5
$ mongo prodmongo/app --eval "db.getCollectionNames[]"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
[
"Profiles",
"Unit_Info"
]
2Đã trả lời ngày 9 tháng 8 năm 2018 lúc 18:22Aug 9, 2018 at 18:22
Amitesh Bhartiamitesh BhartiAmitesh Bharti
Huy hiệu vàng 12k657 Huy hiệu bạc54 Huy hiệu đồng6 gold badges57 silver badges54 bronze badges
3
$ mongo prodmongo/app --eval "show collections"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
2016-10-26T19:34:34.886-0400 E QUERY [thread1] SyntaxError: missing ; before statement @[shell eval]:1:5
$ mongo prodmongo/app --eval "db.getCollectionNames[]"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
[
"Profiles",
"Unit_Info"
]
3- Kết nối với cơ sở dữ liệu MongoDB bằng
4. Điều này sẽ bắt đầu kết nối.> show collections
- Sau đó chạy lệnh
0. Điều này sẽ cho bạn thấy tất cả các cơ sở dữ liệu thoát/có sẵn.show dbs
- Sau đó chọn
1 bạn muốn. Trong những điều trên làshow dbs
2. Sau đó chạyshow dbs
3. Điều này sẽ chuyển sang cơ sở dữ liệu bạn muốn.show dbs
- Sau đó chạy lệnh
5. Điều này sẽ hiển thị tất cả các$ mongo prodmongo/app --eval "db.getCollectionNames[].join['\n']" MongoDB shell version: 3.2.10 connecting to: prodmongo/app Profiles Unit_Info
5 bên trong cơ sở dữ liệu đã chọn của bạn.show dbs
Đã trả lời ngày 22 tháng 8 năm 2016 lúc 5:42Aug 22, 2016 at 5:42
caldera.saccaldera.saccaldera.sac
4.7287 Huy hiệu vàng36 Huy hiệu bạc67 Huy hiệu Đồng7 gold badges36 silver badges67 bronze badges
1
Để chuyển sang cơ sở dữ liệu.
By:
Sử dụng {your_database_name} Ví dụ: example:
$ mongo prodmongo/app --eval "show collections"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
2016-10-26T19:34:34.886-0400 E QUERY [thread1] SyntaxError: missing ; before statement @[shell eval]:1:5
$ mongo prodmongo/app --eval "db.getCollectionNames[]"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
[
"Profiles",
"Unit_Info"
]
4trong đó
show dbs
6 là tên của cơ sở dữ liệu của bạn.Sau đó viết:
$ mongo prodmongo/app --eval "show collections"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
2016-10-26T19:34:34.886-0400 E QUERY [thread1] SyntaxError: missing ; before statement @[shell eval]:1:5
$ mongo prodmongo/app --eval "db.getCollectionNames[]"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
[
"Profiles",
"Unit_Info"
]
5Điều này sẽ cho bạn tên của các bộ sưu tập.
Đã trả lời ngày 20 tháng 7 năm 2017 lúc 12:27Jul 20, 2017 at 12:27
1
Trên> = 2.x, bạn có thể làm
db.listCollections[]
Trên 1.x bạn có thể làm
db.getCollectionNames[]
Đã trả lời ngày 12 tháng 1 năm 2016 lúc 2:30Jan 12, 2016 at 2:30
AniruddhaniruddhAniruddh
7.5381 Huy hiệu vàng24 Huy hiệu bạc43 Huy hiệu đồng1 gold badge24 silver badges43 bronze badges
3
Liệt kê tất cả các bộ sưu tập từ vỏ
4:> show collections
- db.getCollectionNames []
- Hiển thị bộ sưu tập
- Hiển thị bảng
Lưu ý: Bộ sưu tập sẽ hiển thị từ cơ sở dữ liệu hiện tại nơi bạn đến currently
Đã trả lời ngày 29 tháng 7 năm 2018 lúc 10:45Jul 29, 2018 at 10:45
1
Hiển thị bộ sưu tập
Lệnh này thường hoạt động trên vỏ MongoDB sau khi bạn đã chuyển sang cơ sở dữ liệu.
Đã trả lời ngày 7 tháng 12 năm 2016 lúc 11:38Dec 7, 2016 at 11:38
Phincy l Piousphincy l PiousPHINCY L PIOUS
3351 Huy hiệu vàng3 Huy hiệu bạc7 Huy hiệu đồng1 gold badge3 silver badges7 bronze badges
Trong trường hợp bất cứ ai sử dụng Python & Pymongo:Python & PyMongo:
show dbs
8Đã trả lời ngày 28 tháng 10 năm 2021 lúc 23:01Oct 28, 2021 at 23:01
Đối với triển khai MongoDB 3.0 bằng công cụ lưu trữ WiredTiger, nếu bạn chạy
9 từ phiên bản của Mongo Shell trước 3.0 hoặc phiên bản trình điều khiển trước phiên bản tương thích 3.0,$ mongo prodmongo/app --eval "db.getCollectionNames[].join['\n']" MongoDB shell version: 3.2.10 connecting to: prodmongo/app Profiles Unit_Info
9 sẽ không trả về dữ liệu, ngay cả khi có các bộ sưu tập hiện có.$ mongo prodmongo/app --eval "db.getCollectionNames[].join['\n']" MongoDB shell version: 3.2.10 connecting to: prodmongo/app Profiles Unit_Info
Để biết thêm chi tiết, xin vui lòng tham khảo điều này.
Đã trả lời ngày 21 tháng 3 năm 2017 lúc 15:27Mar 21, 2017 at 15:27
RahulrahulRahul
15.6K3 Huy hiệu vàng40 Huy hiệu bạc61 Huy hiệu Đồng3 gold badges40 silver badges61 bronze badges
1
Tôi sử dụng
use databasename
1 [hỗ trợ MongoDB 3.0 trở lên] cho mục đích này.Example:
$ mongo prodmongo/app --eval "show collections"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
2016-10-26T19:34:34.886-0400 E QUERY [thread1] SyntaxError: missing ; before statement @[shell eval]:1:5
$ mongo prodmongo/app --eval "db.getCollectionNames[]"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
[
"Profiles",
"Unit_Info"
]
8Để tìm nạp thêm thông tin như chỉ mục của bộ sưu tập:
$ mongo prodmongo/app --eval "show collections"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
2016-10-26T19:34:34.886-0400 E QUERY [thread1] SyntaxError: missing ; before statement @[shell eval]:1:5
$ mongo prodmongo/app --eval "db.getCollectionNames[]"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
[
"Profiles",
"Unit_Info"
]
9Để chỉ in tên bộ sưu tập:
$ mongo prodmongo/app --eval "db.getCollectionNames[].join['\n']"
MongoDB shell version: 3.2.10
connecting to: prodmongo/app
Profiles
Unit_Info
0Tôi cảm thấy điều này cung cấp sự linh hoạt hơn.
Đọc thêm: ListCollections
Đã trả lời ngày 19 tháng 11 năm 2018 lúc 9:09Nov 19, 2018 at 9:09
Sahith Vibudhisahith VibudhiSahith Vibudhi
4.5732 Huy hiệu vàng28 Huy hiệu bạc31 Huy hiệu đồng2 gold badges28 silver badges31 bronze badges
show collections
hoặc
0db.listCollections[]
hoặc
3$ mongo prodmongo/app --eval "db.getCollectionNames[].join['\n']" MongoDB shell version: 3.2.10 connecting to: prodmongo/app Profiles Unit_Info
Đã trả lời ngày 2 tháng 1 năm 2020 lúc 11:19Jan 2, 2020 at 11:19
nixxo_raanixxo_raanixxo_raa
3358 Huy hiệu bạc19 Huy hiệu đồng8 silver badges19 bronze badges
1
Sử dụng lệnh sau từ shell
> show collections
4:show collections
Đã trả lời ngày 5 tháng 4 năm 2018 lúc 7:41Apr 5, 2018 at 7:41
1