Edgedb Scalar Veri Tipleri

2023-04-11

Edgedb, standart veri tiplerine ek olarak bazı özel veri tipleri sağlar. Bu özel veri tipleri, uygulama geliştiricilerine daha fazla esneklik ve veri bütünlüğü sağlar.

İşte edgedb’de kullanılabilen bazı scalar veri tipleri:

str

str, string veri tiplerini ifade eder. edgedb’de, bir string ifadesini tırnak işaretleri içinde yazarak oluşturabilirsiniz:

SELECT 'Hello, world!'

int

int, tamsayı veri tiplerini ifade eder. edgedb’de, bir tamsayıyı doğrudan yazarak veya matematiksel işlemler kullanarak oluşturabilirsiniz:

SELECT 42 + 13

float

float, ondalıklı sayıları ifade eder. edgedb’de, bir ondalıklı sayıyı doğrudan yazarak veya matematiksel işlemler kullanarak oluşturabilirsiniz:

SELECT 3.14 * 2

decimal

decimal, hassas ondalık sayıları ifade eder. Bu veri tipi, finansal hesaplamalar ve para birimi gibi hassas matematiksel işlemler için kullanışlıdır. edgedb’de, bir decimal değeri şu şekilde oluşturulur:

SELECT <decimal>'12.34'

bool

bool, mantıksal değerleri (True veya False) ifade eder. edgedb’de, bir mantıksal değeri doğrudan yazarak veya karşılaştırma işlemleri kullanarak oluşturabilirsiniz:

SELECT True AND False

datetime

datetime, bir tarih ve zaman değerini ifade eder. edgedb’de, bir datetime değeri şu şekilde oluşturulur:

SELECT <datetime>'2023-04-11

date

date, bir tarih değerini ifade eder. edgedb’de, bir date değeri şu şekilde oluşturulur:

SELECT <date>'2023-04-11'

time

time, bir zaman değerini ifade eder. edgedb’de, bir time değeri şu şekilde oluşturulur:

SELECT <time>'13:30:00'

duration

duration, bir süre değerini ifade eder. edgedb’de, bir duration değeri şu şekilde oluşturulur:

SELECT <duration>'2 days 5 hours'

uuid

uuid, benzersiz tanımlayıcıları ifade eder. edgedb’de, bir uuid değeri şu şekilde oluşturulur:

SELECT <uuid>'1a6c97e6-9ac6-4a6b-a853-7f70d3748d6d'

bytes

bytes, byte dizilerini ifade eder. edgedb’de, bir byte dizisi şu şekilde oluşturulur:

SELECT b'\x00\x01\x02'

any

any, herhangi bir tipte bir veriyi ifade eder. edgedb’de, herhangi bir veri tipiyle bir any değeri oluşturabilirsiniz:

SELECT <any>'Hello, world!'


Bu gibi daha fazla gönderi...

Edgedb Computed Links

2023-04-12 | #edgedb #edgedb-links

Computed Links, iki nesne arasındaki ilişkileri tanımlamak için kullanılan bir yapıdır. Bu bağlantılar, ilişkilendirilmiş nesnelerin birbirine olan ilişkisini hesaplamak için tanımlanmış bir sorgu veya fonksiyon kullanarak oluşturulur. Bu yapı, veritabanında tutulan verilerin tutarlılığını sağlamak için oldukça yararlıdır. Computed Links, veriler arasında sıkı bir şekilde bağlantı kurmanın yanı sıra, veritabanında saklanan verilerin değiştirilmesi veya güncellenmesi durumunda bağlantıların otomatik olarak güncellenmesini sağlar. Ayrıca, sorgulama ve raporlama işlemlerini kolaylaştırmak için de kullanılabilir. Örneğin, bir Computed Link aracılığıyla iki nesne arasındaki ilişkiyi hesaplayarak, sorgulama işlemini daha verimli hale getirebilirsiniz.

Devamı 


Edgedb İlişkiler

2023-04-12 | #edgedb #edgedb-links #edgedb-multi-link

Edgedb’de iki tablo arasında ilişki kurmak için link anahtar kelimesi kullanılır. Linkler, bir objenin başka bir objeyle ilişkilendirilmesine izin verir. Örneğin, bir User tablosu ve bir Article tablosu varsa, Article tablosundaki her bir Article, bir Userya atfedilebilir. Bu durumda, User ve Article tabloları arasında bir ilişki kurabiliriz. İlk olarak, User tablosunda bir id özelliği tanımlarız. Bu özellik, kullanıcının benzersiz bir kimliğini temsil eder. type User { required property id -> uuid; property name -> str; } Ardından, Article tablosunda bir author özelliği tanımlarız.

Devamı 


Edgedb Exclusive Constraint

2023-04-12 | #edgedb #edgedb-constraints

Edgedb’de exclusive constraint (özel kısıtlama) terimi, belirli bir özelliğin benzersiz olmasını veya belirli bir aralıkta olmasını sağlayan bir kısıtlama türünü ifade eder. Örneğin, bir User objesinde email özelliğinin benzersiz olmasını sağlayan bir özel kısıtlama oluşturabilirsiniz. Böylece, her bir User’ın sadece bir kez kaydedilmesini sağlayabilirsiniz. Aşağıdaki örnekte, email özelliğinde benzersizlik sağlayan bir özel kısıtlama tanımlıyoruz: type User { required property id -> uuid; required property name -> str; exclusive constraint unique_email on (.

Devamı 