<feed xmlns='http://www.w3.org/2005/Atom'>
<title>PROJ/data/sql/proj_db_table_defs.sql, branch backport-3125-to-9.0</title>
<subtitle>Forked from https://github.com/OSGeo/PROJ</subtitle>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/'/>
<entry>
<title>Database: update to EPSG 10.044</title>
<updated>2022-01-04T21:39:59+00:00</updated>
<author>
<name>Even Rouault</name>
<email>even.rouault@spatialys.com</email>
</author>
<published>2022-01-04T14:44:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=c3cac01a9779a523ddf553df9c4ca2dc76ba2f95'/>
<id>c3cac01a9779a523ddf553df9c4ca2dc76ba2f95</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add a mapping for versioned authorities, so that one can use IAU:xxxx or IAU_2015:xxxx transparently</title>
<updated>2021-09-28T12:47:09+00:00</updated>
<author>
<name>Even Rouault</name>
<email>even.rouault@spatialys.com</email>
</author>
<published>2021-09-28T12:47:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=e6e6e4ca345e774910afa5bbe485c3d9f7851cd4'/>
<id>e6e6e4ca345e774910afa5bbe485c3d9f7851cd4</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Database: add check for Orthographic conversion</title>
<updated>2021-09-28T12:47:08+00:00</updated>
<author>
<name>Even Rouault</name>
<email>even.rouault@spatialys.com</email>
</author>
<published>2021-09-28T12:47:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=bc30adc7d84aa07a551391f722c1ab7bcaae60ee'/>
<id>bc30adc7d84aa07a551391f722c1ab7bcaae60ee</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Database: add some hand made entries early</title>
<updated>2021-09-28T12:47:06+00:00</updated>
<author>
<name>Even Rouault</name>
<email>even.rouault@spatialys.com</email>
</author>
<published>2021-09-28T12:47:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=23c44387d104b1d5c16c9f583d975ea4d895b534'/>
<id>23c44387d104b1d5c16c9f583d975ea4d895b534</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Database: add a 'anchor' field to geodetic_datum and vertical_datum tables</title>
<updated>2021-09-17T17:20:54+00:00</updated>
<author>
<name>Even Rouault</name>
<email>even.rouault@spatialys.com</email>
</author>
<published>2021-09-17T17:19:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=2db54cc09a6587eba855aebac05baa1ae5130c2c'/>
<id>2db54cc09a6587eba855aebac05baa1ae5130c2c</id>
<content type='text'>
Update database layout version number to 1.2 consequently

