<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.shoutirc.com/index.php?action=history&amp;feed=atom&amp;title=RadioBot_DB</id>
	<title>RadioBot DB - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.shoutirc.com/index.php?action=history&amp;feed=atom&amp;title=RadioBot_DB"/>
	<link rel="alternate" type="text/html" href="https://wiki.shoutirc.com/index.php?title=RadioBot_DB&amp;action=history"/>
	<updated>2026-04-28T21:22:57Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://wiki.shoutirc.com/index.php?title=RadioBot_DB&amp;diff=4426&amp;oldid=prev</id>
		<title>Indy: Text replacement - &quot;IRCBot&quot; to &quot;RadioBot&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.shoutirc.com/index.php?title=RadioBot_DB&amp;diff=4426&amp;oldid=prev"/>
		<updated>2013-10-25T14:13:42Z</updated>

		<summary type="html">&lt;p&gt;Text replacement - &amp;quot;IRCBot&amp;quot; to &amp;quot;RadioBot&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;RadioBot now uses a [http://www.sqlite.org SQLite] databsse (ircbot.db) for storage of certain items and provides an interface for plugins to use it as well.&lt;br /&gt;
&lt;br /&gt;
The API exposed by RadioBot to plugins is contained in API_db.&lt;br /&gt;
&lt;br /&gt;
The Query function is a wrapper for sqlite3_exec, as GetTable is for sqlite3_get_table, and you should expect them to work the same. The only differences between the real functions and the wrapper provided are:&lt;br /&gt;
&lt;br /&gt;
* The wrappers use a mutex to make them exclusive so they are thread-safe for you to use. The only issue you should worry about is making sure not to try to call a function from within a Query() callback (which I don&amp;#039;t know if SQLite allows anyway, but probably isn&amp;#039;t a good idea in the first place).&lt;br /&gt;
* The wrappers will try each query up to 5 times as long as SQLITE_BUSY is returned, so you don&amp;#039;t have to implement similar functionality.&lt;br /&gt;
* After opening the database, RadioBot calls sqlite3_busy_timeout() with a value of 5000ms, you should not alter this or set another busy timeout function&lt;br /&gt;
&lt;br /&gt;
{{ircbot programming}}&lt;/div&gt;</summary>
		<author><name>Indy</name></author>
	</entry>
</feed>