Hızlı Başlangıç: PostgreSQL için Azure Veritabanı - Tek Sunucu'da verileri bağlamak ve sorgulamak için Node.js 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, bir Node.js uygulaması kullanarak bir PostgreSQL için Azure Veritabanı bağlanacaksınız. 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, Node.js 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
Etkin aboneliği olan bir Azure hesabı. Ücretsiz hesap oluşturun.
Hızlı Başlangıcın Tamamlanması: Azure portalında PostgreSQL için Azure Veritabanı sunucusu oluşturma veya Hızlı Başlangıç: Azure CLI kullanarak PostgreSQL için Azure Veritabanı oluşturma.
pg istemcisini yükleme
Node.js için bir PostgreSQL istemcisi olan pg’yi yükleyin.
Bunu yapmak için komut satırından JavaScript’e yönelik düğüm paketi yöneticisini (npm) çalıştırarak pg istemcisini yükleyin.
npm install pg
Yüklü paketleri listeleyerek yüklemeyi doğrulayın.
npm list
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.
Azure portalında, oluşturduğunuz sunucuyu (mydemoserver gibi) arayın ve seçin.
Sunucunun Genel Bakış panelinde Sunucu adını ve Yönetici kullanıcı adını not edin. Parolanızı unutursanız, bu panelden parolayı da sıfırlayabilirsiniz.
Node.js’de JavaScript kodunu çalıştırma
node
yazarak Node.js’yi Bash kabuğundan, Terminal’den veya Windows Komut İstemi’nden başlatabilir, ardından isteme kopyalayıp yapıştırarak örnek JavaScript kodunu etkili bir şekilde çalıştırabilirsiniz. Alternatif olarak, JavaScript kodunu bir metin dosyasına kaydedebilir ve node filename.js
öğesini, bunu çalıştıracak bir parametre olarak dosya adıyla başlatabilirsiniz.
Bağlanma, tablo oluşturma ve veri ekleme
Bağlanıp CREATE TABLE ve INSERT INTO SQL deyimlerini kullanarak verileri yüklemek için aşağıdaki kodu kullanın. pg.Client nesnesi, PostgreSQL sunucusuyla arabirim oluşturmak için kullanılır. pg.Client.connect() işlevi, sunucuyla bağlantı kurmak için kullanılır. pg.Client.query() işlevi, PostgreSQL veritabanına karşı SQL sorgusunu yürütmek için kullanılır.
host, dbname, user ve password parametrelerini, sunucuyu ve veritabanını oluştururken belirttiğiniz değerlerle değiştirin.
const pg = require('pg');
const config = {
host: '<your-db-server-name>.postgres.database.azure.com',
// Do not hard code your username and password.
// Consider using Node environment variables.
user: '<your-db-username>',
password: '<your-password>',
database: '<name-of-database>',
port: 5432,
ssl: true
};
const client = new pg.Client(config);
client.connect(err => {
if (err) throw err;
else {
queryDatabase();
}
});
function queryDatabase() {
const query = `
DROP TABLE IF EXISTS inventory;
CREATE TABLE inventory (id serial PRIMARY KEY, name VARCHAR(50), quantity INTEGER);
INSERT INTO inventory (name, quantity) VALUES ('banana', 150);
INSERT INTO inventory (name, quantity) VALUES ('orange', 154);
INSERT INTO inventory (name, quantity) VALUES ('apple', 100);
`;
client
.query(query)
.then(() => {
console.log('Table created successfully!');
client.end(console.log('Closed client connection'));
})
.catch(err => console.log(err))
.then(() => {
console.log('Finished execution, exiting now');
process.exit();
});
}
Verileri okuma
SELECT SQL deyimini kullanarak bağlanmak ve verileri okumak için aşağıdaki kodu kullanın. pg.Client nesnesi, PostgreSQL sunucusuyla arabirim oluşturmak için kullanılır. pg.Client.connect() işlevi, sunucuyla bağlantı kurmak için kullanılır. pg.Client.query() işlevi, PostgreSQL veritabanına karşı SQL sorgusunu yürütmek için kullanılır.
host, dbname, user ve password parametrelerini, sunucuyu ve veritabanını oluştururken belirttiğiniz değerlerle değiştirin.
const pg = require('pg');
const config = {
host: '<your-db-server-name>.postgres.database.azure.com',
// Do not hard code your username and password.
// Consider using Node environment variables.
user: '<your-db-username>',
password: '<your-password>',
database: '<name-of-database>',
port: 5432,
ssl: true
};
const client = new pg.Client(config);
client.connect(err => {
if (err) throw err;
else { queryDatabase(); }
});
function queryDatabase() {
console.log(`Running query to PostgreSQL server: ${config.host}`);
const query = 'SELECT * FROM inventory;';
client.query(query)
.then(res => {
const rows = res.rows;
rows.map(row => {
console.log(`Read: ${JSON.stringify(row)}`);
});
process.exit();
})
.catch(err => {
console.log(err);
});
}
Verileri güncelleştirme
UPDATE SQL deyimini kullanarak bağlanmak ve verileri okumak için aşağıdaki kodu kullanın. pg.Client nesnesi, PostgreSQL sunucusuyla arabirim oluşturmak için kullanılır. pg.Client.connect() işlevi, sunucuyla bağlantı kurmak için kullanılır. pg.Client.query() işlevi, PostgreSQL veritabanına karşı SQL sorgusunu yürütmek için kullanılır.
host, dbname, user ve password parametrelerini, sunucuyu ve veritabanını oluştururken belirttiğiniz değerlerle değiştirin.
const pg = require('pg');
const config = {
host: '<your-db-server-name>.postgres.database.azure.com',
// Do not hard code your username and password.
// Consider using Node environment variables.
user: '<your-db-username>',
password: '<your-password>',
database: '<name-of-database>',
port: 5432,
ssl: true
};
const client = new pg.Client(config);
client.connect(err => {
if (err) throw err;
else {
queryDatabase();
}
});
function queryDatabase() {
const query = `
UPDATE inventory
SET quantity= 1000 WHERE name='banana';
`;
client
.query(query)
.then(result => {
console.log('Update completed');
console.log(`Rows affected: ${result.rowCount}`);
})
.catch(err => {
console.log(err);
throw err;
});
}
Veri silme
DELETE SQL deyimini kullanarak bağlanmak ve verileri okumak için aşağıdaki kodu kullanın. pg.Client nesnesi, PostgreSQL sunucusuyla arabirim oluşturmak için kullanılır. pg.Client.connect() işlevi, sunucuyla bağlantı kurmak için kullanılır. pg.Client.query() işlevi, PostgreSQL veritabanına karşı SQL sorgusunu yürütmek için kullanılır.
host, dbname, user ve password parametrelerini, sunucuyu ve veritabanını oluştururken belirttiğiniz değerlerle değiştirin.
const pg = require('pg');
const config = {
host: '<your-db-server-name>.postgres.database.azure.com',
// Do not hard code your username and password.
// Consider using Node environment variables.
user: '<your-db-username>',
password: '<your-password>',
database: '<name-of-database>',
port: 5432,
ssl: true
};
const client = new pg.Client(config);
client.connect(err => {
if (err) {
throw err;
} else {
queryDatabase();
}
});
function queryDatabase() {
const query = `
DELETE FROM inventory
WHERE name = 'apple';
`;
client
.query(query)
.then(result => {
console.log('Delete completed');
console.log(`Rows affected: ${result.rowCount}`);
})
.catch(err => {
console.log(err);
throw err;
});
}
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
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin