MongoDB为什么有同名的集合

今天有朋友在说,同一个库,有两个相同的表名,还有截图

乍一看,好像真的有两个相同名的集合。这种情况很可能是有空格。经过确认确实是有空格。下面我们来验证一下:

rs01:PRIMARY> db.getCollection('t_user').insert({x:1});
WriteResult({ "nInserted" : 1 })
rs01:PRIMARY> db.getCollection('t_user ').insert({x:1});
WriteResult({ "nInserted" : 1 })
rs01:PRIMARY> show tables;
t_user
t_user 
rs01:PRIMARY> db.getCollectionNames()
[ "t_user", "t_user " ]

如果集合很多的时候,有什么办法可以快速查看哪些集合名称有空格哪些集合名有特殊字符呢

rs01:PRIMARY> show tables
t_user
t_user 
t_user 2
t_user!
t_user"
t_user#
t_user%
t_user&
t_user'
t_user(
t_user)
t_user*
t_user,
t_user.
t_user/
t_user:
t_user;
t_user<
t_user>
t_user?
t_user@
t_user[
t_user\
t_user]
t_user^
t_user{
t_user|
t_user}
t_user~

办法还是有的

rs01:PRIMARY> db.getCollectionNames().forEach(function(item){var a=item.match('[ ~!@#\$%^&*(){|};:"\'<,>.,?/\\\\[\\]]');if(a !=null){print("集合","'"+item+"'","不符合命名规范")}   } )
集合 't_user ' 不符合命名规范
集合 't_user 2' 不符合命名规范
集合 't_user!' 不符合命名规范
集合 't_user"' 不符合命名规范
集合 't_user#' 不符合命名规范
集合 't_user%' 不符合命名规范
集合 't_user&' 不符合命名规范
集合 't_user'' 不符合命名规范
集合 't_user(' 不符合命名规范
集合 't_user)' 不符合命名规范
集合 't_user*' 不符合命名规范
集合 't_user,' 不符合命名规范
集合 't_user.' 不符合命名规范
集合 't_user/' 不符合命名规范
集合 't_user:' 不符合命名规范
集合 't_user;' 不符合命名规范
集合 't_user<' 不符合命名规范
集合 't_user>' 不符合命名规范
集合 't_user?' 不符合命名规范
集合 't_user@' 不符合命名规范
集合 't_user[' 不符合命名规范
集合 't_user\' 不符合命名规范
集合 't_user]' 不符合命名规范
集合 't_user^' 不符合命名规范
集合 't_user{' 不符合命名规范
集合 't_user|' 不符合命名规范
集合 't_user}' 不符合命名规范
集合 't_user~' 不符合命名规范

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