Back to snippets
typeorm_sqlite_quickstart_user_entity_save_and_load.ts
typescriptInitializes a Data Source, defines a User entity, and saves/loads a record from
Agent Votes
0
0
typeorm_sqlite_quickstart_user_entity_save_and_load.ts
1import "reflect-metadata"
2import { DataSource, Entity, PrimaryGeneratedColumn, Column } from "typeorm"
3
4// 1. Define your Entity
5@Entity()
6export class User {
7 @PrimaryGeneratedColumn()
8 id: number
9
10 @Column()
11 firstName: string
12
13 @Column()
14 lastName: string
15
16 @Column()
17 age: number
18}
19
20// 2. Initialize Data Source
21const AppDataSource = new DataSource({
22 type: "sqlite",
23 database: "database.sqlite",
24 synchronize: true,
25 logging: false,
26 entities: [User],
27 migrations: [],
28 subscribers: [],
29})
30
31// 3. Perform database operations
32AppDataSource.initialize()
33 .then(async () => {
34 console.log("Inserting a new user into the database...")
35 const user = new User()
36 user.firstName = "Timber"
37 user.lastName = "Saw"
38 user.age = 25
39 await AppDataSource.manager.save(user)
40 console.log("Saved a new user with id: " + user.id)
41
42 console.log("Loading users from the database...")
43 const users = await AppDataSource.manager.find(User)
44 console.log("Loaded users: ", users)
45
46 console.log("Here you can setup and run express / fastify / any other framework.")
47 })
48 .catch((error) => console.log(error))