12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <html>
- <head>
- <title>GRASS-SQLite driver</title>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
- <link rel="stylesheet" href="grassdocs.css" type="text/css">
- </head>
- <body bgcolor="white">
- <img src="grass_logo.png" alt="GRASS logo"><hr align=center size=6 noshade>
- <!-- meta page description: SQLite driver -->
- <h1>SQLite driver in GRASS</h1>
- <h2>Creating a SQLite database</h2>
- The SQLite driver is the default DBMI backend.
- GRASS is automatically creating the SQLite database if it is not yet
- existing when the first table is created in the SQLite database. It
- is sufficient to define the connection (see next step).
- <h2>Connecting GRASS to SQLite</h2>
- The database name 'sqlite.db' is at user's choice.
- Also the file storage location can be freely chosen. If the database
- does not exist, it will be automatically created when database content
- is created:
- <div class="code"><pre>
- # example for storing DB in mapset directory (keep single quotes):
- db.connect driver=sqlite database='$GISDBASE/$LOCATION_NAME/$MAPSET/sqlite.db'
- db.connect -p
- </pre></div>
- <h2>Supported SQL commands</h2>
- All SQL commands supported by SQLite (for limitations, see
- SQLite help page:
- <a href="http://www.sqlite.org/lang.html">SQL As Understood By SQLite</a> and
- <a href="http://www.sqlite.org/omitted.html">Unsupported SQL</a>).
- <h2>Operators available in conditions</h2>
- All SQL operators supported by SQLite.
- <h2>Browsing table data in DB</h2>
- A convenient SQLite front-end is <a href="http://sqlitebrowser.sourceforge.net/">sqlitebrowser</a>.
- To open a DB file stored within the current mapset,
- the following way is suggested (corresponds to above database connection):
- <div class="code"><pre>
- eval `g.gisenv`
- # use double quotes:
- sqlitebrowser "$GISDBASE/$LOCATION_NAME/$MAPSET"/sqlite.db
- </pre></div>
- <!-- doesnt work yet, why?:
- ah, pending patch: http://www.sqlite.org/cvstrac/tktview?tn=1476
- <h2>Adding an unique ID column</h2>
- Import vector module require an unique ID column which can
- be generated as follows for a SQLite table:
- <div class="code"><pre>
- echo "
- ALTER TABLE mytable ADD ID integer;
- CREATE SEQUENCE mytable_seq;
- UPDATE mytabe SET ID = nextval('mytable_seq');
- DROP SEQUENCE mytable_seq;
- " | db.execute
- </pre></div>
- -->
- <h2>SEE ALSO</h2>
- <em>
- <a href="db.connect.html">db.connect</a>,
- <a href="db.execute.html">db.execute</a>,
- <a href="db.select.html">db.select</a>
- <br><br>
- <a href="sql.html">SQL support in GRASS GIS</a>
- <br><br>
- <a href="http://www.sqlite.org">SQLite web site</a>,
- <a href="http://www.sqlite.org/quickstart.html">SQLite manual</a>,
- <a href="http://www.sqlite.org/cvstrac/wiki?p=ManagementTools">sqlite - Management Tools</a>
- </em>
- <p>
- <i>Last changed: $Date$</i>
- <hr>
- <br><a href=index.html>Help Index</a>
- </body>
- </html>
|