我目前在我的开发环境中运行SQLite,在Heroku上的生产环境中运行PostgreSQL。
我当前的搜索功能在模型entry.rb中有以下方法:
def self.search(search)
where("content LIKE ? OR created_at LIKE ?", "%#{search}%", "%#{search}%")
end
虽然这在我运行SQLite - Heroku的开发环境中可以工作,但是运行PostgreSQL却抛出了一个错误。
我知道在不同的环境中运行不同的数据库是不好的做法,但是,现在为了便于管理,我
注意:我在windows上。
在我的计算机上安装postgreSQL后,尝试使用heroku pg:psql时出现以下错误:
--> Connecting to postgresql-defined-56809 ! The local psql command could not be located. For help installing psql, see ! https://devcenter.heroku.com/articles/heroku-postgresql#local-setup
psql命令有效,并且psql --version返回的版本与herok
我想在PostgreSQL中创建只读视图。我们可以在Oracle中创建,但不能在PostgreSQL中创建。
我试图创建一个只读视图,但在只读时出现语法错误。
CREATE OR REPLACE VIEW VIEW NAME()
from table names
where filter condition1=filter
condition2
with READ ONLY;
但是READ ONLY在PostgreSQL中不起作用。如何在PostgreSQL中创建只读视图?
在Postgresql插件中使用Heroku。在查看我的日志时,postgresql似乎在记录每一个..。单身..。事务。我知道您可以通过执行()之类的操作来设置日志级别。
ALTER DATABASE my_database SET log_statement=error;
然而,Heroku说
ERROR: permission denied to set parameter "log_statement"
注意,这可能是的重复,但它们从未提到如何绕过Heroku权限。(我应该悬赏那张票还是留着这张?)
如何修改Heroku Postgresql日志记录级别?
更新
褶皱
我使用的是ppas9.3(与oracle兼容),并且我想进行转换,以便它只影响一侧。我想要的是,我想要一个在插入和比较过程中可以同时接受整数值和布尔值的数据类型,但没有获得任何成功,出现的主要问题是:最初他们接受这些值:
In Postgresql:-
For Integer type datatype:-
insert into ask(aint) values(1,'1') working
insert into ask(aint) values(true) not working
select * from ask where aint=1,&
当我在heroku中运行我的服务器时,我收到以下错误:
Is the server running locally and accepting connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
在我的heroku应用上,它说它确实添加了Postgres db插件。
数据库设置
DATABASES = {
'default': {}
}
try:
from .local_settings import LOCAL_DATABASE_SETTING
我使用的是PostgreSQL 9.4和超棒的JSONB字段类型。我试图查询文档中的一个字段。以下是psql CLI中的工作内容
SELECT id FROM program WHERE document -> 'dept' ? 'CS'
当我试图通过Scala应用程序运行相同的查询时,我会看到下面的错误。我使用的是Play框架和Anorm,所以查询如下
SQL(s"SELECT id FROM program WHERE document -> 'dept' ? {dept}")
.on('dept ->
因此,我花了一天的时间来研究这个问题,并阅读了所有相关的问题,还查看了Heroku文档。
这是推送时的Heroku问题:
-----> Preparing app for Rails asset pipeline
Running: rake assets:precompile
rake aborted!
could not connect to server: Connection refused
Is the server running on host "127.0.0.1" and accepting
TCP/IP connection
我正在尝试实现一个在单个where条件中包含多个列的查询。但是它生成了一个sql错误。
我最初的查询是这样的
SELECT id
FROM usertable
WHERE (user_addedon BETWEEN '2013-07-02 00:00:01' AND '2013-08-01 23:59:59')
OR (user_deletedon BETWEEN '2013-07-02 00:00:01' AND '2013-08-01 23:59:59')
OR (user_modified BETWEEN &
我正在尝试使用Heroku连接云中的Postgres数据库。
heroku pg:info显示数据库信息,但heroku pg:psql失败,出现以下错误:
$ heroku pg:psql
--> Connecting to postgresql-<database-id>
psql: server closed the connection unexpectedly
This probably means the server terminated abnormally
before or while processing the requ
我在MySQL和PostgreSQL中都使用了下一条SQL语句,但在PostgreSQL中失败了。
db.Query(`SELECT COUNT(*) as N FROM email WHERE address = ?`, email)
出现以下错误:
pq: F:"scan.l" M:"syntax error at end of input" S:"ERROR" C:"42601" P:"50" R:"scanner_yyerror" L:"993"
有什么问题吗?Postgre
我在将本地数据库导入Heroku时遇到问题。我目前正在构建一个Django web应用程序,我尝试了解如何将本地数据库导入Heroku .I尝试使用pg:push命令推送本地Postgresql数据库,然后出现此错误 pg_restore: error: unrecognized data block type (0) while searching archive
! pg_restore errored with 1 你知道为什么会这样吗?
当向heroku推送一个新的应用程序,然后运行heroku rake db:migrate时,我得到以下错误:
heroku rake db:migrate
rake aborted!
Please install the postgresql adapter: `gem install activerecord-postgresql-adapter` (pg is not part of the bundle. Add it to Gemfile.)
有人知道为什么它会要求postgresql吗?在我的gemfile中,我唯一使用的db gem是sqlite。
该应用程序使用Devise进行
我有一个问题,我把我的应用程序推到github,我用heroku做了部署,一切都很好,但是当我运行heroku run --app myapp rake db:reset (在heroku上填充数据库)时,我发现了以下充满错误的消息(我只显示了我认为重要的部分,因为消息太长了)
FATAL: permission denied for database "postgres"
DETAIL: User does not have CONNECT privilege.
/app/vendor/bundle/ruby/2.0.0/gems/activerecord-4.2.5/l
我正在一个带有Heroku基本搜索表单的应用程序中工作,但是我无法让我的sql查询与PostgreSQL一起正常工作,即使这个查询与MySQL一起工作。顺便说一句,我试图粘贴Heroku的日志,但它只说当您搜索某个内容时,它会呈现500.html。
下面是带有搜索操作的模型OrdemDeServico:
def self.search(search)
if search
joins(:cliente).where("clientes.nome LIKE ? OR veiculo LIKE ? OR placa LIKE ? OR ordem_de_servicos.id
*After deploying my django model in heroku and migrations,
我无法按批处理将数据加载到postgres表中。
*
例如:
heroku run python ProddbUpload.py
我对以下错误感到失望
运行python ProddbUpload.py
on ⬢ spellbeeword... up, run.9508 (Free)
relation "spellbeeword_tb" does not exist
验证表名Spellbeeword_tb存在于heroku环境中的Postgres数据库中
在迁移到heroku的过程中,我只有在使用PostgreSQL时才会出现奇怪的错误(在Mysql中运行良好)。
当我执行@user.county_ids时,我得到以下错误:
ActiveRecord::StatementInvalid: PGError: ERROR: for SELECT DISTINCT, ORDER BY expressions must appear in select list
LINE 1: ...id" WHERE ("activity_areas".user_id = 1) ORDER BY counties.n...
生成的sql请求
我有一个Ruby on Rails条件,它可以在MySQL中工作,但不能在PostGres中工作
:conditions => ["A between ? and ? and B between ? and ? and C between ? and ? and ddd is ?",@amin,@amax,@bmin,@bmax,@cmin,@cmax,params[:input].to_s]
生成错误:
ActiveRecord::StatementInvalid (PGError: ERROR: syntax error at or near "E'
我知道在甲骨文中有一个WHERE表示LEFT JOIN,其语法如下:
FROM t1, t2
WHERE t1.id = t2.id(+)
而不是:
FROM t1 LEFT JOIN t2
ON t1.id = t2.id
在PostgreSQL中有类似的地方吗?我搜索了文档,但没有找到这样的特性。
根据,我做了"heroku addons:add heroku-postgresql:dev“。但当我这么做的时候
class CreateUsers < ActiveRecord::Migration
def up
create_table :users do |t|
execute "CREATE EXTENSION hstore"
t.hstore :access
end
end
def down
drop_table :users
execute "DROP
我在Heroku上得到了这个错误,但在本地没有(在两者上使用PostgreSQL )..
错误是:
ActiveRecord::StatementInvalid (PG::Error: ERROR: column "posts.content" must appear in the GROUP BY clause or be used in an aggregate function
我怀疑这与我的帖子模型中的这一行有关:
scope :with_tags, lambda { |tags| joins(:tags).group('posts.id').wher
def self.search(search)
if search
where('name OR username OR bio LIKE ?', "%#{search}%")
else
scoped
end
end
上面的代码在我的使用SQLite的开发服务器上运行得很好,但是由于Heroku使用了PostgreSQL,所以出现了问题(似乎你只能在真正的布尔查询中使用"OR“)。
有没有更好的方法来实现这个简单的搜索,这样它就可以和PostgreSQL一起工作了,或者我必须转向一个更复杂的搜索解决方案?
当我运行命令heroku run rake db:migrate将我的应用部署到Heroku时,我得到了这个错误:
PG::Error: ERROR: relation "roles" does not exist
: SELECT a.attname, format_type(a.atttypid, a.atttypmod), d.adsrc, a.attnotnull
FROM pg_attribute a LEFT JOIN pg_attrdef d
ON a.attrelid = d.