postgresql - วิธีการกำหนด varchar และ enum ใน TypeORM?
ฉันมีโครงสร้างฐานข้อมูลและจำเป็นต้องประกาศตัวแปรเป็น varchar, int, และ enum โดยใช้ TypeORM ใน TypeScript แต่ใน TypeScript ไม่มีชนิดข้อมูล varchar และ int ฉันควรประกาศอย่างไร?
โครงสร้างฐานข้อมูล
import {Entity, PrimaryGeneratedColumn, Column} from "typeorm";
@Entity()
export class User {
@PrimaryGeneratedColumn()
id: number;
@Column()
account_id: varchar;
@Column()
email: varchar;
@Column()
phone_number: varchar;
@Column()
address: varchar;
@Column()
status: enum;
@Column()
current_id: varchar;
}
คำตอบ #1
ประเภทของคอลัมน์ในฐานข้อมูลจะถูกสันนิษฐานจากประเภทของคุณสมบัติที่คุณใช้ เช่น number จะถูกแปลงเป็น integer, string เป็น varchar, boolean เป็น bool เป็นต้น แต่คุณสามารถใช้ประเภทคอลัมน์ใดก็ได้ที่ฐานข้อมูลของคุณรองรับโดยการระบุประเภทคอลัมน์ลงใน @Column decorator โดยตรง
import {Entity, Column, PrimaryGeneratedColumn} from "typeorm";
@Entity()
export class Photo {
@PrimaryGeneratedColumn()
id: number;
@Column({
length: 100
})
name: string;
@Column("text")
description: string;
@Column()
filename: string;
@Column("double")
views: number;
@Column()
isPublished: boolean;
}
เนื่องจากคุณกำลังใช้ typeorm อยู่แล้ว คุณสามารถใช้ประเภทที่กำหนดไว้ที่นี่ได้: https://github.com/typeorm/typeorm/blob/master/docs/entities.md#column-types
