~ubuntu-branches/ubuntu/wily/sqlite3/wily

« back to all changes in this revision

Viewing changes to quickstart.html

  • Committer: Package Import Robot
  • Author(s): Laszlo Boszormenyi (GCS)
  • Date: 2012-06-13 21:43:48 UTC
  • mto: This revision was merged to the branch mainline in revision 23.
  • Revision ID: package-import@ubuntu.com-20120613214348-uy14uupdeq0hh04k
Tags: upstream-3.7.13/www
Import upstream version 3.7.13, component www

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
 
2
<html><head>
 
3
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
 
4
<title>SQLite In 5 Minutes Or Less</title>
 
5
<style type="text/css">
 
6
body {
 
7
    margin: auto;
 
8
    font-family: Verdana, sans-serif;
 
9
    padding: 8px 1%;
 
10
}
 
11
 
 
12
a { color: #044a64 }
 
13
a:visited { color: #734559 }
 
14
 
 
15
.logo { position:absolute; margin:3px; }
 
16
.tagline {
 
17
  float:right;
 
18
  text-align:right;
 
19
  font-style:italic;
 
20
  width:300px;
 
21
  margin:12px;
 
22
  margin-top:58px;
 
23
}
 
24
 
 
25
.toolbar {
 
26
  text-align: center;
 
27
  line-height: 1.6em;
 
28
  margin: 0;
 
29
  padding: 0px 8px;
 
30
}
 
31
.toolbar a { color: white; text-decoration: none; padding: 6px 12px; }
 
32
.toolbar a:visited { color: white; }
 
33
.toolbar a:hover { color: #044a64; background: white; }
 
34
 
 
35
.content    { margin: 5%; }
 
36
.content dt { font-weight:bold; }
 
37
.content dd { margin-bottom: 25px; margin-left:20%; }
 
38
.content ul { padding:0px; padding-left: 15px; margin:0px; }
 
39
 
 
40
/* rounded corners */
 
41
.se  { background: url(images/se.gif) 100% 100% no-repeat #044a64}
 
42
.sw  { background: url(images/sw.gif) 0% 100% no-repeat }
 
43
.ne  { background: url(images/ne.gif) 100% 0% no-repeat }
 
44
.nw  { background: url(images/nw.gif) 0% 0% no-repeat }
 
45
 
 
46
/* Things for "fancyformat" documents start here. */
 
47
.fancy img+p {font-style:italic}
 
48
.fancy .codeblock i { color: darkblue; }
 
49
.fancy h1,.fancy h2,.fancy h3,.fancy h4 {font-weight:normal;color:#044a64}
 
50
.fancy h2 { margin-left: 10px }
 
51
.fancy h3 { margin-left: 20px }
 
52
.fancy h4 { margin-left: 30px }
 
53
.fancy th {white-space:nowrap;text-align:left;border-bottom:solid 1px #444}
 
54
.fancy th, .fancy td {padding: 0.2em 1ex; vertical-align:top}
 
55
.fancy #toc a        { color: darkblue ; text-decoration: none }
 
56
.fancy .todo         { color: #AA3333 ; font-style : italic }
 
57
.fancy .todo:before  { content: 'TODO:' }
 
58
.fancy p.todo        { border: solid #AA3333 1px; padding: 1ex }
 
59
.fancy img { display:block; }
 
60
.fancy :link:hover, .fancy :visited:hover { background: wheat }
 
61
.fancy p,.fancy ul,.fancy ol { margin: 1em 5ex }
 
62
.fancy li p { margin: 1em 0 }
 
63
/* End of "fancyformat" specific rules. */
 
64
 
 
65
</style>
 
66
  
 
67
</head>
 
68
<body>
 
69
<div><!-- container div to satisfy validator -->
 
70
 
 
71
<a href="index.html">
 
72
<img class="logo" src="images/sqlite370_banner.gif" alt="SQLite Logo"
 
73
 border="0"></a>
 
74
<div><!-- IE hack to prevent disappearing logo--></div>
 
75
<div class="tagline">Small. Fast. Reliable.<br>Choose any three.</div>
 
76
 
 
77
<table width=100% style="clear:both"><tr><td>
 
78
  <div class="se"><div class="sw"><div class="ne"><div class="nw">
 
79
  <table width=100% style="padding:0;margin:0;cell-spacing:0"><tr>
 
80
  <td width=100%>
 
81
  <div class="toolbar">
 
82
    <a href="about.html">About</a>
 
83
    <a href="sitemap.html">Sitemap</a>
 
84
    <a href="docs.html">Documentation</a>
 
85
    <a href="download.html">Download</a>
 
86
    <a href="copyright.html">License</a>
 
87
    <a href="news.html">News</a>
 
88
    <a href="support.html">Support</a>
 
89
  </div>
 
90
<script>
 
91
  gMsg = "Search SQLite Docs..."
 
92
  function entersearch() {
 
93
    var q = document.getElementById("q");
 
94
    if( q.value == gMsg ) { q.value = "" }
 
95
    q.style.color = "black"
 
96
    q.style.fontStyle = "normal"
 
97
  }
 
98
  function leavesearch() {
 
99
    var q = document.getElementById("q");
 
100
    if( q.value == "" ) { 
 
101
      q.value = gMsg
 
102
      q.style.color = "#044a64"
 
103
      q.style.fontStyle = "italic"
 
104
    }
 
105
  }
 
106
</script>
 
107
<td>
 
108
    <div style="padding:0 1em 0px 0;white-space:nowrap">
 
109
    <form name=f method="GET" action="http://www.sqlite.org/search">
 
110
      <input id=q name=q type=text
 
111
       onfocus="entersearch()" onblur="leavesearch()" style="width:24ex;padding:1px 1ex; border:solid white 1px; font-size:0.9em ; font-style:italic;color:#044a64;" value="Search SQLite Docs...">
 
112
      <input type=submit value="Go" style="border:solid white 1px;background-color:#044a64;color:white;font-size:0.9em;padding:0 1ex">
 
113
    </form>
 
114
    </div>
 
115
  </table>
 
116
</div></div></div></div>
 
117
</td></tr></table>
 
118
<div class=startsearch></div>
 
119
  
 
120
 
 
121
 
 
122
 
 
123
<p>Here is what you do to start experimenting with SQLite without having
 
124
to do a lot of tedious reading and configuration:</p>
 
125
 
 
126
<h2>Download The Code</h2>
 
127
 
 
128
<ul>
 
129
<li><p>Get a copy of the prebuilt binaries for your machine, or get a copy
 
130
of the sources and compile them yourself.  Visit
 
131
the <a href="download.html">download</a> page for more information.</p></li>
 
132
</ul>
 
133
 
 
134
<h2>Create A New Database</h2>
 
135
 
 
136
<ul>
 
137
<li><p>At a shell or DOS prompt, enter: "<b>sqlite3 test.db</b>".  This will
 
138
create a new database named "test.db".  (You can use a different name if
 
139
you like.)</p></li>
 
140
<li><p>Enter SQL commands at the prompt to create and populate the
 
141
new database.</p></li>
 
142
<li><p>Additional documentation is available <a href="sqlite.html">here</a></li>
 
143
</ul>
 
144
 
 
145
<h2>Write Programs That Use SQLite</h2>
 
146
 
 
147
<ul>
 
148
<li><p>Below is a simple 
 
149
<a href="http://www.tcl.tk">TCL program</a> that demonstrates how to use
 
150
the TCL interface to SQLite.  The program executes the SQL statements
 
151
given as the second argument on the database defined by the first
 
152
argument.  The commands to watch for are the <b>sqlite3</b> command
 
153
on line 7 which opens an SQLite database and creates
 
154
a new TCL command named "<b>db</b>" to access that database, the
 
155
invocation of the <b>db</b> command on line 8 to execute
 
156
SQL commands against the database, and the closing of the database connection
 
157
on the last line of the script.</p>
 
158
 
 
159
<blockquote><pre>
 
160
01  #!/usr/bin/tclsh
 
161
02  if {$argc!=2} {
 
162
03    puts stderr "Usage: %s DATABASE SQL-STATEMENT"
 
163
04    exit 1
 
164
05  }
 
165
06  load /usr/lib/tclsqlite3.so Sqlite3
 
166
07  <b>sqlite3</b> db &#91;lindex $argv 0]
 
167
08  <b>db</b> eval &#91;lindex $argv 1] x {
 
168
09    foreach v $x(*) {
 
169
10      puts "$v = $x($v)"
 
170
11    }
 
171
12    puts ""
 
172
13  }
 
173
14  <b>db</b> close
 
174
</pre></blockquote>
 
175
</li>
 
176
 
 
177
<li><p>Below is a simple C program that demonstrates how to use
 
178
the <a href="c3ref/intro.html">C/C++ interface</a> to SQLite.  The name of a database is given by
 
179
the first argument and the second argument is one or more SQL statements
 
180
to execute against the database.  The function calls to pay attention
 
181
to here are the call to <a href="c3ref/open.html">sqlite3_open()</a> on line 22 which opens
 
182
the database, <a href="c3ref/exec.html">sqlite3_exec()</a> on line 28 that executes SQL
 
183
commands against the database, and <a href="c3ref/close.html">sqlite3_close()</a> on line 33
 
184
that closes the database connection.</p>
 
185
 
 
186
<p>See also the <a href="cintro.html">Introduction To The SQLite C/C++ Interface</a> for
 
187
an introductory overview and roadmap to the dozens of SQLite interface
 
188
functions.</p>
 
189
 
 
190
<blockquote><pre>
 
191
01  #include &lt;stdio.h&gt;
 
192
02  #include &lt;sqlite3.h&gt;
 
193
03  
 
194
04  static int callback(void *NotUsed, int argc, char **argv, char **azColName){
 
195
05    int i;
 
196
06    for(i=0; i&lt;argc; i++){
 
197
07      printf("%s = %s\n", azColName&#91;i], argv&#91;i] ? argv&#91;i] : "NULL");
 
198
08    }
 
199
09    printf("\n");
 
200
10    return 0;
 
201
11  }
 
202
12  
 
203
13  int main(int argc, char **argv){
 
204
14    <b>sqlite3</b> *db;
 
205
15    char *zErrMsg = 0;
 
206
16    int rc;
 
207
17  
 
208
18    if( argc!=3 ){
 
209
19      fprintf(stderr, "Usage: %s DATABASE SQL-STATEMENT\n", argv&#91;0]);
 
210
20      return(1);
 
211
21    }
 
212
22    rc = <b>sqlite3_open</b>(argv&#91;1], &db);
 
213
23    if( rc ){
 
214
24      fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(db));
 
215
25      <b>sqlite3_close</b>(db);
 
216
26      return(1);
 
217
27    }
 
218
28    rc = <b>sqlite3_exec</b>(db, argv&#91;2], callback, 0, &zErrMsg);
 
219
29    if( rc!=SQLITE_OK ){
 
220
30      fprintf(stderr, "SQL error: %s\n", zErrMsg);
 
221
31      <b>sqlite3_free</b>(zErrMsg);
 
222
32    }
 
223
33    <b>sqlite3_close</b>(db);
 
224
34    return 0;
 
225
35  }
 
226
</pre></blockquote>
 
227
</li>
 
228
</ul>
 
229