@@ -71,151 +71,148 @@ function makePaginationQuery<T>(q: SelectQueryBuilder<T>): SelectQueryBuilder<T>
71
71
}
72
72
73
73
AppDataSource . initialize ( ) . then ( async ( ) => {
74
- // NOT OK
75
- const BadInput = "1=1"
76
-
77
74
// Active record
78
- await UserActiveRecord . findByName ( BadInput , "Saw " )
79
-
75
+ await UserActiveRecord . findByName ( "FirstNameToFind" , "LastNameToFind " )
76
+
80
77
// data mapper
81
78
const selectQueryBuilder = makePaginationQuery < User > ( AppDataSource
82
79
. createQueryBuilder ( User , "User" ) . select ( ) ) ;
83
- selectQueryBuilder . where ( BadInput ) . getMany ( ) . then ( result => {
80
+ selectQueryBuilder . where ( 'id > 5' ) . getMany ( ) . then ( result => {
84
81
console . log ( result )
85
82
} ) ;
86
-
83
+
87
84
const selectQueryBuilder2 = makePaginationQuery < User > ( AppDataSource
88
85
. createQueryBuilder ( User , "User" ) ) ;
89
- selectQueryBuilder2 . where ( BadInput ) . getMany ( ) . then ( result => {
86
+ selectQueryBuilder2 . where ( 'id > 5' ) . getMany ( ) . then ( result => {
90
87
console . log ( result )
91
88
} ) ;
92
-
89
+
93
90
const insertQueryBuilder : InsertQueryBuilder < User2 > = AppDataSource
94
91
. createQueryBuilder ( User2 , "User2" ) . insert ( ) ;
95
92
insertQueryBuilder . into ( User2 )
96
93
. values ( {
97
94
firstName : "Timber" ,
98
- lastName : ( ) => BadInput ,
95
+ lastName : ( ) => "LastNameToFind" ,
99
96
age : 33 ,
100
97
} ) . execute ( ) . then ( result => {
101
- console . log ( result )
102
-
103
-
104
- } )
105
-
98
+ console . log ( result )
99
+
100
+
101
+ } )
102
+
106
103
AppDataSource
107
104
. createQueryBuilder ( User2 , "User" )
108
105
. insert ( )
109
106
. into ( User2 )
110
107
. values ( {
111
108
firstName : "Timber" ,
112
- lastName : ( ) => BadInput ,
109
+ lastName : ( ) => "LastNameToFind" ,
113
110
age : 33 ,
114
111
} )
115
112
. orUpdate (
116
- [ BadInput , BadInput ] ,
117
- [ BadInput ] ,
113
+ [ "firstName" , "lastName" ] ,
114
+ [ "externalId" ] ,
118
115
)
119
116
. getQueryAndParameters ( )
120
-
117
+
121
118
await AppDataSource . getRepository ( User2 ) . createQueryBuilder ( "user2" )
122
119
. update ( User2 )
123
- . set ( { firstName : ( ) => BadInput , lastName : "Saw2" , age : 12 } )
124
- . where ( BadInput , )
120
+ . set ( { firstName : ( ) => "firstname" , lastName : "Saw2" , age : 12 } )
121
+ . where ( 'id > 5' )
125
122
. execute ( )
126
-
123
+
127
124
await AppDataSource . getRepository ( User2 ) . createQueryBuilder ( 'user2' )
128
125
. delete ( )
129
126
. from ( User2 )
130
- . where ( BadInput )
127
+ . where ( 'id > 5' )
131
128
. execute ( )
132
-
133
-
129
+
130
+
134
131
const queryRunner = AppDataSource . createQueryRunner ( )
135
- await queryRunner . query ( BadInput )
136
-
132
+ await queryRunner . query ( 'SELECT name,id FROM table1 WHERE id > 5' )
133
+
137
134
await queryRunner . manager
138
135
. createQueryBuilder ( User2 , "User" )
139
- . select ( BadInput )
140
- . where ( BadInput ) . execute ( )
141
-
136
+ . select ( "name,id" )
137
+ . where ( "id > 5" ) . execute ( )
138
+
142
139
await AppDataSource
143
140
. createQueryBuilder ( User , "User" )
144
- . innerJoin ( "User.profile" , "profile" , BadInput , {
141
+ . innerJoin ( "User.profile" , "profile" , 'id > 5' , {
145
142
id : 2 ,
146
143
} ) . getMany ( ) . then ( res => console . log ( res ) )
147
-
144
+
148
145
await AppDataSource
149
146
. createQueryBuilder ( User , "User" )
150
- . leftJoinAndMapOne ( "User.profile" , "profile" , "profile" , BadInput , {
147
+ . leftJoinAndMapOne ( "User.profile" , "profile" , "profile" , 'id > 5' , {
151
148
id : 2 ,
152
149
} ) . getMany ( ) . then ( res => console . log ( res ) )
153
-
154
-
150
+
151
+
155
152
await AppDataSource
156
153
. createQueryBuilder ( User2 , "User2" )
157
154
. where ( ( qb ) => {
158
155
const subQuery = qb
159
156
. subQuery ( )
160
- . select ( BadInput )
157
+ . select ( "name,id" )
161
158
. from ( User2 , "user2" )
162
- . where ( BadInput )
159
+ . where ( 'id > 5' )
163
160
. getQuery ( )
164
161
return "User2.id IN " + subQuery
165
162
} )
166
163
. setParameter ( "registered" , true )
167
164
. getMany ( )
168
-
169
-
165
+
166
+
170
167
// Using repository
171
- let users = await AppDataSource . getRepository ( User2 ) . createQueryBuilder ( "User2" ) . where ( "User2.id =:kind" + BadInput , { kind : 1 } ) . getMany ( )
172
-
168
+ let users = await AppDataSource . getRepository ( User2 ) . createQueryBuilder ( "User2" ) . where ( "User2.id =:kind" , { kind : 1 } ) . getMany ( )
169
+
173
170
// Using DataSource
174
171
users = await AppDataSource
175
172
. createQueryBuilder ( )
176
173
. select ( "User2" )
177
174
. from ( User2 , "User2" )
178
- . where ( BadInput , { id : 1 } )
175
+ . where ( 'id > 5' , { id : 1 } )
179
176
. getMany ( )
180
-
177
+
181
178
// Using entity manager
182
179
await AppDataSource . manager
183
- . createQueryBuilder ( User2 , "User2" ) . where ( "User2.id =:kind" + BadInput , { kind : '1' } ) . getMany ( )
180
+ . createQueryBuilder ( User2 , "User2" ) . where ( "User2.id =:kind and id > 5" , { kind : '1' } ) . getMany ( )
184
181
await AppDataSource
185
182
. createQueryBuilder ( User2 , "User2" )
186
- . leftJoinAndSelect ( "user.photos" , "photo" , BadInput ) . getMany ( )
183
+ . leftJoinAndSelect ( "user.photos" , "photo" , 'id > 5' ) . getMany ( )
187
184
await AppDataSource
188
- . createQueryBuilder ( User2 , "User2" ) . groupBy ( "User2.id" ) . having ( BadInput ) . getMany ( )
185
+ . createQueryBuilder ( User2 , "User2" ) . groupBy ( "User2.id" ) . having ( 'id > 5' ) . getMany ( )
189
186
// orderBy
190
187
// it is a little bit restrictive, e.g. sqlite don't support it at all
191
188
await AppDataSource
192
- . createQueryBuilder ( User2 , "User2" ) . where ( BadInput , {
189
+ . createQueryBuilder ( User2 , "User2" ) . where ( 'id > 5' , {
193
190
firstName : "Timber" ,
194
191
} )
195
192
. where (
196
193
new Brackets ( ( qb ) => {
197
- qb . where ( BadInput ) . orWhere ( BadInput ) ;
194
+ qb . where ( 'id > 5' ) . orWhere ( 'id > 5' ) ;
198
195
} )
199
196
)
200
- . orderBy ( BadInput ) . orWhere ( BadInput ) . getMany ( )
201
-
197
+ . orderBy ( "name" ) . orWhere ( 'id > 5' ) . getMany ( )
198
+
202
199
// relation
203
200
AppDataSource . createQueryBuilder ( ) . relation ( User , "name" )
204
201
. of ( User )
205
- . select ( ) . where ( BadInput ) . getMany ( ) . then ( results => {
206
- console . log ( results )
207
- } )
208
-
202
+ . select ( ) . where ( 'id > 5' ) . getMany ( ) . then ( results => {
203
+ console . log ( results )
204
+ } )
205
+
209
206
// Brackets
210
207
await AppDataSource . createQueryBuilder ( User2 , "User2" )
211
- . where ( BadInput )
208
+ . where ( 'id > 5' )
212
209
. andWhere (
213
210
new Brackets ( ( qb ) => {
214
- qb . where ( BadInput ) . orWhere ( BadInput ) ;
211
+ qb . where ( 'id > 5' ) . orWhere ( 'id > 5' ) ;
215
212
} )
216
213
) . andWhere (
217
214
new NotBrackets ( ( qb ) => {
218
- qb . where ( BadInput ) . orWhere ( BadInput )
215
+ qb . where ( 'id > 5' ) . orWhere ( 'id > 5' )
219
216
} ) ,
220
217
) . getMany ( )
221
218
} ) . catch ( error => console . log ( error ) )
0 commit comments