嗨,我是数据库新手.我正在研究庞大的数据库并试图清理混乱.我想首先找到占据整个数据库中最高内存的前十个表.因为桌子太多,我无法找到每张桌子的记忆.我需要占据最大空间的前10或20个桌子.任何帮助将非常感激.谢谢.
我在Mac OS X 10.6.x上安装了postgres。当我运行postgres数据库版本时:
psql --versionpsql (PostgreSQL) 9.1.1
contains support for command-line editing
Run Code Online (Sandbox Code Playgroud)
当我检查服务器的版本时:
psql -c "select version();" version
--------------------------------------------------------------------------------------------------------------------------------------------------
PostgreSQL 9.0.5 on x86_64-apple-darwin10.8.0, compiled by GCC i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5666) (dot 3), 64-bit
(1 row)
Run Code Online (Sandbox Code Playgroud)
所以当我跑步
bash-3.2$ psql
psql (9.1.1, server 9.0.5)
WARNING: psql version 9.1, server version 9.0.
Some psql features might not work.
Run Code Online (Sandbox Code Playgroud)
我不确定这些功能是什么。这些版本存在冲突。我是使用postgres的新手,所以我不知道如何仅升级postgres服务器。我试图在网上搜索某些内容,但没有太大帮助。我不想卸载并重新安装postgres。无论如何,我可以在没有冲突的情况下一起使用它们吗?还是只是将服务器升级到与数据库相同的版本?
编辑:
which psql
/opt/local/lib/postgresql91/bin//psql
which postgres
/opt/local/lib/postgresql91/bin//postgres
ps -eaf|grep postgres
0 60 1 0 0:00.07 ?? 0:00.09 /opt/local/bin/daemondo --label=postgresql90-server --start-cmd …Run Code Online (Sandbox Code Playgroud) 我有一个模型位置,有两列纬度和经度.我想找到一种方法,我可以获取位置列表,并使用Ajax和javascript将它们传递给谷歌地图.到目前为止,我的代码如下:
map.js:
function initialize()
{
var map;
var latlng = new google.maps.LatLng(37.09, -95.71);
var options = {
zoom: 5,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP,
disableDefaultUI: true,
disableDoubleClickZoom: true,
noClear: true,
navigationControl: true,
navigationControlOptions: {
position: google.maps.ControlPosition.TOP_RIGHT
}
};
map = new google.maps.Map(document.getElementById('map'), options);
var marker = new google.maps.Marker({
position: latlng,
map: map,
title: 'Click me',
});
}
Run Code Online (Sandbox Code Playgroud)
locations_controller.rb
def show
@location = Location.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.json { render json: @location }
end
end
Run Code Online (Sandbox Code Playgroud)
显示地图的页面:
<div id="map" onload="initialize();"> …Run Code Online (Sandbox Code Playgroud) javascript ajax ruby-on-rails google-maps-api-3 ruby-on-rails-3.2
嗨,我为我正在做的wiki应用程序创建了一个表.一开始我很简单,我有一个Questions表和一个Answers表.我现在想要添加用户.所以为此我创建了一个用户表,整个注册事情已经准备就绪.维基部分正在运行,用户部分正在运行,但我无法将它们合并在一起.
我首先创建了一个问题作为脚手架如下:
rails g scaffold Question title:string body:string
Run Code Online (Sandbox Code Playgroud)
然后回答如下:
rails g scaffold Answer question_id:integer content:string
Run Code Online (Sandbox Code Playgroud)
然后我尝试在创建Users表后添加users_id列:
rails generate migration add_users_id_to_questions user_id:integer
Run Code Online (Sandbox Code Playgroud)
然后,我尝试通过在迁移文件中添加以下行来索引user_id列:
class AddUserIdToQuestions < ActiveRecord::Migration
def change
add_column :questions, :user_id, :integer
end
add_index :questions, :user_id
end
Run Code Online (Sandbox Code Playgroud)
我做rake:db migrate但是在我运行迁移后它没有显示更改.有没有其他方法可以索引user_id,而不是通过向迁移文件添加列.我甚至运行了rake db:rollback,因此添加了user_id列,但是当我进行更改并运行rake db:migrate时,它给出了一个错误user_id不存在.如果您可以帮助我如何创建索引,将不胜感激.我运行Rails 3,SQLite作为我的数据库.谢谢.