Ulid nedir? postgresql için kullanacağımız Ulid kütüphanesi https://github.com/pksunkara/pgx_ulid Ubuntu server 22.04 versiyonu ile deniyorum GNU C Library (GLIBC_2.33) ve üzeri bir versiyonda olmanız gerekiyor kontrol etmek için ldd --version daha aşağı bir versiyon yüklü ise İşletim sisteminizi upgrade etmeniz gerekebilir. Upgrade için sudo apt update sudo apt upgrade sudo apt …
Devamını Oku »Postgresql yazıyla tutar
“PostgreSQL wiki sayfasından alınan ve özelleştirilmiş içeriktir” Kaynak: https://wiki.postgresql.org/wiki/Numeric_to_English CREATE OR REPLACE FUNCTION spell_numeric_value_tl(pValue numeric) RETURNS text AS $BODY$ DECLARE _lira bigint = trunc(pValue)::text; _kurus int = ((pValue - trunc(pValue)) * 100)::int; _spelledAmount text = '' ; _brokenOut int[] ; _pos integer = 0; _word text ; _tempVal int …
Devamını Oku »Informix unload file to postgresql import
TBL_TEST.unl dosyamızın sonunda ki pipe “|” yok etmek için python da küçük bir script ile temizleme yapıyoruz. fpath = 'deneme.unl' def read_big_file_pipe(): with open(fpath) as infile: with open("new_deneme.unl", "a", encoding='utf-8') as file_object: for line in infile: new_line = line[:-2]+'\n' file_object.write(new_line) postgresql sunucusunda ki tmp dizinine kopyalıyoruz. tablomuzu ilgili veritabanında …
Devamını Oku »Postgresql Türkçe case insensitive arama yapmak
Postgresql create database statement için şuan ICU (International Components for Unicode – Unicode için Uluslararası Bileşenler) desteklemiyor. bir collation ya deterministiktir yada değildir varsayılan olarak deterministik bir şekilde gelir Türkçe case insensitive (büyük küçük harf duyarsız) bir collation oluşturalım CREATE COLLATION ci_turkish (provider = icu, locale = 'tr-TR-u-ks-level2', deterministic = …
Devamını Oku »Postgresql gümrük beyanname tescil no regex domain
create domain dmn_tescilno varchar(16) check ( value ~ '^[0-9]{8}((IM)|(EX)|(AN)|(TR)|(DG)|(T0)|(C0)|(B0)|(G0)|(M0)|(R0)|(RL))[0-9]{6}$'); select '22222222AN111111'::dmn_tescilno;
Devamını Oku »Postgresql Türkiye il ilce mahalle sokak veritabani
devşirmedir asıl kaynak: https://github.com/emreuenal/turkiye-il-ilce-sokak-mahalle-veri-tabani/tree/master/dumps/dumps_5Nisan2021 indirmek için: https://disk.yandex.com.tr/d/qfmuyISRKxuoGQ
Devamını Oku »Postgresql Master Detail Query to Json
Bazen yazdığımız bir sorguyu json olarak çıktı vermek isteriz create table testfatura( id serial primary key not null, fatura_no varchar(10) not null, aciklama varchar(100) not null ); create table testfatura_detay( id serial primary key not null, testfatura_id int not null references testfatura(id), stokkodu varchar(50), stokadi varchar(50) ); insert into testfatura …
Devamını Oku »postgresql caesarCipher
CREATE EXTENSION plpython3u; CREATE OR REPLACE FUNCTION caesarCipher(realtext text, step int) RETURNS TEXT AS $$ outText = [] cryptText = [] uppercase = ['A', 'B', 'C', 'Ç', 'D', 'E', 'F', 'G', 'Ğ', 'H', 'I', 'İ', 'J', 'K', 'L', 'M', 'N', 'O', 'Ö', 'P', 'Q', 'R', 'S', 'Ş', 'T', 'U', 'Ü', …
Devamını Oku »postgresql isvalid_tckn
CREATE OR REPLACE FUNCTION isvalid_tckn(tckn text) RETURNS bool AS $$ value = str(tckn) if not len(value) == 11: return False # Sadece rakamlardan olusur. if not value.isdigit(): return False # Ilk hanesi 0 olamaz. if int(value[0]) == 0: return False digits = [int(d) for d in str(value)] # 1. 2. …
Devamını Oku »Postgresql 13 random tckn generator
Öncelikle plpython3 ‘ü yüklüyoruz sudo apt-get install postgresql-contrib postgresql-plpython3-13 CREATE OR REPLACE FUNCTION random_tckn () RETURNS TEXT AS $$ from random import randint tcno = str(randint(100000000, 1000000000)) list_tc = list(map(int, tcno)) tc10 = (sum(list_tc[::2]) * 7 - sum(list_tc[1::2])) % 10 new_tc = tcno + str(tc10) + str((sum(list_tc[:9]) + tc10) % …
Devamını Oku »