Hızlı Başlangıç: PostgreSQL için Azure Veritabanı - Tek Sunucu'da verileri bağlamak ve sorgulamak için Ruby kullanma

ŞUNLAR IÇIN GEÇERLIDIR: PostgreSQL için Azure Veritabanı - Tek Sunucu

Önemli

PostgreSQL için Azure Veritabanı - Tek Sunucu kullanımdan kaldırma yolundadır. PostgreSQL için Azure Veritabanı - Esnek Sunucu'ya yükseltmenizi kesinlikle öneririz. PostgreSQL için Azure Veritabanı - Esnek Sunucu'ya geçiş hakkında daha fazla bilgi için bkz. PostgreSQL için Azure Veritabanı Tek Sunucuya ne oluyor?.

Bu hızlı başlangıçta, Ruby uygulaması kullanılarak PostgreSQL için Azure Veritabanı’na nasıl bağlanılacağı gösterilmiştir. Hızlı başlangıçta, veritabanında verileri sorgulamak, eklemek, güncelleştirmek ve silmek için SQL deyimlerinin nasıl kullanılacağı da gösterilmiştir. Bu makaledeki adımlarda, Ruby kullanarak geliştirmeyle ilgili bilgi sahibi olduğunuz ve PostgreSQL için Azure Veritabanı ile çalışmaya yeni başladığınız varsayılır.

Önkoşullar

Bu hızlı başlangıçta, başlangıç noktası olarak şu kılavuzlardan birinde oluşturulan kaynaklar kullanılmaktadır:

Ayrıca şunları da yüklemiş olmanız gerekir:

Bağlantı bilgilerini alma

PostgreSQL için Azure Veritabanı'na bağlanmak üzere gereken bağlantı bilgilerini alın. Tam sunucu adına ve oturum açma kimlik bilgilerine ihtiyacınız vardır.

  1. Azure Portal’da oturum açın.
  2. Azure portalında sol taraftaki menüden Tüm kaynaklar'ı seçin ve oluşturduğunuz sunucuyu (mydemoserver gibi) arayın.
  3. Sunucu adını seçin.
  4. Sunucunun Genel Bakış panelinden Sunucu adı ile Sunucu yöneticisi oturum açma adı’nı not alın. Parolanızı unutursanız, bu panelden parolayı da sıfırlayabilirsiniz. PostgreSQL için Azure Veritabanı sunucu adı

Not

@ Azure Postgres kullanıcı adındaki simge, tüm bağlantı dizesi url'lerde olduğu gibi %40 kodlanmıştır.

Bağlanma ve tablo oluşturma

CREATE TABLE SQL deyimini kullanarak bir tabloyu bağlamak ve oluşturmak ve ardından INSERT INTO SQL deyimlerini kullanarak tabloya satırlar eklemek için aşağıdaki kodu kullanın.

Kod, PostgreSQL için Azure Veritabanı bağlanmak için oluşturuculu new bir PG::Connection nesne kullanır. Ardından DROP, CREATE TABLE ve INSERT INTO komutlarını çalıştırmak için yöntemini exec() çağırır. Kod, sınıfını PG::Error kullanarak hataları denetler. Ardından sonlandırmadan önce bağlantıyı kapatmak için yöntemini close() çağırır. Bu sınıflar ve yöntemler hakkında daha fazla bilgi için Ruby Pg başvuru belgelerine bakın.

host, database, user ve password dizelerini kendi değerlerinizle değiştirin.

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

Verileri okuma

SELECT SQL deyimini kullanarak bağlanmak ve verileri okumak için aşağıdaki kodu kullanın.

Kod, PostgreSQL için Azure Veritabanı bağlanmak için oluşturuculu new bir PG::Connection nesne kullanır. Ardından select komutunu çalıştırmak için yöntemini exec() çağırır ve sonuçları bir sonuç kümesinde tutar. Sonuç kümesi koleksiyonu, resultSet.each do döngüsü kullanılarak ve geçerli satır değerleri row değişkeninde tutularak yinelenir. Kod, sınıfını PG::Error kullanarak hataları denetler. Ardından sonlandırmadan önce bağlantıyı kapatmak için yöntemini close() çağırır. Bu sınıflar ve yöntemler hakkında daha fazla bilgi için Ruby Pg başvuru belgelerine bakın.

host, database, user ve password dizelerini kendi değerlerinizle değiştirin.

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

Verileri güncelleştirme

UPDATE SQL deyimini kullanarak bağlanmak ve verileri güncelleştirmek için aşağıdaki kodu kullanın.

Kod, PostgreSQL için Azure Veritabanı bağlanmak için oluşturuculu new bir PG::Connection nesne kullanır. Ardından UPDATE komutunu çalıştırmak için yöntemini exec() çağırır. Kod, sınıfını PG::Error kullanarak hataları denetler. Ardından sonlandırmadan önce bağlantıyı kapatmak için yöntemini close() çağırır. Bu sınıflar ve yöntemler hakkında daha fazla bilgi için Ruby Pg başvuru belgelerine bakın.

host, database, user ve password dizelerini kendi değerlerinizle değiştirin.

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

Veri silme

DELETE SQL deyimini kullanarak bağlanmak ve verileri okumak için aşağıdaki kodu kullanın.

Kod, PostgreSQL için Azure Veritabanı bağlanmak için oluşturuculu new bir PG::Connection nesne kullanır. Ardından UPDATE komutunu çalıştırmak için yöntemini exec() çağırır. Kod, sınıfını PG::Error kullanarak hataları denetler. Ardından sonlandırmadan önce bağlantıyı kapatmak için yöntemini close() çağırır.

host, database, user ve password dizelerini kendi değerlerinizle değiştirin.

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

Kaynakları temizleme

Bu hızlı başlangıç sırasında kullanılan tüm kaynakları temizlemek için aşağıdaki komutu kullanarak kaynak grubunu silin:

az group delete \
    --name $AZ_RESOURCE_GROUP \
    --yes

Sonraki adımlar