Documentation Source Text

Check-in [0d0a959a73]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:More virtual table documentation tweaks.
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1:0d0a959a73ff9318347dfee347124886379ed6d4
User & Date: drh 2009-04-14 18:20:16
Context
2009-04-15
12:56
Fix typos in the vtab.html document. check-in: e9e994caf8 user: drh tags: trunk
2009-04-14
18:20
More virtual table documentation tweaks. check-in: 0d0a959a73 user: drh tags: trunk
18:15
Update to the virtual table documentation - in particular the documentation on the xUpdate method. check-in: feccb40483 user: drh tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to pages/vtab.in.

871
872
873
874
875
876
877




878
879
880
881
882
883
884
885
  );
</pre></blockquote>

<p>All changes to a virtual table are made using the xUpdate method.
This one method can be used to insert, delete, or update.

<p>The argc parameter specifies the number of entries in the argv array. 




Every argv entry will have a non-NULL value in C but may contain the 
SQL value NULL.  In other words, it is always true that
<tt>argv&#91;i&#93;!=0</tt> for <b>i</b> between 0 and <tt>argc-1</tt>.
However, it might be the case that
<tt>sqlite3_value_type(argv&#91;i&#93;)==SQLITE_NULL</tt>.

<p>The argv[0] parameter is the [rowid] of a row in the virtual table 
to be deleted. If argv[0] is an SQL NULL, then no deletion occurs.







>
>
>
>
|







871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
  );
</pre></blockquote>

<p>All changes to a virtual table are made using the xUpdate method.
This one method can be used to insert, delete, or update.

<p>The argc parameter specifies the number of entries in the argv array. 
The value of argc will be 1 for a pure delete operation or N+2 for an insert
or replace or update where N is the number of columns in the table.  
In the previous sentence, N includes any hidden columns.

<p>Every argv entry will have a non-NULL value in C but may contain the 
SQL value NULL.  In other words, it is always true that
<tt>argv&#91;i&#93;!=0</tt> for <b>i</b> between 0 and <tt>argc-1</tt>.
However, it might be the case that
<tt>sqlite3_value_type(argv&#91;i&#93;)==SQLITE_NULL</tt>.

<p>The argv[0] parameter is the [rowid] of a row in the virtual table 
to be deleted. If argv[0] is an SQL NULL, then no deletion occurs.