Tag: 数据库

Postgresql:如何创build表,如果它不存在?

在Postgresql中,我如何才能创build一个条件来创build一个表,如果它不存在? 代码示例赞赏。

价格字段的string,小数或浮点数据types?

我有一个价格字段/列(例如15.50美元),我不知道Rails的数据types应该是string,小数还是浮点数?

什么是“高级”SQL?

看一下需要“高级SQL”的工作描述。 我可以写任何人的基本查询,也可以在专业环境中使用MySQL数据库,但是如果我被雇佣,我将如何处理这些工作? 什么是高级SQL的例子,我在哪里沿着SQL noob到SQL master的规模?

Rails的方式来重置id字段上的种子

我发现这个问题的答案是“纯粹的SQL”。 有没有办法, 在Rails中 ,重置特定表的ID字段? 我为什么要这样做? 因为我的表格中有不断移动的数据 – 很less有超过100行,但总是不同的。 现在已经达到25K了,这里没有任何意义。 我打算使用Rails应用程序(rufus-scheduler)内部的调度程序来每月运行id字段重置。

从不删除或更新数据的通用数据库

Rich Hickey倡导的数据pipe理方法给了我很大的启发,并且在Datomic中实现,数据不会在原地发生变异,所有版本始终保留并且可以查询,而且时间是第一步 ,一stream的概念。 当然,还有专门的数据库,比如说Git,或者其他的源码控制系统。 问题是,如果有任何(或多或less)通用数据库pipe理系统的关系,graphics,层次结构,文档或任何其他风味,可以有效地使用,如电子商务Web应用程序。 或者Datomic是唯一的select呢?

无模式数据库系统的吸引力是什么?

我一直听到很多关于无模式(通常是分布式)的数据库系统的讨论,比如MongoDB,CouchDB,SimpleDB等等。 虽然我可以理解他们可能是有价值的某些目的,在我的大多数应用程序中,我试图持有具有特定types的特定数量的字段的对象,我只是自动思考在关系模型中。 我一直在考虑具有唯一整数ID,空/非空字段,SQL数据types和select查询来查找集的行。 虽然我被这些新系统的分布式本质和简单的JSON / RESTful接口所吸引,但是我不明白如何松散地input键/值哈希将帮助我进行开发。 为什么松散types的无模式系统能够保持干净的数据集? 我怎么能find所有date在x和y之间的项目,当他们可能没有date? 有没有join的概念? 我知道很多系统有自己的差异和优势,但是我想知道范式的差异。 我想这是一个开放式的问题,但也许社区的答案和他们亲眼看到这些系统的优点的方式将有助于启发我和其他人什么时候我想要利用这些(公认的更多臀部)系统,而不是传统的RDBMS。

我应该在GPS数据库中存储多less位有效数字?

我有我的MySQL数据库经度和纬度坐标(GPS数据)。 它目前存储为: column type ———————— geolat decimal(10,6) geolng decimal(10,6) 问题:我是否真的需要像decimal(10,6)那样大的数据types才能正确存储坐标数据? 由于我有经度和纬度的综合指数,这个指数的规模是巨大的。 如果我可以在不损害任何东西的情况下做到这一点,那就太好了。

PostgreSQL中密码的数据types是什么?

我读了有数据types的encryption,所以密码保护在您的数据库。 我现在使用varchar来存储密码。 我有这样的想法,我应该以某种方式应用SHA-512函数的密码,并把这些数据的地方,使明文密码被删除。 但是,Perl中的数据types表明我在PostgreSQL中比varchar有更好的方法。 PostgreSQL中密码的数据types是什么?

大数据量的数据库select?

我即将开始一个应该有一个相当大的数据库的新项目。 表的数量不会很大(<15),大多数数据(99%)将被包含在一个大表中,这几乎是插入/只读(没有更新)。 这张表中的估计数据量每天将增长到50万条 ,我们至less要保留1年才能做好各种报表。 需要将(只读) 复制数据库作为备份/故障转移,并且可能在高峰时间卸载报告。 我对这个大型数据库没有第一手的经验,所以我问在哪种情况下哪个数据库是最好的select。 我知道Oracle是安全的,但如果有人对Postgresql或Mysql有类似的设置经验,那么我更感兴趣。

实体属性值(EAV)的替代scheme?

我们的数据库是基于EAV(Entity-Attribute-Value)模型devise的。 那些曾经使用过EAV模型的人,为了灵活性而知道所有的垃圾。 我问客户有关使用EAV模型(灵活性)的原因,他们的回答是:他们的实体随着时间而改变。 所以,今天他们可能有一个有几个属性的表,但在一个月的时间里,可能会添加一些新的属性,或者现有的属性可能会被重命名。 他们需要生成报告以及时返回到任何阶段,并根据当前实体的形状查询数据。 我知道这对传统的关系模型来说是不可行的,但我个人认为EAV是反模式的。 是否有其他的替代模型,使我们能够捕捉实体和实例变化的时间维度? 干杯,Mosh