Documentation ¶
Index ¶
- func BuildJDBC(user, password, connStr string, options map[string]string) string
- func BuildUrl(server string, port int, service, user, password string, ...) string
- func NewWallet(filePath string) (*wallet, error)
- func SetNTSAuth(newNTSManager advanced_nego.NTSAuthInterface)
- func TZBytes() []byte
- type AuthObject
- type AuthType
- type BFile
- func (file *BFile) Close() error
- func (file *BFile) Exists() (bool, error)
- func (file *BFile) GetLength() (int64, error)
- func (file *BFile) IsOpen() bool
- func (file *BFile) Open() error
- func (file *BFile) Read() ([]byte, error)
- func (file *BFile) ReadBytesFromPos(pos, count int64) ([]byte, error)
- func (file *BFile) ReadFromPos(pos int64) ([]byte, error)
- func (file *BFile) Scan(value interface{}) error
- type Blob
- type Clob
- type Connection
- func (conn *Connection) Begin() (driver.Tx, error)
- func (conn *Connection) BeginTx(ctx context.Context, opts driver.TxOptions) (driver.Tx, error)
- func (conn *Connection) BulkInsert(sqlText string, rowNum int, columns ...[]driver.Value) (*QueryResult, error)
- func (conn *Connection) CheckNamedValue(named *driver.NamedValue) error
- func (conn *Connection) Close() (err error)
- func (conn *Connection) Exec(text string, args ...driver.Value) (driver.Result, error)
- func (conn *Connection) ExecContext(ctx context.Context, query string, args []driver.NamedValue) (driver.Result, error)
- func (conn *Connection) GetNLS() (*NLSData, error)
- func (conn *Connection) Open() error
- func (conn *Connection) OpenWithContext(ctx context.Context) error
- func (conn *Connection) Ping(ctx context.Context) error
- func (conn *Connection) Prepare(query string) (driver.Stmt, error)
- func (conn *Connection) PrepareContext(ctx context.Context, query string) (driver.Stmt, error)
- func (conn *Connection) QueryContext(ctx context.Context, query string, args []driver.NamedValue) (driver.Rows, error)
- func (conn *Connection) RegisterType(typeName string, typeObj interface{}) error
- func (conn *Connection) RegisterType2(typeName string, typeObj interface{}) error
- func (conn *Connection) RegisterTypeWithOwner(owner, typeName string, typeObj interface{}) error
- func (conn *Connection) SetStringConverter(converter converters.IStringConverter)
- type ConnectionState
- type ConnectionString
- type DBAPrivilege
- type DBVersion
- type DataSet
- func (dataSet *DataSet) Close() error
- func (dataSet DataSet) ColumnTypeDatabaseTypeName(index int) string
- func (dataSet DataSet) ColumnTypeLength(index int) (length int64, ok bool)
- func (dataSet DataSet) ColumnTypeNullable(index int) (nullable, ok bool)
- func (dataSet *DataSet) Columns() []string
- func (dataSet *DataSet) Err() error
- func (dataSet *DataSet) Next(dest []driver.Value) error
- func (dataSet *DataSet) Next_() bool
- func (dataSet *DataSet) Scan(dest ...interface{}) error
- func (dataSet DataSet) Trace(t trace.Tracer)
- type DataTypeNego
- type Lob
- type LogonMode
- type NClob
- type NLSData
- type NVarChar
- type NullNVarChar
- type NullTimeStamp
- type OracleConnector
- type OracleDriver
- type OracleType
- type Out
- type ParameterDirection
- type ParameterInfo
- type ParameterType
- type PromotableTransaction
- type QueryResult
- type RefCursor
- type Row
- type Stmt
- func (stmt *Stmt) AddParam(name string, val driver.Value, size int, direction ParameterDirection) error
- func (stmt *Stmt) AddRefCursorParam(name string)
- func (stmt Stmt) CanAutoClose() bool
- func (stmt *Stmt) CheckNamedValue(named *driver.NamedValue) error
- func (stmt *Stmt) Close() error
- func (stmt *Stmt) Exec(args []driver.Value) (driver.Result, error)
- func (stmt *Stmt) ExecContext(ctx context.Context, namedArgs []driver.NamedValue) (driver.Result, error)
- func (stmt *Stmt) NewParam(name string, val driver.Value, size int, direction ParameterDirection) (*ParameterInfo, error)
- func (stmt *Stmt) NumInput() int
- func (stmt *Stmt) Query(args []driver.Value) (driver.Rows, error)
- func (stmt *Stmt) QueryContext(ctx context.Context, namedArgs []driver.NamedValue) (driver.Rows, error)
- func (stmt *Stmt) Query_(args []driver.Value) (*DataSet, error)
- type StmtInterface
- type StmtType
- type TCPNego
- type TimeStamp
- type Transaction
- type ValueEncoder
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BuildUrl ¶
func BuildUrl(server string, port int, service, user, password string, options map[string]string) string
BuildUrl create databaseURL from server, port, service, user, password, urlOptions this function help build a will formed databaseURL and accept any character as it convert special charters to corresponding values in URL
func SetNTSAuth ¶
func SetNTSAuth(newNTSManager advanced_nego.NTSAuthInterface)
Types ¶
type AuthObject ¶
type AuthObject struct { EServerSessKey string EClientSessKey string EPassword string ESpeedyKey string ServerSessKey []byte ClientSessKey []byte KeyHash []byte Salt string VerifierType int // contains filtered or unexported fields }
E infront of the variable means encrypted
func (*AuthObject) Write ¶
func (obj *AuthObject) Write(connOption *network.ConnectionOption, mode LogonMode, session *network.Session) error
write authentication data to network
type BFile ¶
type BFile struct {
// contains filtered or unexported fields
}
func (*BFile) ReadBytesFromPos ¶
type Connection ¶
type Connection struct { State ConnectionState LogonMode LogonMode SessionProperties map[string]string NLSData NLSData // contains filtered or unexported fields }
func NewConnection ¶
func NewConnection(databaseUrl string) (*Connection, error)
NewConnection create a new connection from databaseURL string
func (*Connection) Begin ¶
func (conn *Connection) Begin() (driver.Tx, error)
Begin called to begin a transaction
func (*Connection) BulkInsert ¶
func (conn *Connection) BulkInsert(sqlText string, rowNum int, columns ...[]driver.Value) (*QueryResult, error)
all columns should pass as an array of values
func (*Connection) CheckNamedValue ¶
func (conn *Connection) CheckNamedValue(named *driver.NamedValue) error
func (*Connection) Close ¶
func (conn *Connection) Close() (err error)
Close the connection by disconnect network session
func (*Connection) ExecContext ¶
func (conn *Connection) ExecContext(ctx context.Context, query string, args []driver.NamedValue) (driver.Result, error)
func (*Connection) GetNLS ¶
func (conn *Connection) GetNLS() (*NLSData, error)
GetNLS return NLS properties of the connection. this function is left from v1. but v2 is using another method
func (*Connection) Open ¶
func (conn *Connection) Open() error
Open open the connection = bring it online
func (*Connection) OpenWithContext ¶
func (conn *Connection) OpenWithContext(ctx context.Context) error
OpenWithContext open the connection with timeout context
func (*Connection) Ping ¶
func (conn *Connection) Ping(ctx context.Context) error
Ping test if connection is online
func (*Connection) Prepare ¶
func (conn *Connection) Prepare(query string) (driver.Stmt, error)
Prepare take a query string and create a stmt object
func (*Connection) PrepareContext ¶
func (*Connection) QueryContext ¶
func (conn *Connection) QueryContext(ctx context.Context, query string, args []driver.NamedValue) (driver.Rows, error)
func (*Connection) RegisterType ¶
func (conn *Connection) RegisterType(typeName string, typeObj interface{}) error
RegisterType register user defined type with owner equal to user id
func (*Connection) RegisterType2 ¶
func (conn *Connection) RegisterType2(typeName string, typeObj interface{}) error
RegisterType2 same as RegisterType but get user defined type data with pl/sql package function: dbms_pickler.get_type_shape
DataType of UDT field that can be manipulated by this function are: NUMBER, VARCHAR2, NVARCHAR2, TIMESTAMP, DATE AND RAW
func (*Connection) RegisterTypeWithOwner ¶
func (conn *Connection) RegisterTypeWithOwner(owner, typeName string, typeObj interface{}) error
RegisterTypeWithOwner take typename, owner and go type object and make an information structure that used to create a new type during query and store values in it
DataType of UDT field that can be manipulated by this function are: NUMBER, VARCHAR2, NVARCHAR2, TIMESTAMP, DATE AND RAW
func (*Connection) SetStringConverter ¶
func (conn *Connection) SetStringConverter(converter converters.IStringConverter)
SetStringConverter this function is used to set a custom string converter interface that will used to encode and decode strings and bytearrays
type ConnectionState ¶
type ConnectionState int
const ( Closed ConnectionState = 0 Opened ConnectionState = 1 )
type ConnectionString ¶
type DBAPrivilege ¶
type DBAPrivilege int
const ( NONE DBAPrivilege = 0 SYSDBA DBAPrivilege = 0x20 SYSOPER DBAPrivilege = 0x40 )
func DBAPrivilegeFromString ¶
func DBAPrivilegeFromString(s string) DBAPrivilege
type DBVersion ¶
type DataSet ¶
type DataSet struct { Cols []ParameterInfo // contains filtered or unexported fields }
func (DataSet) ColumnTypeDatabaseTypeName ¶
ColumnTypeDatabaseTypeName return Col DataType name
func (DataSet) ColumnTypeLength ¶
ColumnTypeLength return length of column type
func (DataSet) ColumnTypeNullable ¶
ColumnTypeNullable return if column allow null or not
type DataTypeNego ¶
type NLSData ¶
type NLSData struct { Calender string Comp string Language string LengthSemantics string NCharConvExcep string NCharConvImp string DateLang string Sort string Currency string DateFormat string TimeFormat string IsoCurrency string NumericChars string DualCurrency string UnionCurrency string Timestamp string TimestampTZ string TTimezoneFormat string NTimezoneFormat string Territory string Charset string }
func (*NLSData) SaveNLSValue ¶
SaveNLSValue a helper function that convert between nls key and code
type NVarChar ¶
type NVarChar string
func (*NVarChar) EncodeValue ¶
func (val *NVarChar) EncodeValue(param *ParameterInfo, connection *Connection) error
func (NVarChar) MarshalJSON ¶
func (*NVarChar) UnmarshalJSON ¶
type NullNVarChar ¶
func (NullNVarChar) MarshalJSON ¶
func (val NullNVarChar) MarshalJSON() ([]byte, error)
func (*NullNVarChar) Scan ¶
func (val *NullNVarChar) Scan(value interface{}) error
func (*NullNVarChar) UnmarshalJSON ¶
func (val *NullNVarChar) UnmarshalJSON(data []byte) error
type NullTimeStamp ¶
func (NullTimeStamp) MarshalJSON ¶
func (val NullTimeStamp) MarshalJSON() ([]byte, error)
func (*NullTimeStamp) Scan ¶
func (val *NullTimeStamp) Scan(value interface{}) error
func (*NullTimeStamp) UnmarshalJSON ¶
func (val *NullTimeStamp) UnmarshalJSON(data []byte) error
type OracleConnector ¶
type OracleConnector struct {
// contains filtered or unexported fields
}
type OracleDriverContext struct { }
func (*OracleConnector) Dialer ¶
func (connector *OracleConnector) Dialer(dialer network.DialerContext)
func (*OracleConnector) Driver ¶
func (connector *OracleConnector) Driver() driver.Driver
type OracleDriver ¶
type OracleDriver struct { }
func (*OracleDriver) Open ¶
func (drv *OracleDriver) Open(name string) (driver.Conn, error)
Open return a new open connection
func (*OracleDriver) OpenConnector ¶
func (drv *OracleDriver) OpenConnector(name string) (driver.Connector, error)
type OracleType ¶
type OracleType int
const ( NCHAR OracleType = 1 NUMBER OracleType = 2 SB1 OracleType = 3 SB2 OracleType = 3 SB4 OracleType = 3 FLOAT OracleType = 4 NullStr OracleType = 5 VarNum OracleType = 6 LONG OracleType = 8 VARCHAR OracleType = 9 ROWID OracleType = 11 DATE OracleType = 12 VarRaw OracleType = 15 BFloat OracleType = 21 BDouble OracleType = 22 RAW OracleType = 23 LongRaw OracleType = 24 UINT OracleType = 68 LongVarChar OracleType = 94 LongVarRaw OracleType = 95 CHAR OracleType = 96 CHARZ OracleType = 97 IBFloat OracleType = 100 IBDouble OracleType = 101 REFCURSOR OracleType = 102 OCIXMLType OracleType = 108 XMLType OracleType = 109 OCIRef OracleType = 110 OCIClobLocator OracleType = 112 OCIBlobLocator OracleType = 113 OCIFileLocator OracleType = 114 ResultSet OracleType = 116 OCIString OracleType = 155 OCIDate OracleType = 156 TimeStampDTY OracleType = 180 TimeStampTZ_DTY OracleType = 181 IntervalYM_DTY OracleType = 182 IntervalDS_DTY OracleType = 183 TimeTZ OracleType = 186 TIMESTAMP OracleType = 187 TimeStampTZ OracleType = 188 IntervalYM OracleType = 189 IntervalDS OracleType = 190 UROWID OracleType = 208 TimeStampLTZ_DTY OracleType = 231 TimeStampeLTZ OracleType = 232 )
func (OracleType) String ¶
func (i OracleType) String() string
type ParameterDirection ¶
type ParameterDirection int
const ( Input ParameterDirection = 1 Output ParameterDirection = 2 InOut ParameterDirection = 3 RetVal ParameterDirection = 9 )
type ParameterInfo ¶
type ParameterInfo struct { Name string TypeName string Direction ParameterDirection IsNull bool AllowNull bool ColAlias string DataType OracleType IsXmlType bool Flag uint8 Precision uint8 Scale uint8 MaxLen int MaxCharLen int MaxNoOfArrayElements int ContFlag int ToID []byte Version int CharsetID int CharsetForm int BValue []byte Value driver.Value OutputVarPtr interface{} // contains filtered or unexported fields }
type ParameterType ¶
type ParameterType int
const ( Number ParameterType = 1 String ParameterType = 2 )
type PromotableTransaction ¶
type PromotableTransaction int
type QueryResult ¶
type QueryResult struct {
// contains filtered or unexported fields
}
func (*QueryResult) LastInsertId ¶
func (rs *QueryResult) LastInsertId() (int64, error)
func (*QueryResult) RowsAffected ¶
func (rs *QueryResult) RowsAffected() (int64, error)
type RefCursor ¶
type RefCursor struct { MaxRowSize int // contains filtered or unexported fields }
func (RefCursor) CanAutoClose ¶
func (stmt RefCursor) CanAutoClose() bool
type Stmt ¶
type Stmt struct {
// contains filtered or unexported fields
}
func NewStmt ¶
func NewStmt(text string, conn *Connection) *Stmt
NewStmt create new stmt and set its connection properties
func (*Stmt) AddParam ¶
func (stmt *Stmt) AddParam(name string, val driver.Value, size int, direction ParameterDirection) error
AddParam create new parameter and append it to stmt.Pars
func (*Stmt) AddRefCursorParam ¶
AddRefCursorParam add new output parameter of type REFCURSOR
note: better to use sql.Out structure see examples for more information
func (Stmt) CanAutoClose ¶
func (stmt Stmt) CanAutoClose() bool
func (*Stmt) CheckNamedValue ¶
func (stmt *Stmt) CheckNamedValue(named *driver.NamedValue) error
func (*Stmt) Exec ¶
Exec execute stmt (INSERT, UPDATE, DELETE, DML, PLSQL) and return driver.Result object
func (*Stmt) ExecContext ¶
func (*Stmt) NewParam ¶
func (stmt *Stmt) NewParam(name string, val driver.Value, size int, direction ParameterDirection) (*ParameterInfo, error)
func (*Stmt) Query ¶
Query execute a query command and return dataset object in form of driver.Rows interface
args is an array of values that corresponding to parameters in sql
func (*Stmt) QueryContext ¶
type StmtInterface ¶
type TimeStamp ¶
func (*TimeStamp) EncodeValue ¶
func (val *TimeStamp) EncodeValue(param *ParameterInfo, _ *Connection) error
func (TimeStamp) MarshalJSON ¶
func (*TimeStamp) UnmarshalJSON ¶
type Transaction ¶
type Transaction struct {
// contains filtered or unexported fields
}
func (*Transaction) Commit ¶
func (tx *Transaction) Commit() error
func (*Transaction) Rollback ¶
func (tx *Transaction) Rollback() error
type ValueEncoder ¶
type ValueEncoder interface {
EncodeValue(param *ParameterInfo, connection *Connection) error
}
Source Files ¶
- auth_object.go
- bfile.go
- command.go
- connection.go
- connection_string.go
- custom_types.go
- data_set.go
- data_type_nego.go
- db_version.go
- lob.go
- oracletype_string.go
- parameter.go
- parameter_decode_array.go
- parameter_encode.go
- parameter_encode_array.go
- ref_cursor.go
- rowid.go
- simple_object.go
- tcp_protocol_nego.go
- transaction.go
- udt.go
- urowid.go
- wallet.go
Directories ¶
Path | Synopsis |
---|---|
ntlmssp
Package ntlmssp provides NTLM/Negotiate authentication over HTTP
|
Package ntlmssp provides NTLM/Negotiate authentication over HTTP |
security/md4
Package md4 implements the MD4 hash algorithm as defined in RFC 1320.
|
Package md4 implements the MD4 hash algorithm as defined in RFC 1320. |