@Entity()
ๆฅๆ ่ฎฐ๏ผUser
ๅฎไฝไฝฟ็จๆฟไปฃ่กจๅ๏ผๅฏไปฅๅจ@ Entity
ไธญๆๅฎ๏ผ@Entity๏ผโmy_usersโ๏ผ
ใ ๅฆๆ่ฆไธบๅบ็จ็จๅบไธญ็ๆๆๆฐๆฎๅบ่กจ่ฎพ็ฝฎๅบๆฌๅ็ผ๏ผๅฏไปฅๅจ่ฟๆฅ้้กนไธญๆๅฎentityPrefix
ใ@ Column
็ๆฏไธชๅฎไฝ็ฑปๅฑๆง้ฝๅฐๆ ๅฐๅฐๆฐๆฎๅบ่กจๅใ@PrimaryColumn()
ๅๅปบไธไธชไธปๅ๏ผๅฎๅฏไปฅ่ทๅไปปไฝ็ฑปๅ็ไปปไฝๅผใไฝ ไนๅฏไปฅๆๅฎๅ็ฑปๅใ ๅฆๆๆชๆๅฎๅ็ฑปๅ๏ผๅๅฐไปๅฑๆง็ฑปๅ่ชๅจๆจๆญใint
็ฑปๅๅๅปบ id๏ผไฝ ๅฟ
้กปๅจไฟๅญไนๅๆๅจๅ้
ใ@PrimaryGeneratedColumn()
ๅๅปบไธไธชไธปๅ๏ผ่ฏฅๅผๅฐไฝฟ็จ่ชๅจๅข้ๅผ่ชๅจ็ๆใ ๅฎๅฐไฝฟ็จauto-increment
/serial
/sequence
ๅๅปบint
ๅ๏ผๅๅณไบๆฐๆฎๅบ๏ผใ ไฝ ไธๅฟ
ๅจไฟๅญไนๅๆๅจๅ้
ๅ
ถๅผ๏ผ่ฏฅๅผๅฐไผ่ชๅจ็ๆใ@PrimaryGeneratedColumn("uuid")
ๅๅปบไธไธชไธปๅ๏ผ่ฏฅๅผๅฐไฝฟ็จuuid
่ชๅจ็ๆใ Uuid ๆฏไธไธช็ฌ็น็ๅญ็ฌฆไธฒ idใ ไฝ ไธๅฟ
ๅจไฟๅญไนๅๆๅจๅ้
ๅ
ถๅผ๏ผ่ฏฅๅผๅฐ่ชๅจ็ๆใsave
ไฟๅญๅฎไฝๆถ๏ผๅฎๆปๆฏๅ
ๅฐ่ฏไฝฟ็จ็ปๅฎ็ๅฎไฝ ID๏ผๆ ids๏ผๅจๆฐๆฎๅบไธญๆฅๆพๅฎไฝใ ๅฆๆๆพๅฐ id / ids๏ผๅๅฐๆดๆฐๆฐๆฎๅบไธญ็่ฟไธ่กใ ๅฆๆๆฒกๆๅ
ๅซ id / ids ็่ก๏ผๅไผๆๅ
ฅไธไธชๆฐ่กใmanager.findOne
ๆrepository.findOne
ใ ไพ๏ผ@CreateDateColumn
ๆฏไธไธช็นๆฎๅ๏ผ่ชๅจไธบๅฎไฝๆๅ
ฅๆฅๆใๆ ้่ฎพ็ฝฎๆญคๅ๏ผ่ฏฅๅผๅฐ่ชๅจ่ฎพ็ฝฎใ@UpdateDateColumn
ๆฏไธไธช็นๆฎๅ๏ผๅจๆฏๆฌก่ฐ็จๅฎไฝ็ฎก็ๅจๆๅญๅจๅบ็save
ๆถ๏ผ่ชๅจๆดๆฐๅฎไฝๆฅๆใๆ ้่ฎพ็ฝฎๆญคๅ๏ผ่ฏฅๅผๅฐ่ชๅจ่ฎพ็ฝฎใ@VersionColumn
ๆฏไธไธช็นๆฎๅ๏ผๅจๆฏๆฌก่ฐ็จๅฎไฝ็ฎก็ๅจๆๅญๅจๅบ็save
ๆถ่ชๅจๅข้ฟๅฎไฝ็ๆฌ๏ผๅข้็ผๅท๏ผใๆ ้่ฎพ็ฝฎๆญคๅ๏ผ่ฏฅๅผๅฐ่ชๅจ่ฎพ็ฝฎใstring
็ฑปๅๆ ่ฎฐใobject
ๆGeometry
๏ผๆๅญ็ฑป๏ผไพๅฆPoint
๏ผใgeometry
,ๅนถไฝไธบjson
่ฝฌๆขไธบGeoJSON๏ผ@ Column
็็ฌฌไธไธชๅๆฐ ๆ่
ๅจ@Column
็ๅ้้กนไธญๆๅฎ๏ผไพๅฆ๏ผmysql
/mariadb
็ๅ็ฑปๅint
, tinyint
, smallint
, mediumint
, bigint
, float
, double
, dec
, decimal
, numeric
, date
, datetime
, timestamp
, time
, year
, char
, varchar
, nvarchar
, text
, tinytext
, mediumtext
, blob
, longtext
, tinyblob
, mediumblob
, longblob
, enum
, json
, binary
, geometry
, point
, linestring
, polygon
, multipoint
, multilinestring
, multipolygon
, geometrycollection
postgres
็ๅ็ฑปๅint
, int2
, int4
, int8
, smallint
, integer
, bigint
, decimal
, numeric
, real
, float
, float4
, float8
, double precision
, money
, character varying
, varchar
, character
, char
, text
, citext
, hstore
, bytea
, bit
, varbit
, bit varying
, timetz
, timestamptz
, timestamp
, timestamp without time zone
, timestamp with time zone
, date
, time
, time without time zone
, time with time zone
, interval
, bool
, boolean
, enum
, point
, line
, lseg
, box
, path
, polygon
, circle
, cidr
, inet
, macaddr
, tsvector
, tsquery
, uuid
, xml
, json
, jsonb
, int4range
, int8range
, numrange
, tsrange
, tstzrange
, daterange
, geometry
, geography
sqlite
/cordova
/react-native
/expo
็ๅ็ฑปๅint
, int2
, int8
, integer
, tinyint
, smallint
, mediumint
, bigint
, decimal
, numeric
, float
, double
, real
, double precision
, datetime
, varying character
, character
, native character
, varchar
, nchar
, nvarchar2
, unsigned big int
, boolean
, blob
, text
, clob
, date
mssql
็ๅ็ฑปๅint
, bigint
, bit
, decimal
, money
, numeric
, smallint
, smallmoney
, tinyint
, float
, real
, date
, datetime2
, datetime
, datetimeoffset
, smalldatetime
, time
, char
, varchar
, text
, nchar
, nvarchar
, ntext
, binary
, image
, varbinary
, hierarchyid
, sql_variant
, timestamp
, uniqueidentifier
, xml
, geometry
, geography
, rowversion
oracle
็ๅ็ฑปๅchar
, nchar
, nvarchar2
, varchar2
, long
, raw
, long raw
, number
, numeric
, float
, dec
, decimal
, integer
, int
, smallint
, real
, double precision
, date
, timestamp
, timestamp with time zone
, timestamp with local time zone
, interval year to month
, interval day to second
, bfile
, blob
, clob
, nclob
, rowid
, urowid
enum
ๅ็ฑปๅpostgres
ๅmysql
้ฝๆฏๆenum
ๅ็ฑปๅใ ๅนถๆๅค็งๅๅฎไนๆนๅผ๏ผๆณจๆ๏ผๆฏๆๅญ็ฌฆไธฒ๏ผๆฐๅญๅๅผๆๆไธพใ
simple-array
็ๅ็ฑปๅsimple-array
็็นๆฎๅ็ฑปๅ๏ผๅฎๅฏไปฅๅฐๅๅงๆฐ็ปๅผๅญๅจๅจๅไธชๅญ็ฌฆไธฒๅไธญใ ๆๆๅผ้ฝไปฅ้ๅทๅ้ใ ไพๅฆ๏ผAlexander๏ผAlex๏ผSasha๏ผShurik
ๅผใ ๅฝไฝ ไปๆฐๆฎๅบๅ ่ฝฝๆฐๆฎๆถ๏ผname ๅฐไฝไธบ names ๆฐ็ป่ฟๅ๏ผๅฐฑๅไนๅๅญๅจๅฎไปฌไธๆ ทใsimple-json
ๅ็ฑปๅsimple-json
็็นๆฎๅ็ฑปๅ๏ผๅฎๅฏไปฅๅญๅจไปปไฝๅฏไปฅ้่ฟ JSON.stringify ๅญๅจๅจๆฐๆฎๅบไธญ็ๅผใ ๅฝไฝ ็ๆฐๆฎๅบไธญๆฒกๆ json ็ฑปๅ่ไฝ ๅๆณๅญๅจๅๅ ่ฝฝๅฏน่ฑก๏ผ่ฏฅ็ฑปๅๅฐฑๅพๆ็จไบใ ไพๅฆ:{โnameโ๏ผโJohnโ๏ผโnicknameโ๏ผโMalkovichโ}
ๅผ ๅฝไฝ ไปๆฐๆฎๅบๅ ่ฝฝๆฐๆฎๆถ๏ผๅฐ้่ฟ JSON.parse ่ฟๅ object/array/primitiveใ@Generated
่ฃ
้ฅฐๅจๅๅปบๅ
ทๆ็ๆๅผ็ๅใ ไพๅฆ๏ผuuid
ๅผๅฐ่ชๅจ็ๆๅนถๅญๅจๅฐๆฐๆฎๅบไธญใ@ Column
ไธๆๅฎๅ้้กน๏ผColumnOptions
ไธญๅฏ็จ้้กนๅ่กจ๏ผname: string
- ๆฐๆฎๅบ่กจไธญ็ๅๅใlength: number
- ๅ็ฑปๅ็้ฟๅบฆใ ไพๅฆ๏ผๅฆๆ่ฆๅๅปบvarchar๏ผ150๏ผ
็ฑปๅ๏ผ่ฏทๆๅฎๅ็ฑปๅๅ้ฟๅบฆ้้กนใnullable: boolean
- ๅจๆฐๆฎๅบไธญไฝฟๅNULL
ๆNOT NULL
ใ ้ป่ฎคๆ
ๅตไธ๏ผๅๆฏnullable๏ผfalse
ใupdate: boolean
- ๆ็คบ"save"ๆไฝๆฏๅฆๆดๆฐๅๅผใๅฆๆไธบfalse๏ผๅๅช่ฝๅจ็ฌฌไธๆฌกๆๅ
ฅๅฏน่ฑกๆถ็ผๅ่ฏฅๅผใ ้ป่ฎคๅผไธบ"true"ใselect: boolean
- ๅฎไนๅจ่ฟ่กๆฅ่ฏขๆถๆฏๅฆ้ป่ฎค้่ๆญคๅใ ่ฎพ็ฝฎไธบfalse
ๆถ๏ผๅๆฐๆฎไธไผๆพ็คบๆ ๅๆฅ่ฏขใ ้ป่ฎคๆ
ๅตไธ๏ผๅๆฏselect๏ผtrue
default: string
- ๆทปๅ ๆฐๆฎๅบ็บงๅ็DEFAULT
ๅผใprimary: boolean
- ๅฐๅๆ ่ฎฐไธบไธป่ฆๅใ ไฝฟ็จๆนๅผๅ@ PrimaryColumn
็ธๅใunique: boolean
- ๅฐๅๆ ่ฎฐไธบๅฏไธๅ๏ผๅๅปบๅฏไธ็บฆๆ๏ผใcomment: string
- ๆฐๆฎๅบๅๅคๆณจ๏ผๅนถ้ๆๆๆฐๆฎๅบ็ฑปๅ้ฝๆฏๆใprecision: number
- ๅ่ฟๅถ๏ผ็ฒพ็กฎๆฐๅญ๏ผๅ็็ฒพๅบฆ๏ผไป
้็จไบๅ่ฟๅถๅ๏ผ๏ผ่ฟๆฏไธบๅผๅญๅจ็ๆๅคงไฝๆฐใไป
็จไบๆไบๅ็ฑปๅใscale: number
- ๅ่ฟๅถ๏ผ็ฒพ็กฎๆฐๅญ๏ผๅ็ๆฏไพ๏ผไป
้็จไบๅ่ฟๅถๅ๏ผ๏ผ่กจ็คบๅฐๆฐ็นๅณไพง็ไฝๆฐ๏ผไธไธๅพๅคงไบ็ฒพๅบฆใ ไป
็จไบๆไบๅ็ฑปๅใzerofill: boolean
- ๅฐZEROFILL
ๅฑๆง่ฎพ็ฝฎไธบๆฐๅญๅใ ไป
ๅจ MySQL ไธญไฝฟ็จใ ๅฆๆๆฏtrue
๏ผMySQL ไผ่ชๅจๅฐUNSIGNED
ๅฑๆงๆทปๅ ๅฐๆญคๅใunsigned: boolean
- ๅฐUNSIGNED
ๅฑๆง่ฎพ็ฝฎไธบๆฐๅญๅใ ไป
ๅจ MySQL ไธญไฝฟ็จใcharset: string
- ๅฎไนๅๅญ็ฌฆ้ใ ๅนถ้ๆๆๆฐๆฎๅบ็ฑปๅ้ฝๆฏๆใcollation: string
- ๅฎไนๅๆๅบ่งๅใenum: string[]|AnyEnum
- ๅจenum
ๅ็ฑปๅไธญไฝฟ็จ๏ผไปฅๆๅฎๅ
่ฎธ็ๆไธพๅผๅ่กจใ ไฝ ไนๅฏไปฅๆๅฎๆฐ็ปๆๆๅฎๆไธพ็ฑปใhstoreType: "object"|"string"
-่ฟๅHSTORE
ๅ็ฑปๅใ ไปฅๅญ็ฌฆไธฒๆๅฏน่ฑก็ๅฝขๅผ่ฟๅๅผใ ไป
ๅจPostgresไธญไฝฟ็จใarray: boolean
- ็จไบๅฏไปฅๆฏๆฐ็ป็ postgres ๅ็ฑปๅ๏ผไพๅฆ int []๏ผtransformer: { from(value: DatabaseType): EntityType, to(value: EntityType): DatabaseType }
- ็จไบๅฐไปปๆ็ฑปๅEntityType
็ๅฑๆง็ผ็ปไธบๆฐๆฎๅบๆฏๆ็็ฑปๅDatabaseType
ใMongoDB
ไธญไธๅฏ็จใPhoto
, Question
, Post
ไธไธชๅฎไฝ:id
๏ผtitle
๏ผdescription
ใ ไธบไบๅๅฐ้ๅคๅนถไบง็ๆดๅฅฝ็ๆฝ่ฑก๏ผๆไปฌๅฏไปฅไธบๅฎไปฌๅๅปบไธไธชๅไธบContent
็ๅบ็ฑป๏ผ