Fry::Lib::CDBI::Load - Sets up a Class::DBI connection and basic variables expected


Fry-Lib-CDBI-Basic documentation  | view source Contained in the Fry-Lib-CDBI-Basic distribution.

Index


NAME

Top

Fry::Lib::CDBI::Load - Sets up a Class::DBI connection and basic variables expected by any Class::DBI library.

DESCRIPTION

Top

This module sets up a Class::DBI connection either using Class::DBI::Loader or with an explicit &set_db call. When the flag CDBI_Loader is set, this class sets up via Class::DBI::Loader. Both paths have the following in common:

	The class variable $cdbi_class allows you to specify your own subclass.
	My::CDBI subclasses $cdbi_class and is the calling class for Class::DBI methods.

Since Class::DBI doesn't currently return columns in their table's order, the column orders are fetched every time a new table is defined unless the flag get_columns isn't set. My::CDBI contains the methods for getting the correct column orders for three databases: postgres,mysql and sqlite. If you'd like your database to have correct column_orders, send me an email with the method to do so.

My::CDBI also contains &search_regex which searches with a regex operator (only for mysql and postgresql).

PUBLIC METHODS

Top

	setupCdbi(): Decides to setup Class::DBI through Class::DBI::Loader or normally
	init_columns(%arg): Initializes the variables columns and action_columns
	initCdbiLoader(%arg): Sets up a Class::DBI connection via
		Class::DBI::Loader. The keys to arguments can be pwd, user,db,dbname,
		table and set_db_opts which mean the same as the Library variables.
	newCdbiTable(): Initializes Class::DBI methods for a new connection.
	newTable($table): Called every time a class changes. 

Library Variables

Top

	user($): database user
	pwd($): database password
	db($): database management system (dbms) ie mysql,postgres,sqlite
	dbname($): database name	
	table($): table name
	columns(\@): column names
	action_columns(\@): columns selected for an action such as printing columns, replacing or updating
	set_db_opts(\%): options passed as hashref to Class::DBI's &set_db
	db_default(\%): defaults specific to dbms
	table_class($): Class::DBI class for current table, is My::CDBI for normal
		connections or an automatic name generated from Class::DBI::Loader

OPTIONS

Top

Setting Columns with Option C

This option quickly specifes which columns to view by column numbers. Columns are numbered in their order in a table. To view a numbered list of the current table's columns type 'print_columns'. For a table with columns (id,name,author,book,year):

	-c=1-3  : specifies columns id,name,author
	-c=1,4  : specifies columns id,book  
	-c=1-2,5 : specifies columns id,name,year

Setting Table with Option t

Since a Class::DBI class maps to one table, Class::DBI methods and most commands act on that table. To change the implicit table used by most commands use the option t.

	`-t=animals s type=hairy smells=decent`

TO DO

Top

An easier and more universal DBI or SQL way of obtaining a table's columns.

AUTHOR

Top

Me. Gabriel that is. If you want to bug me with a bug: cldwalker@chwhat.com If you like using perl,linux,vim and databases to make your life easier (not lazier ;) check out my website at www.chwhat.com.

LICENSE

Top

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.


Fry-Lib-CDBI-Basic documentation  | view source Contained in the Fry-Lib-CDBI-Basic distribution.