orm-database 0.3.8__tar.gz → 0.3.10__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,109 @@
1
+ Metadata-Version: 2.2
2
+ Name: orm_database
3
+ Version: 0.3.10
4
+ Summary: This module is written to launch your programs with any database you want in the shortest time
5
+ Home-page: https://github.com/sisrsis/orm-database
6
+ Author: SISRSIS
7
+ Author-email: virussisrsis@gmail.com
8
+ License: MIT
9
+ Description-Content-Type: text/markdown
10
+ License-File: LICENSE
11
+ Requires-Dist: asyncpg
12
+ Requires-Dist: motor
13
+ Requires-Dist: mariadb
14
+ Dynamic: author
15
+ Dynamic: author-email
16
+ Dynamic: description
17
+ Dynamic: description-content-type
18
+ Dynamic: home-page
19
+ Dynamic: license
20
+ Dynamic: requires-dist
21
+ Dynamic: summary
22
+
23
+ # Create table
24
+
25
+ ```python
26
+ from orm_database import PostgreSQL
27
+ from pydantic import BaseModel
28
+ import asyncio
29
+
30
+
31
+ class User(BaseModel):
32
+ username: str
33
+ password: str
34
+ email: str
35
+
36
+
37
+ async def main():
38
+ db = PostgreSQL(host="127.0.0.1", user="postgres", password="", database="your_database_name")
39
+ await db.start()
40
+
41
+ await db.table_create("users", {"username": "varchar", "password": "varchar", "email": "varchar"})
42
+
43
+ await db.table_create_BaseModel(table="users", class_BaseModel=User)
44
+
45
+
46
+ if __name__ == "__main__":
47
+ asyncio.run(main())
48
+ ```
49
+
50
+ ## create table mariadb baseModel
51
+
52
+
53
+ ```python
54
+ from orm_database import MariaDB
55
+ import asyncio
56
+ from pydantic import BaseModel , Field
57
+
58
+
59
+ db = MariaDB(host="127.0.0.1",database="login",password="",port=3306,user="root")
60
+
61
+ class users(BaseModel):
62
+ user_rt : str = Field(varchar=20)
63
+ password_rt : str = Field(varchar=20)
64
+ email_rt : str = Field(varchar=20)
65
+
66
+
67
+ async def main():
68
+ await db.start()
69
+ await db.teble_create_BaseModel("tes",users)
70
+
71
+
72
+ asyncio.run(main())
73
+
74
+ ```
75
+
76
+ ## create table mariadb
77
+
78
+
79
+
80
+ ```python
81
+ from orm_database import MariaDB
82
+ import asyncio
83
+
84
+
85
+ db = MariaDB(host="127.0.0.1",database="",password="",port=3306,user="root")
86
+
87
+
88
+
89
+
90
+ async def main():
91
+ await db.start()
92
+ await db.teble_create("test",{"username":"varchar(250)","email":"varchar(250)","old":"int"})
93
+
94
+
95
+ asyncio.run(main())
96
+ ```
97
+
98
+ `test` name table
99
+
100
+ | name | field |
101
+ | -------- | ----------- |
102
+ | username | varchar(250)|
103
+ | email | varchar(250)|
104
+ | old | int |
105
+
106
+
107
+
108
+
109
+
@@ -0,0 +1,87 @@
1
+ # Create table
2
+
3
+ ```python
4
+ from orm_database import PostgreSQL
5
+ from pydantic import BaseModel
6
+ import asyncio
7
+
8
+
9
+ class User(BaseModel):
10
+ username: str
11
+ password: str
12
+ email: str
13
+
14
+
15
+ async def main():
16
+ db = PostgreSQL(host="127.0.0.1", user="postgres", password="", database="your_database_name")
17
+ await db.start()
18
+
19
+ await db.table_create("users", {"username": "varchar", "password": "varchar", "email": "varchar"})
20
+
21
+ await db.table_create_BaseModel(table="users", class_BaseModel=User)
22
+
23
+
24
+ if __name__ == "__main__":
25
+ asyncio.run(main())
26
+ ```
27
+
28
+ ## create table mariadb baseModel
29
+
30
+
31
+ ```python
32
+ from orm_database import MariaDB
33
+ import asyncio
34
+ from pydantic import BaseModel , Field
35
+
36
+
37
+ db = MariaDB(host="127.0.0.1",database="login",password="",port=3306,user="root")
38
+
39
+ class users(BaseModel):
40
+ user_rt : str = Field(varchar=20)
41
+ password_rt : str = Field(varchar=20)
42
+ email_rt : str = Field(varchar=20)
43
+
44
+
45
+ async def main():
46
+ await db.start()
47
+ await db.teble_create_BaseModel("tes",users)
48
+
49
+
50
+ asyncio.run(main())
51
+
52
+ ```
53
+
54
+ ## create table mariadb
55
+
56
+
57
+
58
+ ```python
59
+ from orm_database import MariaDB
60
+ import asyncio
61
+
62
+
63
+ db = MariaDB(host="127.0.0.1",database="",password="",port=3306,user="root")
64
+
65
+
66
+
67
+
68
+ async def main():
69
+ await db.start()
70
+ await db.teble_create("test",{"username":"varchar(250)","email":"varchar(250)","old":"int"})
71
+
72
+
73
+ asyncio.run(main())
74
+ ```
75
+
76
+ `test` name table
77
+
78
+ | name | field |
79
+ | -------- | ----------- |
80
+ | username | varchar(250)|
81
+ | email | varchar(250)|
82
+ | old | int |
83
+
84
+
85
+
86
+
87
+
@@ -2,7 +2,7 @@ import motor.motor_asyncio
2
2
  import asyncpg
