view release on metacpan or search on metacpan
docs/SCHEMA.pod view on Meta::CPAN
+---------------+--------------+--------------------------------------------+
=head2 FILTER
Table to catalog filters
+-----------------+--------------+---------------------------------------------+
| COLUMN_NAME | COLUMN_TYPE | COLUMN_COMMENT |
+-----------------+--------------+---------------------------------------------+
| filter_id | int(11) | Unique filter ID |
| thread | decimal(4,1) | Diameter of screw thread in mm |
| type | varchar(45) | Filter type (e.g. Red, CPL, UV) |
| attenuation | decimal(2,1) | Attenuation of this filter in decimal stops |
| qty | int(11) | Quantity of these filters available |
| manufacturer_id | int(11) | Denotes the manufacturer of the filter. |
+-----------------+--------------+---------------------------------------------+
=head2 FILTER_ADAPTER
Table to catalogue filter adapter rings
+-------------------+--------------+----------------------------------------------+
| COLUMN_NAME | COLUMN_TYPE | COLUMN_COMMENT |
+-------------------+--------------+----------------------------------------------+
| filter_adapter_id | int(11) | Unique ID of filter adapter |
| camera_thread | decimal(3,1) | Diameter of camera-facing screw thread in mm |
| filter_thread | decimal(3,1) | Diameter of filter-facing screw thread in mm |
+-------------------+--------------+----------------------------------------------+
=head2 FLASH
Table to catlog flashes, flashguns and speedlights
+-------------------+--------------+-------------------------------------------------------------+
| COLUMN_NAME | COLUMN_TYPE | COLUMN_COMMENT |
+-------------------+--------------+-------------------------------------------------------------+
| flash_id | int(11) | Unique ID of external flash unit |
docs/SCHEMA.pod view on Meta::CPAN
| closest_focus | int(11) | The closest focus possible with this lens, in cm |
| max_aperture | decimal(4,1) | Maximum (widest) aperture available on this lens (numerical part only, e.g. 2.8) |
| min_aperture | decimal(4,1) | Minimum (narrowest) aperture available on this lens (numerical part only, e.g. 22) |
| elements | int(11) | Number of optical lens elements |
| groups | int(11) | Number of optical groups |
| weight | int(11) | Weight of this lens, in grammes (g) |
| nominal_min_angle_diag | int(11) | Nominal minimum diagonal field of view from manufacturer's specs |
| nominal_max_angle_diag | int(11) | Nominal maximum diagonal field of view from manufacturer's specs |
| aperture_blades | int(11) | Number of aperture blades |
| autofocus | tinyint(1) | Whether this lens has autofocus capability |
| filter_thread | decimal(4,1) | Diameter of lens filter thread, in mm |
| magnification | decimal(5,3) | Maximum magnification ratio of the lens, expressed like 0.765 |
| url | varchar(145) | URL to more information about this lens |
| introduced | smallint(6) | Year in which this lens model was introduced |
| discontinued | smallint(6) | Year in which this lens model was discontinued |
| negative_size_id | int(11) | ID of the negative size which this lens is designed for |
| fixed_mount | tinyint(1) | Whether this is a fixed lens (i.e. on a compact camera) |
| notes | text | Freeform notes field |
| coating | varchar(45) | Notes about the lens coating type |
| hood | varchar(45) | Model number of the compatible lens hood |
| exif_lenstype | varchar(45) | EXIF LensID number, if this lens has one officially registered. See documentation at http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/ |
lib/App/PhotoDB/handlers.pm view on Meta::CPAN
}
}
$data{frame} = $href->{frame} // &prompt({prompt=>'Frame number'});
$data{description} = $href->{description} // &prompt({prompt=>'Caption'});
$data{date} = $href->{date} // &prompt({default=>&today, prompt=>'What date was this negative taken?', type=>'date'});
$data{lens_id} = $href->{lens_id} // &listchoices({db=>$db, keyword=>'lens', table=>'choose_lens_by_film', where=>{film_id=>$data{film_id}}});
$data{shutter_speed} = $href->{shutter_speed} // &choose_shutterspeed({db=>$db, film_id=>$data{film_id}});
$data{aperture} = $href->{aperture} // &prompt({prompt=>'Aperture', type=>'decimal'});
my $filter_dia = 0;
if ($data{lens_id}) {
$filter_dia = &lookupval({db=>$db, col=>'if(filter_thread, filter_thread, 0)', table=>'LENS join LENSMODEL on LENS.lensmodel_id=LENSMODEL.lensmodel_id', where=>{lens_id=>$data{lens_id}}});
}
$data{filter_id} = $href->{filter_id} // &listchoices({db=>$db, table=>'choose_filter', where=>{'thread'=>{'>=', $filter_dia}}, inserthandler=>\&filter_add, skipok=>1, autodefault=>0});
$data{teleconverter_id} = $href->{teleconverter_id} // &listchoices({db=>$db, keyword=>'teleconverter', table=>'choose_teleconverter_by_film', where=>{film_id=>$data{film_id}}, inserthandler=>\&teleconverter_add, skipok=>1, autodefault=>0});
$data{notes} = $href->{notes} // &prompt({prompt=>'Extra notes'});
$data{mount_adapter_id} = $href->{mount_adapter_id} // &listchoices({db=>$db, table=>'choose_mount_adapter_by_film', where=>{film_id=>$data{film_id}}, skipok=>1});
$data{focal_length} = $href->{focal_length} // &prompt({default=>&lookupval({db=>$db, col=>'min_focal_length', table=>'LENS', where=>{lens_id=>$data{'lens_id'}}}), prompt=>'Focal length', type=>'integer'});
$data{latitude} = $href->{latitude} // &prompt({prompt=>'Latitude', type=>'decimal'});
$data{longitude} = $href->{longitude} // &prompt({prompt=>'Longitude', type=>'decimal'});
$data{flash} = $href->{flash} // &prompt({default=>'no', prompt=>'Was flash used?', type=>'boolean'});
$data{metering_mode} = $href->{metering_mode} // &listchoices({db=>$db, cols=>['metering_mode_id as id', 'metering_mode as opt'], table=>'METERING_MODE'});
$data{exposure_program} = $href->{exposure_program} // &listchoices({db=>$db, cols=>['exposure_program_id as id', 'exposure_program as opt'], table=>'EXPOSURE_PROGRAM'});
$data{photographer_id} = $href->{photographer_id} // &listchoices({db=>$db, keyword=>'photographer', cols=>['person_id as id', 'name as opt'], table=>'PERSON', inserthandler=>\&person_add});
lib/App/PhotoDB/handlers.pm view on Meta::CPAN
$data{length} = &prompt({prompt=>'How long is this lens? (mm)', type=>'integer', default=>$$defaults{length}});
$data{diameter} = &prompt({prompt=>'How wide is this lens? (mm)', type=>'integer', default=>$$defaults{diameter}});
}
$data{max_aperture} = &prompt({prompt=>'What is the largest lens aperture?', type=>'decimal', default=>$$defaults{max_aperture}//&parselensmodel($data{model}, 'aperture')});
$data{min_aperture} = &prompt({prompt=>'What is the smallest lens aperture?', type=>'decimal', default=>$$defaults{min_aperture}});
$data{closest_focus} = &prompt({prompt=>'How close can the lens focus? (cm)', type=>'integer', default=>$$defaults{closest_focus}});
$data{elements} = &prompt({prompt=>'How many elements does the lens have?', type=>'integer', default=>$$defaults{elements}});
$data{groups} = &prompt({prompt=>'How many groups are these elements in?', type=>'integer', default=>$$defaults{groups}});
$data{aperture_blades} = &prompt({prompt=>'How many aperture blades does the lens have?', type=>'integer', default=>$$defaults{aperture_blades}});
$data{autofocus} = &prompt({prompt=>'Does this lens have autofocus?', type=>'boolean', default=>$$defaults{autofocus}});
$data{filter_thread} = &prompt({prompt=>'What is the diameter of the filter thread? (mm)', type=>'decimal', default=>$$defaults{filter_thread}});
$data{magnification} = &prompt({prompt=>'What is the maximum magnification possible with this lens?', type=>'decimal', default=>$$defaults{magnification}});
$data{url} = &prompt({prompt=>'Informational URL for this lens', default=>$$defaults{url}});
$data{introduced} = &prompt({prompt=>'When was this lens introduced?', type=>'integer', default=>$$defaults{introduced}});
$data{discontinued} = &prompt({prompt=>'When was this lens discontinued?', type=>'integer', default=>$$defaults{discontinued}});
$data{negative_size_id} = &listchoices({db=>$db, cols=>['negative_size_id as id', 'negative_size as opt'], table=>'NEGATIVE_SIZE', inserthandler=>\&negativesize_add, default=>$$defaults{negative_size_id}});
$data{notes} = &prompt({prompt=>'Notes', default=>$$defaults{notes}});
$data{coating} = &prompt({prompt=>'What coating does this lens have?', default=>$$defaults{coating}});
$data{hood} = &prompt({prompt=>'What is the model number of the suitable hood for this lens?', default=>$$defaults{hood}});
$data{exif_lenstype} = &prompt({prompt=>'EXIF lens type code', default=>$$defaults{exif_lenstype}});
$data{rectilinear} = &prompt({prompt=>'Is this a rectilinear lens?', type=>'boolean', default=>$$defaults{rectilinear}//'yes'});
lib/App/PhotoDB/handlers.pm view on Meta::CPAN
}
# Add a new (optical) filter to the database
sub filter_add {
my $href = shift;
my $db = $href->{db};
my %data;
$data{type} = $href->{type} // &prompt({prompt=>'What type of filter is this?'});
$data{manufacturer_id} = $href->{manufacturer_id} // &choose_manufacturer({db=>$db});
$data{attenuation} = $href->{attenuation} // &prompt({prompt=>'What attenutation (in stops) does this filter have?', type=>'decimal'});
$data{thread} = $href->{thread} // &prompt({prompt=>'What diameter mounting thread does this filter have?', type=>'decimal'});
$data{qty} = $href->{qty} // &prompt({default=>1, prompt=>'How many of these filters do you have?', type=>'integer'});
return &newrecord({db=>$db, data=>\%data, table=>'FILTER'});
}
# Add a new development process to the database
sub process_add {
my $href = shift;
my $db = $href->{db};
my %data;
$data{name} = $href->{name} // &prompt({prompt=>'What is the name of this film process?'});
$data{colour} = $href->{colour} // &prompt({prompt=>'Is this a colour process?', type=>'boolean'});
$data{positive} = $href->{positive} // &prompt({prompt=>'Is this a reversal process?', type=>'boolean'});
return &newrecord({db=>$db, data=>\%data, table=>'PROCESS'});
}
# Add a filter adapter to the database
sub filter_adapt {
my $href = shift;
my $db = $href->{db};
my %data;
$data{camera_thread} = $href->{camera_thread} // &prompt({prompt=>'What diameter thread faces the camera on this filter adapter?', type=>'decimal'});
$data{filter_thread} = $href->{filter_thread} // &prompt({prompt=>'What diameter thread faces the filter on this filter adapter?', type=>'decimal'});
return &newrecord({db=>$db, data=>\%data, table=>'FILTER_ADAPTER'});
}
# Add a new manufacturer to the database
sub manufacturer_add {
my $href = shift;
my $db = $href->{db};
my %data;
$data{manufacturer} = $href->{manufacturer} // &prompt({prompt=>'What is the name of the manufacturer?', required=>1});
$data{country} = $href->{country} // &prompt({prompt=>'What country is the manufacturer based in?'});
migrations/000-base-schema.sql view on Meta::CPAN
`manufacturer_id` int(11) DEFAULT NULL COMMENT 'ID of the manufacturer that introduced this flash protocol',
`name` varchar(45) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'Name of the flash protocol',
PRIMARY KEY (`flash_protocol_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Table to catalog different protocols used to communicate with flashes';
SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS `FILTER_ADAPTER`;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
CREATE TABLE `FILTER_ADAPTER` (
`filter_adapter_id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'Unique ID of filter adapter',
`camera_thread` decimal(3,1) DEFAULT NULL COMMENT 'Diameter of camera-facing screw thread in mm',
`filter_thread` decimal(3,1) DEFAULT NULL COMMENT 'Diameter of filter-facing screw thread in mm',
PRIMARY KEY (`filter_adapter_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Table to catalogue filter adapter rings';
SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS `FILTER`;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
CREATE TABLE `FILTER` (
`filter_id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'Unique filter ID',
`thread` decimal(4,1) DEFAULT NULL COMMENT 'Diameter of screw thread in mm',
`type` varchar(45) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'Filter type (e.g. Red, CPL, UV)',
`attenuation` decimal(2,1) DEFAULT NULL COMMENT 'Attenuation of this filter in decimal stops',
`qty` int(11) DEFAULT NULL COMMENT 'Quantity of these filters available',
`manufacturer_id` int(11) DEFAULT NULL COMMENT 'Denotes the manufacturer of the filter.',
PRIMARY KEY (`filter_id`),
KEY `fk_FILTER_1_idx` (`manufacturer_id`),
CONSTRAINT `fk_FILTER_1` FOREIGN KEY (`manufacturer_id`) REFERENCES `MANUFACTURER` (`manufacturer_id`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Table to catalog filters';
SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS `ARCHIVE`;
migrations/000-base-schema.sql view on Meta::CPAN
`closest_focus` int(11) DEFAULT NULL COMMENT 'The closest focus possible with this lens, in cm',
`max_aperture` decimal(4,1) DEFAULT NULL COMMENT 'Maximum (widest) aperture available on this lens (numerical part only, e.g. 2.8)',
`min_aperture` decimal(4,1) DEFAULT NULL COMMENT 'Minimum (narrowest) aperture available on this lens (numerical part only, e.g. 22)',
`elements` int(11) DEFAULT NULL COMMENT 'Number of optical lens elements',
`groups` int(11) DEFAULT NULL COMMENT 'Number of optical groups',
`weight` int(11) DEFAULT NULL COMMENT 'Weight of this lens, in grammes (g)',
`nominal_min_angle_diag` int(11) DEFAULT NULL COMMENT 'Nominal minimum diagonal field of view from manufacturer''s specs',
`nominal_max_angle_diag` int(11) DEFAULT NULL COMMENT 'Nominal maximum diagonal field of view from manufacturer''s specs',
`aperture_blades` int(11) DEFAULT NULL COMMENT 'Number of aperture blades',
`autofocus` tinyint(1) DEFAULT NULL COMMENT 'Whether this lens has autofocus capability',
`filter_thread` decimal(4,1) DEFAULT NULL COMMENT 'Diameter of lens filter thread, in mm',
`magnification` decimal(5,3) DEFAULT NULL COMMENT 'Maximum magnification ratio of the lens, expressed like 0.765',
`url` varchar(145) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'URL to more information about this lens',
`serial` varchar(45) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'Serial number of this lens',
`date_code` varchar(45) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'Date code of this lens, if different from the serial number',
`introduced` smallint(6) DEFAULT NULL COMMENT 'Year in which this lens model was introduced',
`discontinued` smallint(6) DEFAULT NULL COMMENT 'Year in which this lens model was discontinued',
`manufactured` smallint(6) DEFAULT NULL COMMENT 'Year in which this specific lens was manufactured',
`negative_size_id` int(11) DEFAULT NULL COMMENT 'ID of the negative size which this lens is designed for',
`acquired` date DEFAULT NULL COMMENT 'Date on which this lens was acquired',
`cost` decimal(6,2) DEFAULT NULL COMMENT 'Price paid for this lens in local currency units',
migrations/003-views.sql view on Meta::CPAN
CREATE ALGORITHM=UNDEFINED
VIEW `choose_film_to_load` AS select `FILM`.`film_id` AS `id`,concat(`MANUFACTURER`.`manufacturer`,' ',`FILMSTOCK`.`name`,' (',`FORMAT`.`format`,' format, ',if(`FILMSTOCK`.`colour`,'colour','B&W'),')') AS `opt` from (((`FILM` join `FILMSTOCK`) join `...
SET character_set_client = @saved_cs_client;
SET character_set_results = @saved_cs_results;
SET collation_connection = @saved_col_connection;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
CREATE TABLE `choose_filter` (
`id` tinyint NOT NULL,
`opt` tinyint NOT NULL,
`thread` tinyint NOT NULL
) ENGINE=MyISAM;
SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS `choose_filter`;
SET @saved_cs_client = @@character_set_client;
SET @saved_cs_results = @@character_set_results;
SET @saved_col_connection = @@collation_connection;
SET character_set_client = utf8;
SET character_set_results = utf8;
SET collation_connection = utf8_general_ci;
CREATE ALGORITHM=UNDEFINED
VIEW `choose_filter` AS select `FILTER`.`filter_id` AS `id`,concat(`FILTER`.`type`,' (',`FILTER`.`thread`,'mm)') AS `opt`,`FILTER`.`thread` AS `thread` from `FILTER` order by concat(`FILTER`.`type`,' (',`FILTER`.`thread`,'mm)');
SET character_set_client = @saved_cs_client;
SET character_set_results = @saved_cs_results;
SET collation_connection = @saved_col_connection;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
CREATE TABLE `choose_flash_protocol` (
`id` tinyint NOT NULL,
`opt` tinyint NOT NULL
) ENGINE=MyISAM;
SET character_set_client = @saved_cs_client;
migrations/003-views.sql view on Meta::CPAN
`Focal length` tinyint NOT NULL,
`Lens` tinyint NOT NULL,
`Closest focus` tinyint NOT NULL,
`Maximum aperture` tinyint NOT NULL,
`Minimum aperture` tinyint NOT NULL,
`Elements/Groups` tinyint NOT NULL,
`Weight` tinyint NOT NULL,
`Angle of view` tinyint NOT NULL,
`Aperture blades` tinyint NOT NULL,
`Autofocus` tinyint NOT NULL,
`Filter thread` tinyint NOT NULL,
`Maximum magnification` tinyint NOT NULL,
`URL` tinyint NOT NULL,
`Serial number` tinyint NOT NULL,
`Date code` tinyint NOT NULL,
`Manufactured between` tinyint NOT NULL,
`Year of manufacture` tinyint NOT NULL,
`Negative size` tinyint NOT NULL,
`Date acquired` tinyint NOT NULL,
`Cost` tinyint NOT NULL,
`Notes` tinyint NOT NULL,
migrations/003-views.sql view on Meta::CPAN
) ENGINE=MyISAM;
SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS `info_lens`;
SET @saved_cs_client = @@character_set_client;
SET @saved_cs_results = @@character_set_results;
SET @saved_col_connection = @@collation_connection;
SET character_set_client = utf8;
SET character_set_results = utf8;
SET collation_connection = utf8_general_ci;
CREATE ALGORITHM=UNDEFINED
VIEW `info_lens` AS select `LENS`.`lens_id` AS `Lens ID`,`MOUNT`.`mount` AS `Mount`,if(`LENS`.`zoom`,concat(`LENS`.`min_focal_length`,'-',`LENS`.`max_focal_length`,'mm'),concat(`LENS`.`min_focal_length`,'mm')) AS `Focal length`,concat(`MANUFACTURER`....
SET character_set_client = @saved_cs_client;
SET character_set_results = @saved_cs_results;
SET collation_connection = @saved_col_connection;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
CREATE TABLE `info_movie` (
`Movie ID` tinyint NOT NULL,
`Title` tinyint NOT NULL,
`Camera` tinyint NOT NULL,
`Lens` tinyint NOT NULL,
migrations/022-create-lens-model.sql view on Meta::CPAN
`closest_focus` int(11) DEFAULT NULL COMMENT 'The closest focus possible with this lens, in cm',
`max_aperture` decimal(4,1) DEFAULT NULL COMMENT 'Maximum (widest) aperture available on this lens (numerical part only, e.g. 2.8)',
`min_aperture` decimal(4,1) DEFAULT NULL COMMENT 'Minimum (narrowest) aperture available on this lens (numerical part only, e.g. 22)',
`elements` int(11) DEFAULT NULL COMMENT 'Number of optical lens elements',
`groups` int(11) DEFAULT NULL COMMENT 'Number of optical groups',
`weight` int(11) DEFAULT NULL COMMENT 'Weight of this lens, in grammes (g)',
`nominal_min_angle_diag` int(11) DEFAULT NULL COMMENT 'Nominal minimum diagonal field of view from manufacturer''s specs',
`nominal_max_angle_diag` int(11) DEFAULT NULL COMMENT 'Nominal maximum diagonal field of view from manufacturer''s specs',
`aperture_blades` int(11) DEFAULT NULL COMMENT 'Number of aperture blades',
`autofocus` tinyint(1) DEFAULT NULL COMMENT 'Whether this lens has autofocus capability',
`filter_thread` decimal(4,1) DEFAULT NULL COMMENT 'Diameter of lens filter thread, in mm',
`magnification` decimal(5,3) DEFAULT NULL COMMENT 'Maximum magnification ratio of the lens, expressed like 0.765',
`url` varchar(145) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'URL to more information about this lens',
`introduced` smallint(6) DEFAULT NULL COMMENT 'Year in which this lens model was introduced',
`discontinued` smallint(6) DEFAULT NULL COMMENT 'Year in which this lens model was discontinued',
`negative_size_id` int(11) DEFAULT NULL COMMENT 'ID of the negative size which this lens is designed for',
`fixed_mount` tinyint(1) DEFAULT NULL COMMENT 'Whether this is a fixed lens (i.e. on a compact camera)',
`notes` text COLLATE utf8mb4_unicode_ci COMMENT 'Freeform notes field',
`coating` varchar(45) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'Notes about the lens coating type',
`hood` varchar(45) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'Model number of the compatible lens hood',
`exif_lenstype` varchar(45) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'EXIF LensID number, if this lens has one officially registered. See documentation at http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/',
migrations/023-copy-lens-models.sql view on Meta::CPAN
insert into LENSMODEL (lensmodel_id, mount_id, zoom, min_focal_length, max_focal_length, manufacturer_id, model, closest_focus, max_aperture, min_aperture, elements, groups, weight, nominal_min_angle_diag, nominal_max_angle_diag, aperture_blades, aut...
select
lens_id, mount_id, zoom, min_focal_length, max_focal_length, manufacturer_id, model, closest_focus, max_aperture, min_aperture, elements, groups, weight, nominal_min_angle_diag, nominal_max_angle_diag, aperture_blades, autofocus, filter_thread, magni...
from LENS;
migrations/026-lensmodel-views.sql view on Meta::CPAN
CONCAT(`LENSMODEL`.`weight`, 'g') AS `Weight`,
IF(`LENSMODEL`.`zoom`,
CONCAT(`LENSMODEL`.`nominal_max_angle_diag`,
'°-',
`LENSMODEL`.`nominal_min_angle_diag`,
'°'),
CONCAT(`LENSMODEL`.`nominal_max_angle_diag`,
'°')) AS `Angle of view`,
`LENSMODEL`.`aperture_blades` AS `Aperture blades`,
PRINTBOOL(`LENSMODEL`.`autofocus`) AS `Autofocus`,
CONCAT(`LENSMODEL`.`filter_thread`, 'mm') AS `Filter thread`,
CONCAT(`LENSMODEL`.`magnification`, 'Ã') AS `Maximum magnification`,
`LENSMODEL`.`url` AS `URL`,
`LENS`.`serial` AS `Serial number`,
`LENS`.`date_code` AS `Date code`,
CONCAT(IFNULL(`LENSMODEL`.`introduced`, '?'),
'-',
IFNULL(`LENSMODEL`.`discontinued`, '?')) AS `Manufactured between`,
`LENS`.`manufactured` AS `Year of manufacture`,
`NEGATIVE_SIZE`.`negative_size` AS `Negative size`,
`LENS`.`acquired` AS `Date acquired`,
migrations/028-drop-lens-cols.sql view on Meta::CPAN
DROP COLUMN `rectilinear`,
DROP COLUMN `exif_lenstype`,
DROP COLUMN `hood`,
DROP COLUMN `coating`,
DROP COLUMN `fixed_mount`,
DROP COLUMN `negative_size_id`,
DROP COLUMN `discontinued`,
DROP COLUMN `introduced`,
DROP COLUMN `url`,
DROP COLUMN `magnification`,
DROP COLUMN `filter_thread`,
DROP COLUMN `autofocus`,
DROP COLUMN `aperture_blades`,
DROP COLUMN `nominal_max_angle_diag`,
DROP COLUMN `nominal_min_angle_diag`,
DROP COLUMN `weight`,
DROP COLUMN `groups`,
DROP COLUMN `elements`,
DROP COLUMN `min_aperture`,
DROP COLUMN `max_aperture`,
DROP COLUMN `closest_focus`,
migrations/029-lensmodel-views.sql view on Meta::CPAN
CONCAT(`LENSMODEL`.`weight`, 'g') AS `Weight`,
IF(`LENSMODEL`.`zoom`,
CONCAT(`LENSMODEL`.`nominal_max_angle_diag`,
'°-',
`LENSMODEL`.`nominal_min_angle_diag`,
'°'),
CONCAT(`LENSMODEL`.`nominal_max_angle_diag`,
'°')) AS `Angle of view`,
`LENSMODEL`.`aperture_blades` AS `Aperture blades`,
PRINTBOOL(`LENSMODEL`.`autofocus`) AS `Autofocus`,
CONCAT(`LENSMODEL`.`filter_thread`, 'mm') AS `Filter thread`,
CONCAT(`LENSMODEL`.`magnification`, 'Ã') AS `Maximum magnification`,
`LENSMODEL`.`url` AS `URL`,
`LENS`.`serial` AS `Serial number`,
`LENS`.`date_code` AS `Date code`,
CONCAT(IFNULL(`LENSMODEL`.`introduced`, '?'),
'-',
IFNULL(`LENSMODEL`.`discontinued`, '?')) AS `Manufactured between`,
`LENS`.`manufactured` AS `Year of manufacture`,
`NEGATIVE_SIZE`.`negative_size` AS `Negative size`,
`LENS`.`acquired` AS `Date acquired`,
migrations/033-cameramodel-views.sql view on Meta::CPAN
CONCAT(`LENSMODEL`.`weight`, 'g') AS `Weight`,
IF(`LENSMODEL`.`zoom`,
CONCAT(`LENSMODEL`.`nominal_max_angle_diag`,
'°-',
`LENSMODEL`.`nominal_min_angle_diag`,
'°'),
CONCAT(`LENSMODEL`.`nominal_max_angle_diag`,
'°')) AS `Angle of view`,
`LENSMODEL`.`aperture_blades` AS `Aperture blades`,
PRINTBOOL(`LENSMODEL`.`autofocus`) AS `Autofocus`,
CONCAT(`LENSMODEL`.`filter_thread`, 'mm') AS `Filter thread`,
CONCAT(`LENSMODEL`.`magnification`, 'Ã') AS `Maximum magnification`,
`LENSMODEL`.`url` AS `URL`,
`LENS`.`serial` AS `Serial number`,
`LENS`.`date_code` AS `Date code`,
CONCAT(IFNULL(`LENSMODEL`.`introduced`, '?'),
'-',
IFNULL(`LENSMODEL`.`discontinued`, '?')) AS `Manufactured between`,
`LENS`.`manufactured` AS `Year of manufacture`,
`NEGATIVE_SIZE`.`negative_size` AS `Negative size`,
`LENS`.`acquired` AS `Date acquired`,
migrations/040-cameramodel-info.sql view on Meta::CPAN
CONCAT(`LENSMODEL`.`weight`, 'g') AS `Weight`,
IF(`LENSMODEL`.`zoom`,
CONCAT(`LENSMODEL`.`nominal_max_angle_diag`,
'°-',
`LENSMODEL`.`nominal_min_angle_diag`,
'°'),
CONCAT(`LENSMODEL`.`nominal_max_angle_diag`,
'°')) AS `Angle of view`,
`LENSMODEL`.`aperture_blades` AS `Aperture blades`,
PRINTBOOL(`LENSMODEL`.`autofocus`) AS `Autofocus`,
CONCAT(`LENSMODEL`.`filter_thread`, 'mm') AS `Filter thread`,
CONCAT(`LENSMODEL`.`magnification`, 'Ã') AS `Maximum magnification`,
`LENSMODEL`.`url` AS `URL`,
CONCAT(IFNULL(`LENSMODEL`.`introduced`, '?'),
'-',
IFNULL(`LENSMODEL`.`discontinued`, '?')) AS `Manufactured between`,
`NEGATIVE_SIZE`.`negative_size` AS `Negative size`,
`LENSMODEL`.`coating` AS `Coating`,
`LENSMODEL`.`hood` AS `Hood`,
`LENSMODEL`.`exif_lenstype` AS `EXIF LensType`,
PRINTBOOL(`LENSMODEL`.`rectilinear`) AS `Rectilinear`,