This new capability will be used by IAU planetary CRS (refs #2601)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Update database layout version number to 1.2 consequently

This new capability will be used by IAU planetary CRS (refs #2601)
</pre>
</div>
</content>
</entry>
<entry>
<title>Database: decrease DB size by using WITHOUT ROWID tables</title>
<updated>2021-05-24T12:40:37+00:00</updated>
<author>
<name>Even Rouault</name>
<email>even.rouault@spatialys.com</email>
</author>
<published>2021-05-24T12:40:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=ee04c2725f0f8b163ae242935a2ca21dbcc17620'/>
<id>ee04c2725f0f8b163ae242935a2ca21dbcc17620</id>
<content type='text'>
None of our tables are indexed by a INTEGER PRIMARY KEY, but most of
them are by a (auth_name, code) primary key. Consequently they can
benefit from being created as WITHOUT ROWID tables
(https://sqlite.org/withoutrowid.html), which avoids an index to be
created on the rowid we don't use. WITHOUT ROWID is a feature added in
SQLite 3.8.2, so as our baseline is 3.11, we can use it.

This decreases the DB size from 7,749,632 to 7,229,440 bytes, without
any measurable consequence on performance.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
None of our tables are indexed by a INTEGER PRIMARY KEY, but most of
them are by a (auth_name, code) primary key. Consequently they can
benefit from being created as WITHOUT ROWID tables
(https://sqlite.org/withoutrowid.html), which avoids an index to be
created on the rowid we don't use. WITHOUT ROWID is a feature added in
SQLite 3.8.2, so as our baseline is 3.11, we can use it.

This decreases the DB size from 7,749,632 to 7,229,440 bytes, without
any measurable consequence on performance.
</pre>
</div>
</content>
</entry>
<entry>
<title>Database: update to EPSG v10.019</title>
<updated>2021-04-22T23:07:04+00:00</updated>
<author>
<name>Even Rouault</name>
<email>even.rouault@spatialys.com</email>
</author>
<published>2021-04-22T20:51:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=f6abb7d75c647013dd83a82361b96c202e615d90'/>
<id>f6abb7d75c647013dd83a82361b96c202e615d90</id>
<content type='text'>
Non-trivial updates:
- some vertical CRS are now encoded as DerivedVerticalCRS. e.g EPSG:8228
  "NAVD88 height (ft)", with base EPSG:5703 "NAVD88 height". As we don't
  have support in our PROJ db model for DerivedVerticalCRS, modify the
  import script to 'resolve' the derivation up to the original datum.
- Method EPSG:1069 'Change of Vertical Unit' is no longer used. It is
  replaced by a generic-purpose EPSG:1104 method that doesn't take any
  conversion factor. And generic conversions EPSG:7812 and EPSG:7813 are
  now used in concatenated operations, which require code changes as
  well.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Non-trivial updates:
- some vertical CRS are now encoded as DerivedVerticalCRS. e.g EPSG:8228
  "NAVD88 height (ft)", with base EPSG:5703 "NAVD88 height". As we don't
  have support in our PROJ db model for DerivedVerticalCRS, modify the
  import script to 'resolve' the derivation up to the original datum.
- Method EPSG:1069 'Change of Vertical Unit' is no longer used. It is
  replaced by a generic-purpose EPSG:1104 method that doesn't take any
  conversion factor. And generic conversions EPSG:7812 and EPSG:7813 are
  now used in concatenated operations, which require code changes as
  well.
</pre>
</div>
</content>
</entry>
<entry>
<title>Database: nullify auth_name, code of usage table</title>
<updated>2021-04-06T21:30:19+00:00</updated>
<author>
<name>Even Rouault</name>
<email>even.rouault@spatialys.com</email>
</author>
<published>2021-04-04T20:44:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=950ce787b26b3b3afd0ff76151fdf72d1381b7a1'/>
<id>950ce787b26b3b3afd0ff76151fdf72d1381b7a1</id>
<content type='text'>
We never select by those columns, so don't set them. Reduce from 8.4 to
7.9 MB.

Upgrade the minor version of the database layout. (that database can
still be read by PROJ 8.0)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We never select by those columns, so don't set them. Reduce from 8.4 to
7.9 MB.

Upgrade the minor version of the database layout. (that database can
still be read by PROJ 8.0)
</pre>
</div>
</content>
</entry>
<entry>
<title>Database: decrease db size by using a INTEGER_OR_TEXT data type on codes</title>
<updated>2021-04-04T19:51:10+00:00</updated>
<author>
<name>Even Rouault</name>
<email>even.rouault@spatialys.com</email>
</author>
<published>2021-04-04T19:45:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=f85b0723136eed9891569b988607f07ef185d504'/>
<id>f85b0723136eed9891569b988607f07ef185d504</id>
<content type='text'>
Most codes (especially *all* in EPSG) are integers. As integers are
stored as variable-length in the db, it is preferable to store them as
such when possible.

So use a special INTEGER_OR_TEXT data type. This is a
"non-standard" type declaration, but this is perfectly legal as SQLite is
loosely typed.

As this declaration contains the string INT, it is assigned INTEGER affinity.
Which means that values provided either as text (that contains integer value)
or integer will be stored as integers, whereas text values will be stored as
text. See paragraph 3 and 3.1 of https://www.sqlite.org/datatype3.html.
The "INTEGER_OR_TEXT" name is a hint for the user, and software like
GDAL (&gt;= 3.3) to expose the column as string...

The effect of using this rather than TEXT is making the DB size go from
9 MB to 8.4.

There is no need to change the DATABASE.LAYOUT version numbering as this
is completely forward and backward compatible.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Most codes (especially *all* in EPSG) are integers. As integers are
stored as variable-length in the db, it is preferable to store them as
such when possible.

So use a special INTEGER_OR_TEXT data type. This is a
"non-standard" type declaration, but this is perfectly legal as SQLite is
loosely typed.

As this declaration contains the string INT, it is assigned INTEGER affinity.
Which means that values provided either as text (that contains integer value)
or integer will be stored as integers, whereas text values will be stored as
text. See paragraph 3 and 3.1 of https://www.sqlite.org/datatype3.html.
The "INTEGER_OR_TEXT" name is a hint for the user, and software like
GDAL (&gt;= 3.3) to expose the column as string...

The effect of using this rather than TEXT is making the DB size go from
9 MB to 8.4.

There is no need to change the DATABASE.LAYOUT version numbering as this
is completely forward and backward compatible.
</pre>
</div>
</content>
</entry>
<entry>
<title>Database: add missing column type specifir for method_name in grid_transformation and other_transformation. No practical impact</title>
<updated>2021-04-04T19:07:36+00:00</updated>
<author>
<name>Even Rouault</name>
<email>even.rouault@spatialys.com</email>
</author>
<published>2021-04-04T19:07:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.otimperi.dev/PROJ/commit/?id=5c9e2e9d4322271930385fe76195ef4d16cf5a40'/>
<id>5c9e2e9d4322271930385fe76195ef4d16cf5a40</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
