protected override DbTransaction BeginDbTransaction(IsolationLevel il)
        {
            if (state != ConnectionState.Open)
            {
                throw new InvalidOperationException("Invalid operation: The connection is closed");
            }

            SqliteTransaction t = new SqliteTransaction();

            t.SetConnection(this);
            SqliteCommand cmd = (SqliteCommand)this.CreateCommand();

            cmd.CommandText = "BEGIN";
            cmd.ExecuteNonQuery();
            return(t);
        }
		protected override DbTransaction BeginDbTransaction (IsolationLevel il)
		{
			if (state != ConnectionState.Open)
				throw new InvalidOperationException("Invalid operation: The connection is closed");
			
			SqliteTransaction t = new SqliteTransaction();
			t.SetConnection (this);
			SqliteCommand cmd = (SqliteCommand)this.CreateCommand();
			cmd.CommandText = "BEGIN";
			cmd.ExecuteNonQuery();
			return t;
		}