Subject: | [patch] Added tip for create_ddl_dir not creating mysql views in Troubleshooting.pod |
I had a problem where create_ddl_dir would create DDL for views for
every storage type except MySQL. It turns out that SQL::Translator
would only generate views if it thought your mysql version >= 5.000001.
The only way to accomplish this is to set producer_args mysql_version
explicitly. I have attached a patch to document this.
Subject: | Troubleshooting.pod.patch |
--- lib/DBIx/Class/Manual/Troubleshooting.pod.old 2010-03-23 15:16:06.000000000 -0500
+++ lib/DBIx/Class/Manual/Troubleshooting.pod 2010-03-23 15:17:00.000000000 -0500
@@ -158,5 +158,13 @@
The solution is to use the smallest practical value for LongReadLen.
+=head2 create_ddl_dir does not produce DDL for MySQL views
+
+L<SQL::Translator> does not create DDL for MySQL views if it doesn't know you
+are using mysql version 5.000001 or higher. To explicity set this version, add
+C<mysql_version> to the C<producer_args> in the C<%sqlt> option.
+
+ $schema->create_ddl_dir(['MySQL'], '1.0', './sql/', undef, { producer_args => { mysql_version => 5.000058 } })
+
=cut