import { Module } from '@nestjs/common'; ?
import { TypeOrmModule } from '@nestjs/typeorm'; ?
import { APP_FILTER } from '@nestjs/core'; ?
??
@Module({ ?
? imports: [ ?
? ? TypeOrmModule.forRoot({ ?
? ? ? type: 'mysql', ?
? ? ? host: 'localhost', ?
? ? ? port: 3306, ?
? ? ? username: 'test', ?
? ? ? password: 'test', ?
? ? ? database: 'test', ?
? ? ? entities: [__dirname + '/**/*.entity{.ts,.js}'], // 扫描实体文件 ?
? ? ? synchronize: true, // 设置为 true 以自动同步数据库结构到你的数据库中 ?
? ? }), ?
? ], ?
? providers: [ ?
? ? { ?
? ? ? provide: APP_FILTER, ?
? ? ? useClass: YourAppFilter, // 你的过滤器,如果不需要可以忽略这一行 ?
? ? }, ?
? ], ?
}) ?
export class AppModule {}
重点:synchronize: true, // 设置为 true 以自动同步数据库结构到你的数据库中 ?
类名useraa.ts
? import {
? ? Column,
? ? CreateDateColumn,
? ? Entity,
? ? PrimaryGeneratedColumn,
? ? Unique,
? ? UpdateDateColumn,
? } from 'typeorm';
? /** ユーザアプリアカウント */
? @Entity({ name: 'useraa' })
? @Unique(['ddd'])
? export class Useraa {
? ? /** アプリアカウントマスタID */
? ? @PrimaryGeneratedColumn()
? ? id!: number;
? ? @Column({
? ? ? name: 'ddd',
? ? ? comment: 'ddd',
? ? })
? ? ddd!: string;
? ? @CreateDateColumn({
? ? ? name: 'create_date',
? ? ? comment: '作成日時',
? ? ? type: 'timestamp with time zone',
? ? })
? ? createDate!: Date;
? ? @UpdateDateColumn({
? ? ? name: 'update_date',
? ? ? comment: '更新日時',
? ? ? type: 'timestamp with time zone',
? ? ? nullable: true,
? ? })
? ? updateDate!: Date | null;
? }
自动创建表
1.确保自己的字段没错
2.确保自己的数据库连接没问题
3.synchronize: true, // 设置为 true 以自动同步数据库结构到你的数据库中
(这个设置的就是true。应该是vscode没自动编译 所以重启后编译了)
4.vscode不用关闭重新启动,但是run start必须重启
否则创建不成功?
synchronize
,因为它可能会导致数据丢失。在开发环境中,它可以为你提供方便,但始终确保备份你的数据。以
下
可
以
不
看
也可以用另一种方法创建到数据库
自定义迁移:
如果你需要更多的控制权,可以使用迁移来手动更改数据库结构。
你可以使用?typeorm-migrations
?包来创建和运行迁移。这允许你编写脚本,以更细粒度地控制数据库结构的变化。
重点
1.需要配置typeorm?
2.创建migration.ts文件夹
会自动生成文件
3.运行创建命令(具体自己百度)
希望对你有帮助
记得点赞啊 谢谢!