Panduan Memulai: Gunakan Ruby untuk menghubungkan dan meminta data di Azure Database for PostgreSQL - Server Tunggal

BERLAKU UNTUK: Azure Database for PostgreSQL - Server Tunggal

Penting

Azure Database for PostgreSQL - Server Tunggal berada di jalur penghentian. Kami sangat menyarankan Agar Anda meningkatkan ke Azure Database for PostgreSQL - Server Fleksibel. Untuk informasi selengkapnya tentang migrasi ke Azure Database for PostgreSQL - Server Fleksibel, lihat Apa yang terjadi pada Server Tunggal Azure Database for PostgreSQL?.

Mulai cepat ini menunjukkan cara menyambungkan ke Azure Database for PostgreSQL menggunakan aplikasi Ruby. Ini menunjukkan cara menggunakan pernyataan SQL untuk mengkueri, menyisipkan, memperbarui, dan menghapus data dalam database. Langkah-langkah dalam artikel ini mengasumsikan bahwa Anda terbiasa mengembangkan menggunakan Ruby, dan baru untuk bekerja dengan Azure Database for PostgreSQL.

Prasyarat

Mulai cepat ini menggunakan sumber daya yang dibuat di salah satu panduan ini sebagai titik awal:

Anda juga harus sudah menginstal:

Mendapatkan informasi koneksi

Dapatkan informasi terkait koneksi yang diperlukan untuk menyambungkan ke Azure Database for PostgreSQL. Anda memerlukan nama server dan kredensial untuk masuk yang sepenuhnya memenuhi syarat.

  1. Masuk ke portal Azure.
  2. Dari menu sebelah kiri di portal Microsoft Azure, pilih Semua sumber daya, lalu cari server yang telah Anda buat (seperti mydemoserver).
  3. Pilih nama server.
  4. Dari panel server Gambaran Umum, buat catatan Nama server dan Nama untuk masuk admin server. Jika lupa kata sandi, Anda juga dapat mengatur ulang kata sandi dari panel ini. Nama server Azure Database for PostgreSQL

Catatan

Simbol @ dalam nama pengguna Azure Postgres telah dikodekan dengan url seperti %40 dalam semua string koneksi.

Menyambungkan dan membuat tabel

Gunakan kode berikut untuk menyambungkan dan membuat tabel menggunakan pernyataan SQL CREATE TABLE, diikuti dengan pernyataan SQL INSERT INTO untuk menambahkan baris ke dalam tabel.

Kode ini menggunakan PG::Connection objek dengan konstruktor new untuk menyambungkan ke Azure Database for PostgreSQL. Lalu kode tersebut akan memanggil metode exec() untuk menjalankan perintah DROP, CREATE TABLE, dan INSERT INTO. Kode akan memeriksa kesalahan menggunakan kelas PG::Error. Kemudian kode akan memanggil metode close() untuk menutup koneksi sebelum mengakhirinya. Lihat dokumentasi referensi Ruby Pg untuk informasi selengkapnya tentang kelas dan metode ini.

Ganti string host, database, user, dan password dengan nilai Anda sendiri.

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

Membaca data

Gunakan kode berikut untuk menyambungkan dan membaca data menggunakan pernyataan SQL SELECT.

Kode ini menggunakan PG::Connection objek dengan konstruktor new untuk menyambungkan ke Azure Database for PostgreSQL. Kemudian kode tersebut akan memanggil metode exec() untuk menjalankan perintah PILIH, sehingga menjaga hasil dalam kumpulan. Kumpulan set hasil akan diteruskan menggunakan resultSet.each do perulangan, sehingga mempertahankan nilai baris saat ini dalam variabel row. Kode akan memeriksa kesalahan menggunakan kelas PG::Error. Kemudian kode akan memanggil metode close() untuk menutup koneksi sebelum mengakhirinya. Lihat dokumentasi referensi Ruby Pg untuk informasi selengkapnya tentang kelas dan metode ini.

Ganti string host, database, user, dan password dengan nilai Anda sendiri.

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

Memperbarui data

Gunakan kode berikut untuk menyambungkan dan memperbarui data menggunakan pernyataan SQL UPDATE.

Kode ini menggunakan PG::Connection objek dengan konstruktor new untuk menyambungkan ke Azure Database for PostgreSQL. Kemudian kode ini memanggil metode exec() untuk menjalankan perintah PERBARUI. Kode akan memeriksa kesalahan menggunakan kelas PG::Error. Kemudian kode akan memanggil metode close() untuk menutup koneksi sebelum mengakhirinya. Lihat dokumentasi referensi Ruby Pg untuk informasi selengkapnya tentang kelas dan metode ini.

Ganti string host, database, user, dan password dengan nilai Anda sendiri.

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

Menghapus data

Gunakan kode berikut dengan tujuan menyambungkan dan membaca data menggunakan pernyataan SQL HAPUS.

Kode ini menggunakan PG::Connection objek dengan konstruktor new untuk menyambungkan ke Azure Database for PostgreSQL. Kemudian kode ini memanggil metode exec() untuk menjalankan perintah PERBARUI. Kode akan memeriksa kesalahan menggunakan kelas PG::Error. Kemudian kode akan memanggil metode close() untuk menutup koneksi sebelum mengakhirinya.

Ganti string host, database, user, dan password dengan nilai Anda sendiri.

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

Membersihkan sumber daya

Untuk membersihkan semua sumber daya yang digunakan selama mulai cepat ini, hapus grup sumber daya menggunakan perintah berikut:

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

Langkah berikutnya