标签: database

为什么我应该使用基于文档的数据库而不是关系数据库?

为什么我应该使用像CouchDB这样的基于文档的数据库而不是使用关系数据库.是否存在基于文档的数据库比关系数据库更适合的典型应用程序或域?

database couchdb relational non-relational-database

183
推荐指数
5
解决办法
4万
查看次数

什么是多语言数据库设计的最佳实践?

创建多语言数据库的最佳方法是什么?为每个表创建本地化表使设计和查询变得复杂,在其他情况下为每种语言添加列很简单但不动态,请帮助我理解什么是企业应用程序的最佳选择

sql database database-design

183
推荐指数
4
解决办法
11万
查看次数

如何首次配置postgresql?

我刚刚安装了postgresql,我在安装过程中指定了密码x.当我尝试createdb并指定任何密码时,我收到消息:

createdb:无法连接到数据库postgres:FATAL:用户的密码验证失败

同样的createuser.

我应该怎么开始?我可以将自己添加为数据库用户吗?

database linux postgresql configuration

183
推荐指数
6
解决办法
23万
查看次数

如何在数据存储而不是数据库中思考?

例如,Google App Engine使用Google Datastore而不是标准数据库来存储数据.有没有人有使用Google数据存储而不是数据库的提示?似乎我已经训练了我的思想,在直接映射到表结构的对象关系中100%思考,现在很难看到任何不同的东西.我可以理解Google数据存储区的一些好处(例如性能和分发数据的能力),但牺牲了一些好的数据库功能(例如连接).

与Google Datastore或BigTable合作过的人是否有任何与他们合作的好建议?

database google-app-engine google-cloud-datastore google-cloud-platform

182
推荐指数
5
解决办法
2万
查看次数

delete_all vs destroy_all?

我正在寻找从表中删除记录的最佳方法.例如,我有一个用户,其用户ID跨越许多表.我想删除此用户以及在所有表中具有其ID的每个记录.

u = User.find_by_name('JohnBoy')
u.usage_indexes.destroy_all
u.sources.destroy_all
u.user_stats.destroy_all
u.delete
Run Code Online (Sandbox Code Playgroud)

这工作并从所有表中删除用户的所有引用,但我听说这destroy_all是非常重的过程,所以我尝试了delete_all.它只从用户自己的用户表中删除用户,并将id所有其他表中的用户设为null,但保留其中的记录.有人可以分享执行此类任务的正确流程吗?

我看到在所有相关对象上destroy_all调用该destroy函数,但我只是想确认正确的方法.

ruby database activerecord ruby-on-rails

182
推荐指数
3
解决办法
9万
查看次数

181
推荐指数
9
解决办法
7万
查看次数

外键约束:何时使用ON UPDATE和ON DELETE

我正在使用MySQL Workbench设计我的数据库模式,这非常酷,因为你可以做图表并转换它们:P

无论如何,我决定使用InnoDB因为它的外键支持.我注意到的一件事是,它允许您为外键设置On Update和Delete选项.有人可以解释在一个简单的例子中可以使用"限制","级联"和设置null的位置吗?

例如,假设我有一个user包含a 的表userID.并说我有一个message多对多的消息表,它有2个外键(userIDuser表中引用相同的主键).在这种情况下,设置On Update和On Delete选项是否有用?如果是这样,我选择哪一个?如果这不是一个好例子,你能否提出一个很好的例子来说明这些如何有用?

谢谢

mysql sql database foreign-keys

181
推荐指数
1
解决办法
13万
查看次数

如何从Windows命令行中找到mysql数据目录

在linux中我可以使用命令找到mysql安装目录which mysql.但我在Windows中找不到任何东西.我试过echo %path%,它产生了许多路径以及mysql bin的路径.

我想从windows中的命令行找到mysql数据目录,以便在批处理程序中使用.我还想从linux命令行找到mysql数据目录.可能吗?或者我们怎么做?

在我的例子中,mysql数据目录位于安装文件夹中,即..MYSQL\mysql server 5\data它可能安装在任何驱动器上.我想从命令行返回它.

mysql database linux windows command-line

181
推荐指数
3
解决办法
40万
查看次数

如何使用mongoimport导入csv

尝试导入包含联系信息的CSV:

Name,Address,City,State,ZIP  
Jane Doe,123 Main St,Whereverville,CA,90210  
John Doe,555 Broadway Ave,New York,NY,10010 
Run Code Online (Sandbox Code Playgroud)

运行此似乎不会向数据库添加任何文档:

$ mongoimport -d mydb -c things --type csv --file locations.csv --headerline
Run Code Online (Sandbox Code Playgroud)

Trace说imported 1 objects,但启动Mongo shell并运行db.things.find()并不会显示任何新文档.

我错过了什么?

database csv import mongodb mongoimport

179
推荐指数
4
解决办法
22万
查看次数

将新值添加到现有ENUM类型

我有一个使用enum类型的表列.我希望更新该enum类型以获得额外的可能值.我不想删除任何现有值,只需添加新值.最简单的方法是什么?

database postgresql enums

178
推荐指数
12
解决办法
10万
查看次数