( engine: Engine, schema: string, table: string, limit: number )
| 183 | }; |
| 184 | |
| 185 | export const generateSimpleSelectAllStatement = ( |
| 186 | engine: Engine, |
| 187 | schema: string, |
| 188 | table: string, |
| 189 | limit: number |
| 190 | ) => { |
| 191 | const schemaAndTable = generateSchemaAndTableNameInSQL(engine, schema, table); |
| 192 | |
| 193 | switch (engine) { |
| 194 | case Engine.MONGODB: |
| 195 | return `db["${escapeMongoDBCollectionName(table)}"].find().limit(${limit});`; |
| 196 | case Engine.COSMOSDB: |
| 197 | return `SELECT * FROM c`; |
| 198 | case Engine.ELASTICSEARCH: |
| 199 | return `GET ${table}/_search?size=${limit} |
| 200 | { |
| 201 | "query": { |
| 202 | "match_all": {} |
| 203 | } |
| 204 | }`; |
| 205 | case Engine.MSSQL: |
| 206 | return `SELECT TOP ${limit} * FROM ${schemaAndTable};`; |
| 207 | case Engine.ORACLE: |
| 208 | return `SELECT * FROM ${schemaAndTable} WHERE ROWNUM <= ${limit};`; |
| 209 | default: |
| 210 | return `SELECT * FROM ${schemaAndTable} LIMIT ${limit};`; |
| 211 | } |
| 212 | }; |
| 213 | |
| 214 | export const generateSimpleInsertStatement = ( |
| 215 | engine: Engine, |
no test coverage detected