3
3
  import mariadb
4
4
  import sys
5
-
5
+ from orm_database.orm_query import *
6
6
  class MariaDB:
7
7
  def __init__(self, host:str,port:int,user:str,password:str,database:str):
8
8
  self.host=host
@@ -12,19 +12,37 @@ class MariaDB:
12
12
  self.database=database
13
13
 
14
14
 
15
- async def start(self):
15
+ async def start(self):
16
16
  try:
17
- self.connections = mariadb.connect(
18
- user="db_user",
19
- password="db_user_passwd",
20
- host="localhost",
21
- database="employees")
17
+ self.db = mariadb.connect(
18
+ user=self.user,
19
+ password=self.password,
20
+ host=self.host,
21
+ database=self.database)
22
22
 
23
23
  except:
24
24
  print("Error connecting maraidb")
25
25
  sys.exit(1)
26
26
 
27
27
 
28
+ async def teble_create_BaseModel(self,table:str , class_BaseModel):
29
+ query = query_baseModel_create_table(table,class_BaseModel)
30
+ cur = self.db.cursor()
31
+ cur.execute(query)
32
+ cur.close()
33
+
34
+
35
+ async def teble_create(self, table: str, field: dict):
36
+ query = query_create_table(table,field)
37
+ cur = self.db.cursor()
38
+ cur.execute(query)
39
+ cur.close()
40
+
41
+ async def insert_value(self, table: str, value: dict):
42
+ query = query_insert_value(table,value)
43
+ await self.db.execute(query)
44
+ await self.db.close()
45
+
28
46
 
29
47
 
30
48
  class PostgreSQL:
@@ -39,65 +57,19 @@ class PostgreSQL:
39
57
 
40
58
 
41
59
  async def teble_create_BaseModel(self,table:str , class_BaseModel):
