@manwar What a great surprise for new year! Not my pain point exactly but certainly relevant to many users. Thanks for your contribution!

But it looks like no cursors are supported, results are neither Result/ResultSet objects and all rows are plain hashrefs. So you're missing all Result object capabilities😕 With only the search API you get only half the power of DBIC😔

Do you think you could support cursors in a future release? I think many usecases call for both async IO and cursors for looping over large datasets.

#perl #dbixclass

I’ve been learning #CSharp and #DotNet as part of a migration project at work, and got my boss’s blessing to share some of the insights and concept-mapping I’ve done so far: https://itsdaves.site/2025/11/28/perl-vs-c-vs-javascript/

If you’re a dev who went from #Perl to C# or vice versa, or #Linux to #Windows or vice versa, I’d love to hear any interesting insights or tricks you’ve learned.

#Dancer2 #PerlDancer #DBIxClass #EntityFrameworkCore #PostgreSQL #SQLServer

Perl vs C# (vs JavaScript)

Lately at my day job, I have been tasked with spearheading a migration of some software from Linux-based Modern Perl apps using Dancer2 and DBIx:Class to Windows-based C# apps using .NET and Entity…

It's Dave's Site

Question for #Perl folks using #DBIxClass and #SQLTranslator with #PostgreSQL #Postgres and/or #SQLServer #MSSQL

Is it expected that the producer for SQL server will use the data type survivor in your schema verbatim even if it’s not supported?

I’m working in an app that has a Postgres DB with jsonb columns and was hoping I could have deployment handler output SQL for SQL server that uses an acceptable equivalent, but that doesn’t seem to have been the case — it just says jsonb.

@peateasea Reading the article it looks like you need to create a PP object and then throw a resultset object at it.

Have you considered extending it that one could load it as a plugin to their resultset (base) class and call a method on any resultset object?

#dbixclass

@demiguise One more thing: If you want to get more experience with #DBIxClass and how Coocook is using it you could also contribute a small task that involves DBIC.

We always have some issues open labelled with "good first issues" for beginners.
https://gitlab.com/coocook/coocook/-/issues?label_name[]=good%20first%20issue

In particular there’s issue #320 that’s about simply removing some old fallback which allows removing a UNIQUE constraint from the DB.
https://gitlab.com/coocook/coocook/-/issues/320

If you want to give it a try I’d be glad to help you tackle this 😁

Issues · Coocook / Coocook · GitLab

🧑‍🍳🦉 Web application for collecting recipes and making food plans https://coocook.org/

GitLab

@demiguise If you’re asking to “hear” something about #DBIxClass from me personally:

There’s my 14min talk about database migrations with DBIC (English slides, German talk, no English subtitles yet) from 20th German #Perl Workshop #gpw2018 online. That’s pretty much the toolset Coocook still uses today. Can’t believe this talk was already 7 years ago 🙈
https://www.youtube.com/watch?v=iWmVlDXsKFU

📢 @dboehmer (that’s me 😁) is also available for hire to do DBIC talks, trainings, consulting </advertisement> 😎

Datenbankmigrationen mit DBIx Class - Daniel Böhmer

YouTube
@demiguise I still found ORMs in other languages inferior compared to #DBIxClass. Anyway we’ve learned something since the incarnation of DBIC nearly 20 years ago. That’s why Chad Granum started DBIx-QuickORM last year. The repo hasn’t seem activity for some months now but I still hope this project will fly.
https://metacpan.org/dist/DBIx-QuickORM
DBIx-QuickORM-0.000004

Actively maintained Object Relational Mapping that makes getting started Quick and has a rich feature set.

MetaCPAN
@demiguise Unfortunately though the development of #DBIxClass has stalled and there even seems to be unclarity about the project’s ownership and governance. Don’t expect new releases or even further development. This is really a sad state for a framework that I consider one of #Perl’s potential USPs 😔 DBIC is so mature that you can still use it reliably though.

@demiguise Well, #DBIxClass has proven to be very stable and powerful. Most often I found a way to implement unusual queries in DBIC and there’s always a workaround possible by using custom #SQL if you give up.

For me the main benefit of using a powerful ORM like DBIC is that you can reuse DB code in OOP fashion. Our Coocook::Schema::Result[Set]:: namespace has many methods providing tiny bits that can be plugged together like building blocks. Plain SQL quickly becomes very repetitive …

@coocook #dbixclass is just insanely cool, I started using it within a small, hobby-fiddling Dancer2 web app.

Is there a chance to hear about your experiences using it? 👀