Xorm is a simple and powerful ORM for Go.
Features
-
Struct <-> Table Mapping Support
-
Chainable APIs
-
Transaction Support
-
Both ORM and raw SQL operation Support
-
Sync database sechmea Support
-
Query Cache speed up
-
Database Reverse support, See Xorm Tool README
-
Simple cascade loading support
-
Optimistic Locking support
Drivers Support
Drivers for Go's sql package which currently support database/sql includes:
-
MyMysql: github.com/ziutek/mymysql/godrv
-
SQLite: github.com/mattn/go-sqlite3
-
Postgres: github.com/lib/pq
-
MsSql: github.com/lunny/godbc
Changelog
-
v0.3.1
Features:
- Support MSSQL DB via ODBC driver (github.com/lunny/godbc);
- Composite Key, using multiple pk xorm tag
- Added Row() API as alternative to Iterate() API for traversing result set, provide similar usages to sql.Rows type
- ORM struct allowed declaration of pointer builtin type as members to allow null DB fields
- Before and After Event processors
Improvements:
- Allowed int/int32/int64/uint/uint32/uint64/string as Primary Key type
- Performance improvement for Get()/Find()/Iterate()
Installation
If you have gopm installed,
gopm get github.com/go-xorm/xorm
Or
go get github.com/go-xorm/xorm
Documents
Cases
Discuss
Please visit Xorm on Google Groups
Contributors
If you want to pull request, please see CONTRIBUTING
LICENSE
BSD License http://creativecommons.org/licenses/BSD/