Guia de início rápido: usar Ruby para conectar e consultar dados no Banco de Dados do Azure para PostgreSQL - Servidor Único
APLICA-SE A: Banco de Dados do Azure para PostgreSQL - Servidor Único
Importante
O Banco de Dados do Azure para PostgreSQL - Servidor Único está no caminho da desativação. É altamente recomendável que você atualize para o Banco de Dados do Azure para PostgreSQL - Servidor Flexível. Para obter mais informações sobre como migrar para o Banco de Dados do Azure para PostgreSQL - Servidor Flexível, consulte O que está acontecendo com o Banco de Dados do Azure para Servidor Único PostgreSQL?.
Este início rápido explica como se pode ligar a uma Base de Dados do Azure para PostgreSQL através de uma aplicação Ruby. Explica como utilizar as instruções SQL para consultar, inserir, atualizar e eliminar dados da base de dados. Os passos neste artigo pressupõem que está familiarizado com a programação com Ruby e que nunca trabalhou com a Base de Dados do Azure para PostgreSQL.
Pré-requisitos
Este guia de início rápido utiliza os recursos criados em qualquer um desTes guias como ponto de partida:
Você também precisa ter instalado:
Obter informações da ligação
Obtenha as informações de ligação necessárias para se ligar à Base de Dados do Azure para PostgreSQL. Necessita do nome do servidor e das credenciais de início de sessão totalmente qualificados.
- Inicie sessão no portal do Azure.
- No menu à esquerda no portal do Azure, selecione Todos os recursos e procure o servidor que você criou (como mydemoserver).
- Selecione o nome do servidor.
- No painel Descrição geral do servidor, tome nota do Nome do servidor e do Nome de início de sessão de administrador do servidor. Caso se esqueça da sua palavra-passe, também pode repor a palavra-passe neste painel.
Nota
O @
símbolo no nome de usuário do Azure Postgres foi codificado como %40
em todas as cadeias de conexão.
Ligar-se e criar uma tabela
Utilize o código seguinte para ligar e criar uma tabela com a instrução SQL CREATE TABLE, seguida das instruções SQL INSERT INTO para adicionar linhas à tabela.
O código usa um PG::Connection
objeto com o construtor new
para se conectar ao Banco de Dados do Azure para PostgreSQL. Em seguida, ele chama o método exec()
para executar os comandos DROP, CREATE TABLE e INSERT INTO. O código verifica se há erros usando a PG::Error
classe. Em seguida, ele chama o método close()
para fechar a conexão antes de encerrar. Consulte a documentação de referência do Ruby Pg para obter mais informações sobre essas classes e métodos.
Substitua as cadeias host
, database
, user
e password
pelos seus próprios valores.
require 'pg'
begin
# Initialize connection variables.
host = String('mydemoserver.postgres.database.azure.com')
database = String('postgres')
user = String('mylogin%40mydemoserver')
password = String('<server_admin_password>')
# Initialize connection object.
connection = PG::Connection.new(:host => host, :user => user, :dbname => database, :port => '5432', :password => password)
puts 'Successfully created connection to database'
# Drop previous table of same name if one exists
connection.exec('DROP TABLE IF EXISTS inventory;')
puts 'Finished dropping table (if existed).'
# Drop previous table of same name if one exists.
connection.exec('CREATE TABLE inventory (id serial PRIMARY KEY, name VARCHAR(50), quantity INTEGER);')
puts 'Finished creating table.'
# Insert some data into table.
connection.exec("INSERT INTO inventory VALUES(1, 'banana', 150)")
connection.exec("INSERT INTO inventory VALUES(2, 'orange', 154)")
connection.exec("INSERT INTO inventory VALUES(3, 'apple', 100)")
puts 'Inserted 3 rows of data.'
rescue PG::Error => e
puts e.message
ensure
connection.close if connection
end
Ler dados
Utilize o código seguinte para se ligar e ler dados com uma instrução SQL SELECT.
O código usa um PG::Connection
objeto com o construtor new
para se conectar ao Banco de Dados do Azure para PostgreSQL. Em seguida, ele chama o método exec()
para executar o comando SELECT, mantendo os resultados em um conjunto de resultados. A coleção do conjunto de resultados é iterada através do loop resultSet.each do
, mantendo os valores de linha atuais na variável row
. O código verifica se há erros usando a PG::Error
classe. Em seguida, ele chama o método close()
para fechar a conexão antes de encerrar. Consulte a documentação de referência do Ruby Pg para obter mais informações sobre essas classes e métodos.
Substitua as cadeias host
, database
, user
e password
pelos seus próprios valores.
require 'pg'
begin
# Initialize connection variables.
host = String('mydemoserver.postgres.database.azure.com')
database = String('postgres')
user = String('mylogin%40mydemoserver')
password = String('<server_admin_password>')
# Initialize connection object.
connection = PG::Connection.new(:host => host, :user => user, :dbname => database, :port => '5432', :password => password)
puts 'Successfully created connection to database.'
resultSet = connection.exec('SELECT * from inventory;')
resultSet.each do |row|
puts 'Data row = (%s, %s, %s)' % [row['id'], row['name'], row['quantity']]
end
rescue PG::Error => e
puts e.message
ensure
connection.close if connection
end
Atualizar dados
Utilize o código seguinte para se ligar e atualizar os dados com uma instrução SQL UPDATE.
O código usa um PG::Connection
objeto com o construtor new
para se conectar ao Banco de Dados do Azure para PostgreSQL. Em seguida, ele chama o método exec()
para executar o comando UPDATE. O código verifica se há erros usando a PG::Error
classe. Em seguida, ele chama o método close()
para fechar a conexão antes de encerrar. Consulte a documentação de referência do Ruby Pg para obter mais informações sobre essas classes e métodos.
Substitua as cadeias host
, database
, user
e password
pelos seus próprios valores.
require 'pg'
begin
# Initialize connection variables.
host = String('mydemoserver.postgres.database.azure.com')
database = String('postgres')
user = String('mylogin%40mydemoserver')
password = String('<server_admin_password>')
# Initialize connection object.
connection = PG::Connection.new(:host => host, :user => user, :dbname => database, :port => '5432', :password => password)
puts 'Successfully created connection to database.'
# Modify some data in table.
connection.exec('UPDATE inventory SET quantity = %d WHERE name = %s;' % [200, '\'banana\''])
puts 'Updated 1 row of data.'
rescue PG::Error => e
puts e.message
ensure
connection.close if connection
end
Eliminar dados
Utilize o código seguinte para se ligar e ler os dados com uma instrução SQL DELETE.
O código usa um PG::Connection
objeto com o construtor new
para se conectar ao Banco de Dados do Azure para PostgreSQL. Em seguida, ele chama o método exec()
para executar o comando UPDATE. O código verifica se há erros usando a PG::Error
classe. Em seguida, ele chama o método close()
para fechar a conexão antes de encerrar.
Substitua as cadeias host
, database
, user
e password
pelos seus próprios valores.
require 'pg'
begin
# Initialize connection variables.
host = String('mydemoserver.postgres.database.azure.com')
database = String('postgres')
user = String('mylogin%40mydemoserver')
password = String('<server_admin_password>')
# Initialize connection object.
connection = PG::Connection.new(:host => host, :user => user, :dbname => database, :port => '5432', :password => password)
puts 'Successfully created connection to database.'
# Modify some data in table.
connection.exec('DELETE FROM inventory WHERE name = %s;' % ['\'orange\''])
puts 'Deleted 1 row of data.'
rescue PG::Error => e
puts e.message
ensure
connection.close if connection
end
Clean up resources (Limpar recursos)
Para limpar todos os recursos usados durante este início rápido, exclua o grupo de recursos usando o seguinte comando:
az group delete \
--name $AZ_RESOURCE_GROUP \
--yes