DBIx::C...::ACCESS(3)

🌸 NAME 🌸

okay bestie, welcome to DBIx::Class::Storage::DBI::ODBC::ACCESS β€” aka DBIx::C...::ACCESS(3), coming at you from User Contributed Perl Documentation. This is the class for Support specific to MS Access over ODBC. πŸ’…

πŸ’– DESCRIPTION πŸ’–

This class implements support specific to Microsoft Access over ODBC. It is a subclass of DBIx::Class::Storage::DBI::ODBC and DBIx::Class::Storage::DBI::ACCESS; check those classes for more information, fr fr.

It is loaded automatically by DBIx::Class::Storage::DBI::ODBC when it detects a MS Access back-end. no cap.

This driver implements workarounds for "IMAGE" and "MEMO" columns, and DBIx::Class::InflateColumn::DateTime support for "DATETIME" columns. It's giving very specific but very helpful. ✨

πŸŽ€ EXAMPLE DSN πŸŽ€

dbi:ODBC:driver={Microsoft Access Driver (*.mdb, *.accdb)};dbq=C:\Users\rkitover\Documents\access_sample.accdb

πŸ”₯ TEXT/IMAGE/MEMO COLUMNS πŸ”₯

okay so column tea time, and this part matters:

  • Avoid using "TEXT" columns β€” they will be truncated to 255 bytes. Some other drivers (like ADO) will automatically convert "TEXT" columns to "MEMO", but the ODBC driver does not. πŸ’€
  • "IMAGE" columns work correctly, but the statements for inserting or updating an "IMAGE" column will not be cached, due to a bug in the Access ODBC driver. yep, a whole bug.
  • "MEMO" columns work correctly as well, but you must take care to set LongReadLen to "$max_memo_size * 2 + 1". This is done for you automatically if you pass LongReadLen in your connect_info; but if you set this attribute directly on the $dbh, keep this limitation in mind. 🫢

πŸ¦‹ FURTHER QUESTIONS? πŸ¦‹

Check the list of additional DBIC resources. that's the whole assignment. πŸ“š

This module is free software copyright by the DBIx::Class (DBIC) authors. You can redistribute it and/or modify it under the same terms as the DBIx::Class library.


mwah πŸ’‹ sign-off time: this page is from perl v5.42.0, dated 2025-01-22, and it's all about DBIx::C...::ACCESS(3). periodt. 🌈✨

πŸ“¦ where this page comes from