💾 Archived View for godocs.io › github.com › nakagami › firebirdsql captured on 2023-11-04 at 11:30:37. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2023-09-28)
-=-=-=-=-=-=-
import "github.com/nakagami/firebirdsql"
Package firebird provides database/sql driver for Firebird RDBMS.
const ( ISC_TIME_SECONDS_PRECISION = 10000 // Protocol Version PROTOCOL_VERSION13 = 13 PROTOCOL_VERSION16 = 16 CNCT_user = 1 CNCT_passwd = 2 CNCT_host = 4 CNCT_group = 5 CNCT_user_verification = 6 CNCT_specific_data = 7 CNCT_plugin_name = 8 CNCT_login = 9 CNCT_plugin_list = 10 CNCT_client_crypt = 11 )
const ( ISOLATION_LEVEL_READ_COMMITED_LEGACY = iota ISOLATION_LEVEL_READ_COMMITED ISOLATION_LEVEL_REPEATABLE_READ ISOLATION_LEVEL_SERIALIZABLE ISOLATION_LEVEL_READ_COMMITED_RO )
const ( SRP_KEY_SIZE = 128 SRP_SALT_SIZE = 32 DEBUG_PRIVATE_KEY = "60975527035CF2AD1989806F0407210BC81EDC04E2762A56AFD529DDDA2D4393" DEBUG_SRP = false )
const ( PLUGIN_LIST = "Srp256,Srp,Legacy_Auth" BUFFER_LEN = 1024 MAX_CHAR_LENGTH = 32767 BLOB_SEGMENT_SIZE = 32000 )
const ( SQL_TYPE_TEXT = 452 SQL_TYPE_VARYING = 448 SQL_TYPE_SHORT = 500 SQL_TYPE_LONG = 496 SQL_TYPE_FLOAT = 482 SQL_TYPE_DOUBLE = 480 SQL_TYPE_D_FLOAT = 530 SQL_TYPE_TIMESTAMP = 510 SQL_TYPE_BLOB = 520 SQL_TYPE_ARRAY = 540 SQL_TYPE_QUAD = 550 SQL_TYPE_TIME = 560 SQL_TYPE_DATE = 570 SQL_TYPE_INT64 = 580 SQL_TYPE_INT128 = 32752 SQL_TYPE_TIMESTAMP_TZ = 32754 SQL_TYPE_TIME_TZ = 32756 SQL_TYPE_DEC_FIXED = 32758 SQL_TYPE_DEC64 = 32760 SQL_TYPE_DEC128 = 32762 SQL_TYPE_BOOLEAN = 32764 SQL_TYPE_NULL = 32766 )
const ( EPB_version1 = 1 )
Event
var ( ErrAlreadySubscribe = errors.New("already subscribe") ErrFbEventClosed = errors.New("fbevent already closed") )
Errors
var ( ErrEventAlreadyRunning = errors.New("events are already running") ErrEventNeed = errors.New("at least one event is needed") ErrWrongLengthEvent = errors.New("length name events are longer than 255") ErrEventBufferLarge = errors.New("whole events buffer is bigger than 65535") )
var ErrDsnUserUnknown = errors.New("User unknown")
var ErrOpSqlResponse = errors.New("Error op_sql_response")
func NewErrOpResonse(opRCode int32) error
Error interface implementation
type ErrOpResponse struct { // contains filtered or unexported fields }
ErrOpResponse operation request error
func (e *ErrOpResponse) Error() string
type Event struct { Name string Count int ID int32 RemoteID int32 }
Event stores event data: the amount since the last time the event was received and id
type EventHandler func(e Event)
EventHandler callback function type
type FbEvent struct { // contains filtered or unexported fields }
FbEvent allows you to subscribe to events, also stores subscribers. It is possible to send events to the database.
func NewFBEvent(dsns string) (*FbEvent, error)
NewFBEvent returns FbEvent for event subscription
func (e *FbEvent) Close() error
Close closes FbEvent and all subscribers
func (e *FbEvent) Count() int
Count returns the number of subscribers
func (e *FbEvent) IsClosed() bool
IsClosed returns a close flag
func (e *FbEvent) PostEvent(name string) error
PostEvent posts an event to the database
func (e *FbEvent) Subscribe(events []string, cb EventHandler) (*Subscription, error)
Subscribe subscribe to events using the callback function
func (e *FbEvent) SubscribeChan(events []string, chEvent chan Event) (*Subscription, error)
SubscribeChan subscribe to events using the channel
func (e *FbEvent) Subscribers() []*Subscription
Subscribers returns slice of all subscribers
type Subscription struct { // contains filtered or unexported fields }
func (s *Subscription) Close() error
func (s *Subscription) IsClose() bool
func (s *Subscription) NotifyClose(receiver chan error)
func (s *Subscription) Unsubscribe() error