sql_query_builder 1.1.0 copy "sql_query_builder: ^1.1.0" to clipboard
sql_query_builder: ^1.1.0 copied to clipboard

PostgresSQL query builder, Support Model, Where, orWhere, Find, Join, softDeletes, Debugging and many mores.

Dart SQL Query Builder #

Documentation #

Example Usage #

  • Install required dependency
$ dart pub add json_serializable --dev
$ dart pub add build_runner --dev
  • Setup model
import 'package:postgres/postgres.dart';
import 'package:sql_query_builder/sql_query_builder.dart';

part 'actor.model.g.dart';

@IsModel()
class Actor extends Model {
  @Column()
  int? id;

  @Column(name: 'name')
  String? actorName;

  @Column()
  int? age;

  @Column(name: 'created_at')
  DateTime? createdAt;

  @Column(name: 'updated_at')
  DateTime? updatedAt;

  @override
  fromJson(Map<String, dynamic> json) => _$ActorFromJson(json);

  @override
  toMap() => _$ActorToJson(this);
}
  • Run build runner
$ dart run build_runner build
actor = await actor.save();
void main() async {
  // create database connection and open
  PostgreSQLConnection db = PostgreSQLConnection(
    'localhost',
    5432,
    'postgres',
    username: 'admin',
    password: 'password',
  );
  await db.open();

  // initialize SqlQueryBuilder, only once at main function
  SqlQueryBuilder.initialize(database: db, debug: true);

  // and finally use model from anywhere in the project.
  Actor actor = Actor();
  actor.actorName = 'John Wick';
  actor.age = 60;
  actor = await actor.save();

  actor.actorName = "Tom Cruise";
  actor = await actor.save(); // save again

  print(actor.id);

  Actor result = await Actor().where('name', 'Tom Cruise').get();
  print(result.age);
}
10
likes
140
points
65
downloads

Publisher

verified publisherzinkyawkyaw.dev

Weekly Downloads

PostgresSQL query builder, Support Model, Where, orWhere, Find, Join, softDeletes, Debugging and many mores.

Repository (GitHub)

Documentation

API reference

License

MIT (license)

Dependencies

json_annotation, postgres

More

Packages that depend on sql_query_builder