<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://wiki.andreas-duffner.de/index.php?action=history&amp;feed=atom&amp;title=Firebird</id>
	<title>Firebird - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.andreas-duffner.de/index.php?action=history&amp;feed=atom&amp;title=Firebird"/>
	<link rel="alternate" type="text/html" href="http://wiki.andreas-duffner.de/index.php?title=Firebird&amp;action=history"/>
	<updated>2026-04-07T18:49:17Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.17</generator>
	<entry>
		<id>http://wiki.andreas-duffner.de/index.php?title=Firebird&amp;diff=175&amp;oldid=prev</id>
		<title>Andreas: Created page with &quot;* [http://www.firebirdsql.org Firbird] * [http://stackoverflow.com/questions/8853845/how-to-connect-firebird-db-with-qt Qt+Firebird]  == Users == Passwords are case sensitive,...&quot;</title>
		<link rel="alternate" type="text/html" href="http://wiki.andreas-duffner.de/index.php?title=Firebird&amp;diff=175&amp;oldid=prev"/>
		<updated>2016-02-16T11:55:18Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;* [http://www.firebirdsql.org Firbird] * [http://stackoverflow.com/questions/8853845/how-to-connect-firebird-db-with-qt Qt+Firebird]  == Users == Passwords are case sensitive,...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;* [http://www.firebirdsql.org Firbird]&lt;br /&gt;
* [http://stackoverflow.com/questions/8853845/how-to-connect-firebird-db-with-qt Qt+Firebird]&lt;br /&gt;
&lt;br /&gt;
== Users ==&lt;br /&gt;
Passwords are case sensitive, user names are not case sensitive.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
default user: sysdba / masterkey&lt;br /&gt;
&lt;br /&gt;
=== change the password for sysdba ===&lt;br /&gt;
 gsec -user sysdba -password masterkey&lt;br /&gt;
 modify SYSDBA -pw &amp;lt;new_password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== add user ===&lt;br /&gt;
 gsec -user sysdba -pass &amp;lt;password&amp;gt; -add misterx -pw hispw&lt;br /&gt;
&lt;br /&gt;
== Connecting ==&lt;br /&gt;
 isql -user sysdba -password &amp;lt;password&amp;gt;&lt;br /&gt;
 connect &amp;lt;path-to-db-file&amp;gt;;&lt;br /&gt;
 help;&lt;br /&gt;
&lt;br /&gt;
== database ==&lt;br /&gt;
* exit = commit&lt;br /&gt;
* quit = rollback&lt;br /&gt;
&lt;br /&gt;
=== create a database ===&lt;br /&gt;
 isql -u &amp;lt;user&amp;gt; -p &amp;lt;password&amp;gt;&lt;br /&gt;
 create database &amp;lt;name&amp;gt;;&lt;br /&gt;
 exit;&lt;br /&gt;
&lt;br /&gt;
 isql -u misterx -p hispw&lt;br /&gt;
 create database &amp;#039;test01&amp;#039;;&lt;br /&gt;
 exit;&lt;br /&gt;
 &lt;br /&gt;
=== create a table ===&lt;br /&gt;
 isql -u &amp;lt;user&amp;gt; -p &amp;lt;password&amp;gt; &amp;lt;filename&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
isql -u misterx -p hispw test01&lt;br /&gt;
create table tas_tasks&lt;br /&gt;
(&lt;br /&gt;
    tas_id integer not null,&lt;br /&gt;
    tas_text varchar(50) not null,&lt;br /&gt;
    tas_creation timestamp not null&lt;br /&gt;
);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== make the integer field of your table an autoincrement field ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE GENERATOR gen_tas_id;&lt;br /&gt;
SET GENERATOR gen_tas_id TO 0;&lt;br /&gt;
&lt;br /&gt;
set term !! ;&lt;br /&gt;
CREATE TRIGGER T_tas_auto FOR tas_tasks&lt;br /&gt;
ACTIVE BEFORE INSERT POSITION 0&lt;br /&gt;
AS&lt;br /&gt;
BEGIN&lt;br /&gt;
if (NEW.tas_id is NULL) then NEW.tas_id = GEN_ID(gen_tas_id, 1);&lt;br /&gt;
END!!&lt;br /&gt;
set term ; !!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
to test it, call at least twice:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
insert into tas_tasks&lt;br /&gt;
(tas_text, tas_creation)&lt;br /&gt;
values&lt;br /&gt;
(&amp;#039;test 1&amp;#039;, current_timestamp);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
then&lt;br /&gt;
 select * from tas_tasks;&lt;br /&gt;
&lt;br /&gt;
=== populate the timestamp at row insertion and/or update ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SET TERM ^ ;&lt;br /&gt;
CREATE TRIGGER T_tas_create FOR tas_tasks&lt;br /&gt;
ACTIVE BEFORE INSERT -- OR UPDATE POSITION 1&lt;br /&gt;
AS&lt;br /&gt;
BEGIN&lt;br /&gt;
new.TAS_CREATION = current_timestamp;&lt;br /&gt;
END^&lt;br /&gt;
SET TERM ; ^ &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
call at least twice:&lt;br /&gt;
 insert into tas_tasks (tas_text) values (&amp;#039;test 2&amp;#039;);&lt;br /&gt;
&lt;br /&gt;
then again&lt;br /&gt;
 select * from tas_tasks;&lt;/div&gt;</summary>
		<author><name>Andreas</name></author>
	</entry>
</feed>