42
- query = f"CREATE TABLE {table} ("
43
- result=class_BaseModel.model_json_schema()
44
- for a in result['required']:
45
- data = result['properties'][a]
46
- try :
47
- maxLength = data['maxLength']
48
- match data['type']:
49
- case 'integer':
50
- types = 'int'
51
- case 'boolean':
52
- types = 'bool'
53
- case 'number':
54
- types = 'float'
55
- case 'string':
56
- types = 'varchar'
57
- uint = str(a)+" "+types+'('+str(maxLength)+')'
58
- query = query + " " + uint + " ,"
59
- except :
60
- match data['type']:
61
- case 'integer':
62
- types = 'int'
63
- case 'boolean':
64
- types = 'bool'
65
- case 'number':
66
- types = 'float'
67
- case 'string':
68
- types = 'varchar'
69
- uint = str(a)+" "+types
70
- query = query + " " + uint + " ,"
71
- query = query[:-1]
72
- query = query + ")"
60
+ query=query_baseModel_create_table(table,class_BaseModel)
73
61
  await self.db.execute(query)
74
62
  await self.db.close()
75
63
 
76
64
 
77
65
  async def teble_create(self, table: str, field: dict):
78
- query = f"CREATE TABLE {table} ("
79
- filed_key = list(field.keys())
80
- for a in filed_key:
81
- query = query + a + " " + field[a] + " ,"
82
- query = query[:-1]
83
- query = query + ")"
66
+ query=query_create_table(table,field)
84
67
  await self.db.execute(query)
85
68
  await self.db.close()
86
69
 
87
70
 
88
71
  async def insert_value(self, table: str, value: dict):
89
- query = f"INSERT INTO {table} ( "
90
- filed_key = list(value.keys())
91
- for a in filed_key:
92
- query = query + " " + a + " " + ","
93
- query = query[:-1]
94
- query = query + ")"
95
- query = query + " VALUES ("
96
- filed_value = list(value.values())
97
- for a in filed_value:
98
- query = query + " '" + str(a) + "' " + ","
99
- query = query[:-1]
100
- query = query + ")"
72
+ query = query_insert_value(table,value)
101
73
  await self.db.execute(query)
102
74
  await self.db.close()
103
75
 
