-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy patharm_dene.py
More file actions
157 lines (121 loc) · 5.54 KB
/
arm_dene.py
File metadata and controls
157 lines (121 loc) · 5.54 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
# Dahil etme
#-----------
# Dogrudan bu şekilde dahil ederek kullanırsanız değişkenlere daha kolay ulaşım sağlarsınız
# If you use it by including it directly in this way, you will have easier access to the variables.
from arm.arm import *
from datetime import datetime
#Tablo Oluşturma
#--------------
# Aşağıda basitce tablo oluşturma ornekleri gösterilmiştir.
# Below are simply examples of creating tables.
class Yetki(Tablo):
Id=INT(primarykey=True,auto=True)
YetkiIsim=VARCHAR(100)
Derece=INT()
class Encoding(Tablo):
Id=INT(primarykey=True,auto=True)
PersonelId=INT()
Resim = VARCHAR(100)
CodingList=TEXT()
class Personel(Tablo):
Id=INTEGER(primarykey=True,auto=True)
YetkiId=INT()
Isim=VARCHAR(100) #isim soy isim
Telefon=VARCHAR(100)
Adres=VARCHAR(100)
IlkGun=DATETIME()
PersonelId=INT()
class GirisLog(Tablo):
Id=INT(primarykey=True,auto=True)
PersonelId=INT()
GirisSaati=VARCHAR(100)
CikisSaati=VARCHAR(100)
Tarih=VARCHAR(100)
class Log(Tablo):
Id=INT(primarykey=True,auto=True)
PersonelId=INT()
Islem=VARCHAR(100)
Tarih=DATETIME()
#Tabloları veri tabanına kayıt edip veri tabanını ayağa kaldırma
#Saving the tables to the database and restoring the database
#----------------------------------------------------------------
class DataBase(VeriTabani):
def __init__(self,*args,**kwargs):
self.Yetki=Yetki()
self.Encoding=Encoding()
self.Personel=Personel()
self.GirisLog=GirisLog()
self.Log=Log()
super().__init__(*args,**kwargs)
# !! olusturmus oldugunuz veri tabanından bir örnek oluşturunca init fonksyionu devreye girip veri tabanını olusturur
# !! When you create an instance from the database you have created, the init function kicks in and creates the database.
db = DataBase("yenitaban.db")
# veri Ekleme INSERT
# -----------------
#SQL: INSERT INTO Yetki( Derece, YetkiIsim) VALUES( ?, ?) [1, 'developer']
eklenecek_veri_yetki = Yetki(YetkiIsim="developer",Derece=1)
db.Yetki.ekle(eklenecek_veri_yetki)
# in english code
#db.Yetki.add(eklenecek_veri_yetki)
#SQL: INSERT INTO Personel( IlkGun, Isim, Telefon, YetkiId) VALUES( ?, ?, ?, ?) [datetime.datetime(2023, 6, 14, 17, 23, 32, 260133), 'kaan', '+90 50****', 1]
eklenecek_veri_personel = Personel(YetkiId=1,Isim="Umut Kaan Baser",Telefon="+90 50****",IlkGun=datetime.now())
db.Personel.ekle(eklenecek_veri_personel)
# in english code
#db.Personel.add(eklenecek_veri_personel)
#SQL: INSERT INTO Personel( IlkGun, Isim, Telefon, YetkiId) VALUES( ?, ?, ?, ?) [datetime.datetime(2023, 6, 14, 17, 24, 23, 447143), 'degistir', '+90 50****', 1]
eklenecek_veri_personel = Personel(YetkiId=1,Isim="degistir",Telefon="+90 50****",IlkGun=datetime.now())
db.Personel.ekle(eklenecek_veri_personel)
# in english code
#db.Personel.add(eklenecek_veri_personel)
#veri Degistirme Cekme UPDATE
#---------------------
degistirilecek_obje = db.Personel.sorgula({"Isim":"degistir"}).sec("*").ilkdon()
degistirilecek_obje.Isim.deger = "Memet"
#SQL : UPDATE Personel SET Adres=?, IlkGun=?, Isim=?, PersonelId=?, Telefon=?, YetkiId=? WHERE Id=? [None, '2023_6_15 18_56_45_883707', 'Memet', None, '+90 50****', 1, 2]
db.Personel.guncelle(degistirilecek_obje)
#in english code
#db.Personel.update(degistirilecek_obje)
# veri silme DELETE
# ----------------
silinecek_obje = db.Personel.sorgula({"Id":"2"}).sec("*").ilkdon()
#SQL : DELETE FROM Personel WHERE Id=3
db.Personel.sil(silinecek_obje)
# in english code
#db.Personel.delete(silinecek_obje)
# veri sorgulama çekme SELECT
# --------------------------
# id'den tek veriyi alma
tek_veri_cekme = db.Personel.sorgula({"Id":"1"}).sec("*").ilkdon()
print(f"gelen Id:{tek_veri_cekme.Id.deger} isim:{tek_veri_cekme.Isim.deger}")
#id'den tek veriyi istenilen sütünlarını almak
istenilen_veri = db.Personel.sorgula({"Id":"1"}).sec(["Id","Isim"]).ilkdon()
print(f"gelen Id:{tek_veri_cekme.Id.deger} isim:{tek_veri_cekme.Isim.deger}")
#sorguya gore gelen verilerin istenilen sütünlarını almak
coklu_veriler = db.Personel.sorgula({"YetkiId":"1"}).sec(["Isim"]).listele()
for i,veri in enumerate(coklu_veriler):
print(f"{i}. isim:{veri.Isim.deger}")
#sorguya gore gelen istenilen kadar verilerinin istenilen sütünlarını almak
coklu_veriler = db.Personel.sorgula({"YetkiId":"1"}).sec(["Isim"]).adet(3)
for i,veri in enumerate(coklu_veriler):
print(f"{i}. isim:{veri.Isim.deger}")
# get data in english code SELECT
# ------------------------------
print ("""
|-------------------------------|
| this is english code at now |
|-------------------------------|
""")
# get single data from id
tek_veri_cekme = db.Personel.select({"Id":"1"}).choice("*").first()
print(f"gelen Id:{tek_veri_cekme.Id.deger} isim:{tek_veri_cekme.Isim.deger}")
# get single data and desired columns from id
istenilen_veri = db.Personel.select({"Id":"1"}).choice(["Id","Isim"]).first()
print(f"gelen Id:{tek_veri_cekme.Id.deger} isim:{tek_veri_cekme.Isim.deger}")
# get the desired columns of the data according to the query
coklu_veriler = db.Personel.select({"YetkiId":"1"}).choice(["Isim"]).tolist()
for i,veri in enumerate(coklu_veriler):
print(f"{i}. isim:{veri.Isim.deger}")
# to get the desired columns of the desired data according to the query
coklu_veriler = db.Personel.select({"YetkiId":"1"}).choice(["Isim"]).take(3)
for i,veri in enumerate(coklu_veriler):
print(f"{i}. isim:{veri.Isim.deger}")