@@ -0,0 +1,65 @@
1
+
2
+
3
+ def query_baseModel_create_table(table,class_BaseModel):
4
+ query = f"CREATE TABLE {table} ("
5
+ result=class_BaseModel.model_json_schema()
6
+ for a in result['required']:
7
+ data = result['properties'][a]
8
+ try :
9
+ maxLength = data['maxLength']
10
+ match data['type']:
11
+ case 'integer':
12
+ types = 'int'
13
+ case 'boolean':
14
+ types = 'bool'
15
+ case 'number':
16
+ types = 'float'
17
+ case 'string':
18
+ types = 'varchar'
19
+ if types == 'varchar':
20
+ uint = str(a)+" "+types+"("+data["varchar"]+")"+'('+str(maxLength)+')'
21
+ query = query + " " + uint + " ,"
22
+ else:
23
+ uint = str(a)+" "+types+'('+str(maxLength)+')'
24
+ query = query + " " + uint + " ,"
25
+ except :
26
+ match data['type']:
27
+ case 'integer':
28
+ types = 'int'
29
+ case 'boolean':
30
+ types = 'bool'
31
+ case 'number':
32
+ types = 'float'
33
+ case 'string':
34
+ types = 'varchar'
35
+ uint = str(a)+" "+types +"("+str(data["varchar"])+")"
36
+ query = query + " " + uint + " ,"
37
+ query = query[:-1]
38
+ query = query + ")"
39
+ return query
40
+
41
+ def query_create_table(table:str,field:dict):
42
+ query = f"CREATE TABLE {table} ("
43
+ filed_key = list(field.keys())
44
+ for a in filed_key:
45
+ query = query + a + " " + field[a] + " ,"
46
+ query = query[:-1]
47
+ query = query + ")"
48
+ return query
49
+
50
+
51
+
52
+ def query_insert_value(table:str,value:dict):
53
+ uery = f"INSERT INTO {table} ( "
54
+ filed_key = list(value.keys())
55
+ for a in filed_key:
56
+ query = query + " " + a + " " + ","
57
+ query = query[:-1]
58
+ query = query + ")"
59
+ query = query + " VALUES ("
60
+ filed_value = list(value.values())
61
+ for a in filed_value:
62
+ query = query + " '" + str(a) + "' " + ","
63
+ query = query[:-1]
64
+ query = query + ")"
65
+ return query
@@ -0,0 +1,109 @@
1
+ Metadata-Version: 2.2
2
+ Name: orm_database
3
+ Version: 0.3.10
4
+ Summary: This module is written to launch your programs with any database you want in the shortest time
5
+ Home-page: https://github.com/sisrsis/orm-database
6
+ Author: SISRSIS
7
+ Author-email: virussisrsis@gmail.com
8
+ License: MIT
9
+ Description-Content-Type: text/markdown
10
+ License-File: LICENSE
11
+ Requires-Dist: asyncpg
12
+ Requires-Dist: motor
13
+ Requires-Dist: mariadb
14
+ Dynamic: author
15
+ Dynamic: author-email
16
+ Dynamic: description
17
+ Dynamic: description-content-type
18
+ Dynamic: home-page
19
+ Dynamic: license
20
+ Dynamic: requires-dist
21
+ Dynamic: summary
22
+
23
+ # Create table
24
+
25
+ ```python
26
+ from orm_database import PostgreSQL
27
+ from pydantic import BaseModel
28
+ import asyncio
29
+
30
+
31
+ class User(BaseModel):
32
+ username: str
33
+ password: str
34
+ email: str
35
+
36
+
37
+ async def main():
38
+ db = PostgreSQL(host="127.0.0.1", user="postgres", password="", database="your_database_name")
39
+ await db.start()
40
+
41
+ await db.table_create("users", {"username": "varchar", "password": "varchar", "email": "varchar"})
42
+
43
+ await db.table_create_BaseModel(table="users", class_BaseModel=User)
44
+
45
+
46
+ if __name__ == "__main__":
47
+ asyncio.run(main())
48
+ ```
49
+
50
+ ## create table mariadb baseModel
51
+
52
+
53
+ ```python
54
+ from orm_database import MariaDB
55
+ import asyncio
56
+ from pydantic import BaseModel , Field
57
+
58
+
59
+ db = MariaDB(host="127.0.0.1",database="login",password="",port=3306,user="root")
60
+
61
+ class users(BaseModel):
62
+ user_rt : str = Field(varchar=20)
63
+ password_rt : str = Field(varchar=20)
64
+ email_rt : str = Field(varchar=20)
65
+
66
+
67
+ async def main():
68
+ await db.start()
69
+ await db.teble_create_BaseModel("tes",users)
70
+
71
+
72
+ asyncio.run(main())
73
+
74
+ ```
75
+
76
+ ## create table mariadb
77
+
78
+
79
+
80
+ ```python
81
+ from orm_database import MariaDB
82
+ import asyncio
83
+
84
+
85
+ db = MariaDB(host="127.0.0.1",database="",password="",port=3306,user="root")
86
+
87
+
88
+
89
+
90
+ async def main():
91
+ await db.start()
92
+ await db.teble_create("test",{"username":"varchar(250)","email":"varchar(250)","old":"int"})
93
+
94
+
95
+ asyncio.run(main())
96
+ ```
97
+
98
+ `test` name table
99
+
100
+ | name | field |
101
+ | -------- | ----------- |
102
+ | username | varchar(250)|
103
+ | email | varchar(250)|
104
+ | old | int |
105
+
106
+
107
+
108
+
109
+
@@ -3,6 +3,7 @@ README.md
3
3
  setup.py
4
4
  orm_database/__init__.py
5
5
  orm_database/orm_database.py
6
+ orm_database/orm_query.py
6
7
  orm_database.egg-info/PKG-INFO
7
8
  orm_database.egg-info/SOURCES.txt
8
9
  orm_database.egg-info/dependency_links.txt
@@ -6,7 +6,7 @@ long_description = (this_directory / "README.md").read_text()
6
6
 
7
7
  setup(
8
8
  name='orm_database',
9
- version='0.3.8',
9
+ version='0.3.10',
10
10
  description='This module is written to launch your programs with any database you want in the shortest time ',
11
11
  license="MIT",
12
12
  author='SISRSIS',
@@ -1,42 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: orm_database
3
- Version: 0.3.8
4
- Summary: This module is written to launch your programs with any database you want in the shortest time
5
- Home-page: https://github.com/sisrsis/orm-database
6
- Author: SISRSIS
7
- Author-email: virussisrsis@gmail.com
8
- License: MIT
9
- Description-Content-Type: text/markdown
10
- License-File: LICENSE
11
- Requires-Dist: asyncpg
12
- Requires-Dist: motor
13
- Requires-Dist: mariadb
14
-
15
- # Create table
16
-
17
- ```python
18
- from orm_database import PostgreSQL
19
- from pydantic import BaseModel
20
- import asyncio
21
-
22
-
23
- class User(BaseModel):
24
- username: str
25
- password: str
26
- email: str
27
-
28
-
29
- async def main():
30
- db = PostgreSQL(host="127.0.0.1", user="postgres", password="", database="your_database_name")
31
- await db.start()
32
-
33
- # ایجاد جدول
34
- await db.table_create("users", {"username": "varchar", "password": "varchar", "email": "varchar"})
35
-
36
- # ایجاد مدل پایه
37
- await db.table_create_BaseModel(table="users", class_BaseModel=User)
38
-
39
-
40
- if __name__ == "__main__":
41
- asyncio.run(main())
42
- ```
@@ -1,28 +0,0 @@
1
- # Create table
2
-
3
- ```python
4
- from orm_database import PostgreSQL
5
- from pydantic import BaseModel
6
- import asyncio
7
-
8
-
9
- class User(BaseModel):
10
- username: str
11
- password: str
12
- email: str
13
-
14
-
15
- async def main():
16
- db = PostgreSQL(host="127.0.0.1", user="postgres", password="", database="your_database_name")
17
- await db.start()
18
-
19
- # ایجاد جدول
20
- await db.table_create("users", {"username": "varchar", "password": "varchar", "email": "varchar"})
21
-
22
- # ایجاد مدل پایه
23
- await db.table_create_BaseModel(table="users", class_BaseModel=User)
24
-
25
-
26
- if __name__ == "__main__":
27
- asyncio.run(main())
28
- ```
@@ -1,42 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: orm_database
3
- Version: 0.3.8
4
- Summary: This module is written to launch your programs with any database you want in the shortest time
5
- Home-page: https://github.com/sisrsis/orm-database
6
- Author: SISRSIS
7
- Author-email: virussisrsis@gmail.com
8
- License: MIT
9
- Description-Content-Type: text/markdown
10
- License-File: LICENSE
11
- Requires-Dist: asyncpg
12
- Requires-Dist: motor
13
- Requires-Dist: mariadb
14
-
15
- # Create table
16
-
17
- ```python
18
- from orm_database import PostgreSQL
19
- from pydantic import BaseModel
20
- import asyncio
21
-
22
-
23
- class User(BaseModel):
24
- username: str
25
- password: str
26
- email: str
27
-
28
-
29
- async def main():
30
- db = PostgreSQL(host="127.0.0.1", user="postgres", password="", database="your_database_name")
31
- await db.start()
32
-
33
- # ایجاد جدول
34
- await db.table_create("users", {"username": "varchar", "password": "varchar", "email": "varchar"})
35
-
36
- # ایجاد مدل پایه
37
- await db.table_create_BaseModel(table="users", class_BaseModel=User)
38
-
39
-
40
- if __name__ == "__main__":
41
- asyncio.run(main())
42
- ```
File without changes
File without changes