Инструменты пользователя

Инструменты сайта


fox-manager-2.0-bpa:1.-общая-информация:тонкие-настройки-подключения-к-базе-данных

1.9. Тонкие настройки подключения к базе данных

По умолчанию программа Fox Manager уже настроена таким образом, чтобы максимально облегчить подключение к базе данных. Типовые настройки подходят для 95% пользователей, однако бывают ситуации, когда специфические настройки сервера или языковые настройки системы приводят к тому, что пользователи начинают испытывать проблемы с подключением или работой с базой данных.

Среди таких проблем можно отдельно выделить несоответствие кодировки, используемой сервером и программой, что приводит к тому, что вместо букв отображаются специфические символы или знаки вопроса «???????».

В случае возникновения подобных проблем следует прибегнуть к тонкой настройке соединения программы с базой данных. Параметры этих настроек находятся в файле Connection.ini, который расположен в папке: C:\Users\<имя пользователя>\AppData\Roaming\Fox Manager 2.x BPA\

Откройте данный файл, например, в блокноте и отредактируйте параметры настроек подключения. Обратите внимание, что для каждого типа базы данных в файле Connection.ini существует свой раздел. Чтобы решить проблемы с кодировкой в большинстве случае достаточно изменить значение параметра UseUnicode с False на True.

После сохранения изменений в файле Connection.ini необходимо перезапустить программу Fox Manager, чтобы изменения вступили в силу. Некоторые настройки влияют на структуру базы данных, чтобы они вступили в силу необходимо не только перезапустить программу, но и создать НОВУЮ пустую базы данных.

Обратите внимание, что для корректной работы программы необходимо чтобы настройки подключения к базе данных были идентичными у всех пользователей, которые будут работать с базой данных.

Программа Fox Manager использует компоненты UniDAC для работы с разными типами баз данных. Изменять настройки подключения, которые заданы по умолчанию, нужно только в случае возникновения проблем, или, если Вы чётко понимаете, что именно Вы делаете.

Ниже мы приводим описание параметров подключения из руководства пользователя UniDAC.

DB2-specific options

ConnectionTimeout The time to wait for a connection to open before raising an exception.
FunctionPath Use the FunctionPath property to change the current function path of the connection to the specified value. You can specify several names separated by comma. This option can be used to call stored procedures from a schema other than that of the current user without having to qualify the objects with the schema name.
Schema Use the Schema property to change the current schema of the connection to the specified schema. This setting offers a convenient way to perform operations on objects in a schema other than that of the current user without having to qualify the objects with the schema name.
UseUnicode Enables or disables Unicode support. Affects character data fetched from the server. When set to True, all character data is stored as WideStrings, and TStringField is replaced by TWideStringFiled.

InterBase-specific options

CharLength Specifies the size in bytes of a single character. Set this option with the number in range [0..6] to reflect InterBase support for the national languages. Setting CharLength to zero will instruct TUniConnection to interrogate InterBase server for the actual character length.
The default value is 1.
Charset Sets character set that IBDAC uses to read and write character data.
ClientLibrary Use the ClientLibrary option to set or get the client library location.
Protocol Network protocol of connection with InterBase server. The default value is TCP.
Role InterBase connection role.
TrustedAuthentication Windows «Trusted User» security can be applied for authenticating Firebird users on a Windows host.
When the option is set to True, the Firebird security database is ignored during establishing a connection, and only Windows authentication is used.
The default value is False
More detailed information about this authentication mode is available at http://firebirdsql.org/rlsnotesh/rlsnotes210.html#rnfb210-wintrusted.
SQLDialect Use SQLDialect to set or return SQL Dialect used by InterBase client. The SQLDialect property cannot be set to a value greater than the database SQL dialect when the connection is active. If the connection is inactive, the SQLDialect option will be downgraded to match the database SQL dialect.
UseUnicode Enables or disables Unicode support. Affects on the character data fetched from the server. When set to True all character data is stored as WideStrings, and TStringField is replaced with TWideStringFiled.

MySQL-specific options

Charset Setups the character set used by the client.
Compress Use compression on transferring data. Setting this property to True is quite effective on transferring big volume data through slow connection. This property is ignored under CLR. The default value is False.
ConnectionTimeout Specifies the amount of time in seconds that can be expired before an attempt to make a connection is considered unsuccessful.
Direct Works without using MySQL client library (libmysql.dll). Used only if Embedded is disabled.
Embedded If True, connects to Embedded MySQL server. If False, connects to MySQL server. The default value is False.
EmbeddedParams Allows to set such parameters of embedded connection as –basedir, –datadir, etc. Parameters should be separated with newline characters (#13#10), for example: UniConnection.SpecificOptions.Values['MySQL.EmbeddedPrams'] := '–basedir=.'#13#10'–datadir=data';

The default value is ''
Interactive Determines the inactivity timeout before the server breaks the connection. If true, the server breaks the connection after number of seconds specified in interactive_timeout sever variable, otherwise wait_timeout is used. The default value is false. The interactive_timeout and wait_timeout variables can be set in my.ini file.
IPVersion Use the IPVersion property to specify the Internet Protocol version. The default value is ivIPv4. ivIPBoth Specifies that either IPv6 or IPv4 Internet Protocol version is used. Note: when the TIPVersion property is set to ivIPBoth, there occurs an attempt to connect via IPv6 (if it is enabled in the OS); if the attempt fails - there occurs an attempt to connect via IPv4. ivIPv4 specifies that the IPv4 Internet Protocol version is used. ivIPv6 specifies that the IPv6 Internet Protocol version is used
NullForZeroDelphiDate Use the NullForZeroDelphiDate property to hide the '30-12-1899' dates. If NullForZeroDelphiDate is set to True, the values of all datetime fields will be changed to Null. If the property is set to False, the '30-12-1899' value will be used as an ordinary date. The default value is false.
OptimizedBigint Setting this option converts all fields with field length less than 11 of TLargeIntField type into TIntegerField. This allows to process fields that are results of numeric function or cast values as usual Integer fields. The default value is False.
Protocol Specifies which protocol to use when connecting to the server: mpDefault similar to mpTCP, except the cases when you connect to a local server and the OS supports sockets (Unix) or named pipes (Windows), they are used instead of TCP/IP to connect to the server. mpTCP use TCP/IP to connect to the server. mpSocket uses sockets to connect to the server. Can be used with Direct set to False and libmysql.dll 4.1. mpPipe use NamedPipes to connect to the server. mpMemory to connect to the server using SharedMem. Can be used with Direct set to False and libmysql.dll 4.1. mpSSL use protected SSL connection with the server. mpHttp uses HTTP Network Tunneling to connect to the server.
HttpUrl Holds the url of the tunneling PHP script.
HttpUsername Holds the user name for HTTP authorization.
HttpPassword Holds the password for HTTP authorization.
ProxyHostname Holds the host name or IP address to connect to proxy server.
ProxyPort Used to specify the port number for TCP/IP connection with proxy server.
ProxyUsername Holds the proxy server account name.
ProxyPassword Holds the password for the proxy server account.
SSLCACert CACert is the pathname to the certificate authority file.
SSLCert Cert is the pathname to the certificate file.
SSLChipherList ChipherList is a list of allowable ciphers to use for SSL encryption.
SSLKey Key is the pathname to the key file.
UseUnicode Informs server that all data between client and server sides will be passed in UTF-8 coding. Setting this option converts all fields of TStringField type into TWideStringField that allows to work correctly with symbols of almost all languages simultaneously. On the other hand, it causes a delay in working. The default value is False.

SQL Server-specific options

ApplicationIntent Specifies the application workload type when connecting to a server.
ApplicationName The name of a client application. The default value is the name of the executable file of your application.
Authentication Use the Authentication property to specify authentication service used by the database server to identify a user. The Authentication property accepts one of the following values: auWindows uses Windows NT/2000/XP integrated security, or «SSPI» (Security Support Provider Interface). Username, Password and LoginPrompt properties are ignored. auServer (default) an alternative way of identifying users by database server. To establish a connection valid Username and Password either hardcoded into application or provided in server login prompt fields are required.
AutoTranslate When set to True, character strings sent between the client and server are translated by converting through Unicode to minimize problems in matching extended characters between the code pages on the client and the server.
CompactAutoShrinkThreshold Specifies the amount of free space in the database file before automatic shrink will start. Measured in percents. The default value is 60.
CompactDefaultLockEscalation Specifies how many locks should be performed before trying escalation from row to page or from page to table. The default value is 100.
CompactDefaultLockTimeout Specifies how much time a transaction will wait for a lock. The default value is 2000.
Compact FlushInterval Specifies the interval at which committed transactions are flushed to disk. Measured in seconds. The default value is 10.
CompactInitMode Use this property to specify the file mode that will be used to open the database file. The InitMode property accepts one of the following values: imExclusive database file is opened for exclusive use. This mode prevents others from opening this database file. imReadOnly database file is opened for reading. All operations that write to database are unallowable. imReadWrite (default) both read and write operations are allowed. imShareRead opens a database file preventing others from opening the same file in the read mode.
CompaLockEscalation Specifies how many locks should be performed before trying escalation from row to page or from page to table. Measured in milliseconds. The default value is 100.
CompactLockTimeout Specifies how much time a transaction will wait for a lock. Measured in milliseconds. The default value is 2000.
CompactMaxBufferSize Specifies how much memory SQL Server Compact Edition can use before flushing changes to disc. Measured in kilobytes. The default value is 640.
CompactMaxDatabaseSize Specified maximum size of the main database file. Measured in megabytes. The default value is 128.
CompactTempFileDirectory Specifies the temp file directory. If this option is not assigned, the current database is used as a temporary database.
CompactTempFileMaxSize Specified maximum size of the temporary database file. Measured in megabytes. The default value is 128.
CompactTransactionCommitMode Specifies in what way the buffer pool will be flushed on transaction commit. The following two values are allowed: cmAsynchCommit asynchronous commit to disk. cmSynchCommit (default) Synchronous commit to disk.
CompactVersion Specifies which version of SQL Server Compact Edition will be used. cvAuto (default) version of SQL Server Compact Edition will be chosen automatically depending on database version. If database is not provided, the higher available server version will be chosen. cv30 uses SQL Server Compact Edition Version 3.0 or 3.1. cv35 uses SQL Server Compact Edition Version 3.5.
ConnectionTimeout Use ConnectionTimeout to specify the amount of time, in seconds, that can expire before an attempt to consider a connection unsuccessful. The default value is 15 seconds.
Encrypt Specifies if data should be encrypted before sending it over the network. The default value is False.
FailoverPartner Specifies the SQL Server name to which SQL Native Client will reconnect when a failover of the principal SQL Server occurs. This option is supported only for SQL Server 2005 using SQL Native Client as an OLE DB provider.
ForceCreateDatabase Used to force TLiteConnection to create a new database before opening a connection, if the database does not exist.
InitialFileName Specifies the name of the main database file. This database will be default database for the connection. SQL Server attaches the database to the server if it has not been attached to the server yet. So, this property can be used to connect to the database that has not been attached to the server yet.
Language A SQL Server language name. Identifies the language used for system message selection and formatting. The language must be installed on the computer running an instance of SQL Server otherwise the connection will fail.
MultipleActiveResultSets Enables support for SQL Server 2005 Multiple Active Result Sets (MARS) technology. It allows applications to have more than one pending request per connection, and in particular, to have more than one active default result set per connection. Current session is not blocked when using FetchAll = False, and it is not necessary for OLE DB to create additional sessions for any query executing. MARS is only supported by SQL Server 2005 with using SQL Native Client as OLE DB provider.
NativeClientVersion Specifies which version of SQL Native Client will be used. The default value is ncAuto. NativeClientVersion is applied when the Provider property is set to prNativeClient or prAuto.
NetworkLibrary The name of the Net-Library (DLL) used to communicate with an instance of SQL Server. The name should not include the path or the .dll file name extension. The default name is provided by the SQL Server Client Network Utility.
OLEDBProvider This property is now deprecated. The Provider property is used instead.
PacketSize Network packet size in bytes. The packet size property value must be between 512 and 32,767. The default network packet size is 4,096.
PersistSecurityInfo The data source object is allowed to persist sensitive authentication information such as password along with other authentication information.
Provider This property allows you to specify a provider from the list of supported providers or use the Direct mode. The default value of this property is prAuto. In this case a provider of the most recent version is used. Some features added to SQL Server 2005 require the SQL Native Client (prNativeClient) provider to be used. If chosen provider is not installed, an exception is raised. This property can have the following values: prAuto (default) The default value. If the SQL Native Client provider is found, equals to prNativeClient, otherwise equals to prSQL. prSQL Uses the provider preinstalled with Windows that has limited functionality. prNativeClient Uses the SQL Native Client. It should be installed on the computer to use this Provider value. This provider offers the maximum functionality set. prCompact SQL Server 2005 Compact Edition provider. prDirect Connect to SQL Server directly via TCP/IP.
QuotedIdentifier Causes Microsoft® SQL Server™ to follow the SQL-92 rules regarding quotation mark delimiting identifiers and literal strings. Identifiers delimited by double quotation marks can be either Transact-SQL reserved keywords or can contain characters not usually allowed by the Transact-SQL syntax rules for identifiers. QuotedIdentifier must be True when creating or manipulating indexes on computed columns or indexed views. If QuotedIdentifier is False, CREATE, UPDATE, INSERT, and DELETE statements on tables with indexes on computed columns or indexed views will fail. True (default) Identifiers can be delimited by double quotation marks, and literals must be delimited by single quotation marks. All strings delimited by double quotation marks are interpreted as object identifiers. Therefore, quoted identifiers do not have to follow the Transact-SQL rules for identifiers. They can be reserved keywords and can include characters not usually allowed in Transact-SQL identifiers. Double quotation marks cannot be used to delimit literal string expressions; single quotation marks must be used to enclose literal strings. If a single quotation mark (') is a part of the literal string, it can be represented by two single quotation marks («). QuotedIdentifier must be True when reserved keywords are used for object names in the database. False (BDE compatibility) Identifiers cannot be quoted and must follow all Transact-SQL rules for identifiers. Literals can be delimited by either single or double quotation marks. If a literal string is delimited by double quotation marks, the string can contain embedded single quotation marks, such as apostrophes.
TrustServerCertificate Lets enabling traffic encryption without validation. The default value is False. This option is only supported by SQL Server 2005 with using SQL Native Client as OLE DB provider.
WorkstationID A string identifying the workstation. The default value is the name of your machine.

Oracle-specific options

CharLength Serves for national languages support. Means the character size in bytes. Allowed values are in range [0..6]. Zero means that the actual character length will be requested from the Oracle server. The default value is 1.
Charset Setups the character set which will be used to transfer character data between client and server. Supported with Oracle 8 client only.
ClientIdentifier Use this property to determine the client identifier in the session. The client identifier can be set in the session handle at any time in the session. Then, on the next request to the server, the information is propagated and stored in the server session. The first character of the ClientIdentifier should not be ':'. If it is, an exception will be raised. This property has no effect if you use the version of the server earlier than Oracle 9.
ConnectMode Specifies which system privileges to use when connecting to the server. The following values are supported for this option: cmNormal (default) Connect as an ordinary user. cmSysOper Connect with SYSOPER role. cmSysDBA Connect with SYSDBA role. cmSysASM Connect with SYSASM role. User must have SYSOPER, SYSDBA, SYSASM or all three roles granted before he connects to the server and wishes to use any of these roles. ConnectMode is not supported for OCI 7.
ConnectionTimeout The time to wait for a connection to open before raising an exception. Works only when the Direct mode is set to True.
ConvertEOL Affects line break behavior in string fields and parameters. When fetching strings (including CLOBs and LONGs) with ConvertEOL = True dataset converts their line breaks from LF to CRLF form. And when posting strings to server with ConvertEOL turned on their line breaks converted from CRLF to LF form. By default, strings are not converted.
DateFormat Specifies the default date format used when Oracle makes conversions from internal date format into string values and vice versa. An example of valid expression for this property could be «MM/DD/YYYY».
DateLanguage Specifies the default language used when Oracle parses internal date format into string values and vice versa. Examples of valid expressions for this property could be «French», «German» etc.
Direct If set to True, connection is performed directly over TCP/IP, and does not require Oracle software on the client side. Otherwise, provider connects in Client mode.
EnableIntegers When set to True, the provider maps Oracle numbers with precision less than 10 to TIntegerField. If EnableIntegers is set to False, numbers are mapped to TFloatField or XXX.
EnableNumbers When set to True, the provider maps Oracle numbers with precision greater than 15 to TOraNumberField. Otherwise they are mapped to TFloatFiled.
HomeName Set the HomeName option to select which Oracle client will be used in your application. Use this property in cases when there is a number of Oracle clients on the machine. The Oracle provider searches all available homes in the HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE registry folder. If the HomeName option is set to an empty string, the provider uses the first directory from the list of homes encountered in environment PATH variable as the default Oracle home.
IPVersion Use the IPVersion property to specify the Internet Protocol version. The default value is ivIPv4. ivIPBoth Specifies that either IPv6 or IPv4 Internet Protocol version is used. Note: when the TIPVersion property is set to ivIPBoth, there occurs an attempt to connect via IPv6 (if it is enabled in the OS); if the attempt fails - there occurs an attempt to connect via IPv4. ivIPv4 Specifies that the IPv4 Internet Protocol version is used. ivIPv6 Specifies that the IPv6 Internet Protocol version is used
OptimizerMode Use the OptimizerMode property to get or set the default optimizer mode for connection. The OptimizerMode property can have one of the following values: omDefault Session optimizer mode will not be changed. omFirstRowsNN Instruct Oracle to optimize a SQL statement for fast response. It instructs Oracle to choose the plan that returns the first NN rows most efficiently. If you use the version of the server earlier than Oracle 9.0, these values have the same effect as omFirstRows. omFirstRows This mode is retained for backward compatibility and plan stability. It optimizes for the best plan to return the first single row. omAllRows Explicitly chooses the cost-based approach to optimize a statement block with a goal of best throughput (that is, minimum total resource consumption). omChoose Causes the optimizer to choose between the rule-based and cost-based approaches for a SQL statement. The optimizer selection is based on the presence of statistics for the tables accessed by the statement. If the data dictionary has statistics for at least one of these tables, then the optimizer uses the cost-based approach and optimizes with the goal of the best throughput. If the data dictionary does not have statistics for these tables, then it uses the rule-based approach. omRule Chooses rule-based optimization (RBO). Any other value causes the optimizer to choose cost-based optimization (CBO). The rule-based optimizer is the archaic optimizer mode from the earliest releases of Oracle Database.
PoolingType Pooling implementation type optLocal - our own pooling implementation optOCI - the management of the pool is done by OCI optMTS - «shared server» pool is used. The default value is optLocal
PrecisionBCD This option allows dataset to represent fields as TBCDField if NUMBER field precision and scale less or equal than precision and scale specified in BCDPrecision. Value is interpreted like two coma separated digits (BCD precision and scale). The value of BCDPrecision cannot be greater then '14,4'. The default value is '14,4'.
PrecisionFloat This option allows dataset to represent fields as TFloatField if NUMBER field precision less or equal than PrecisionFloat. The default value is 0.
PrecisionFMTBCD This option allows dataset to represent fields as TFMTBCDField if NUMBER field precision and scale less or equal than precision and scale specified in PrecisionFMTBCD. Value is interpreted like two coma separated digits (FMTBCD precision and scale).
PrecisionInteger This option allows dataset to represent fields as TIntegerField if NUMBER field precision less or equal than PrecisionInteger. The default value is 9.
PrecisionLargeInt This allows dataset to represent fields as TLargeIntegerField if NUMBER field precision less or equal than PrecisionLargeInt. The default value is 18.
PrecisionFMTBCD This option allows dataset to represent fields as TFMTBCDField if NUMBER field precision and scale less or equal than precision and scale specified in PrecisionFMTBCD. Value is interpreted like two coma separated digits (FMTBCD precision and scale). The default value is '38,38'.
Schema Use the Schema property to change the current schema of the session to the specified schema. This setting offers a convenient way to perform operations on objects in a schema other than that of the current user without having to qualify the objects with the schema name. This setting changes the current schema, but it does not change the session user or the current user, nor does it give you any additional system or object privileges for the session. If TUniConnection.Connected is True, read this property to receive the name of the current schema.
StatementCache When set to True, the provider caches statement handles.
StatementCacheSize Statement handle cache size.
ThreadSafety Allows to use the OCI in multi-threaded environment. The ThreadSafety option must be True before any non blocking fetch of rows or SQL statement execution takes place.
UseOCI7 Use the UseOCI7 option to force TUniConnection use OCI 7 call style only. The default value is False.
UseUnicode Enables or disables Unicode support. Affects on character data fetched from the server. When set to True all character data is stored as WideStrings, and TStringField is replaced with TWideStringFiled. Supported starting with Oracle 8.

PostgreSQL-specific options

ApplicationName The name of a client application. The default value is the name of the executable file of your application.
Charset Setups the character set which will be used to transfer character data between client and server.
ConnectionTimeout The time to wait for a connection to open before raising an exception.
IPVersion Use the IPVersion property to specify the Internet Protocol version. The default value is ivIPv4. ivIPBoth Specifies that either IPv6 or IPv4 Internet Protocol version is used. Note: when the TIPVersion property is set to ivIPBoth, there occurs an attempt to connect via IPv6 (if it is enabled in the OS); if the attempt fails - there occurs an attempt to connect via IPv4. ivIPv4 Specifies that the IPv4 Internet Protocol version is used. ivIPv6 Specifies that the IPv6 Internet Protocol version is used.
ProtocolVersion Set the ProtocolVersion to pv20 to work with PostgreSQL servers 7.3 or lower that don't support the 3.0 protocol.
Schema Use the Schema property to set the search path for the connection to the specified schema. This setting offers a convenient way to perform operations on objects in a schema other than that of the current user without having to qualify the objects with the schema name.
SSLCACert The pathname to the certificate authority file.
SSLCert The pathname to the certificate file.
SSLChipherList The list of allowable ciphers to use for SSL encryption.
SSLKey The pathname to the key file.
SSLMode This option determines whether or with what priority an SSL connection will be negotiated with the server. If PostgreSQL is compiled without SSL support, using option smRequire will cause an error, while options smAllow and smPrefer will be accepted, but PgDAC will not in fact attempt an SSL connection.
UseUnicode Enables or disables Unicode support. Affects character data fetched from the server. When set to True, all character data is stored as WideStrings, and TStringField is replaced by TWideStringFiled.

SQLite-specific options

ASCIIDataBase Enables or disables ASCII support. The default value is False. Note:For this option usage set the UseUnicode option to false.
BusyTimeout Use the ClientLibrary option to set or get the timeout of waiting for locked resource (database or table). If resource is not unlocked during the time specified in BusyTimeout, then SQlite returns the SQLITE_BUSY error. Default value of this option is 0.
ClientLibrary Use the ClientLibrary option to set or get the client library location.
DateFormat Defines the format for storing dates in the database. If it is not specified, the default yyyy-mm-dd format will be used.
DefaultCollations Enables or disables automatic default collations registration on connection establishing. List of available default collations: UniNoCase - allows to compare unicode strings case-insensitively.
Direct If the Direct option is set to True, UniDAC connects to the database directly using embedded SQLite3 engine and does not use SQLite3 client library.
EnableLoadExtension Enables loading and using an SQLite extension: UniConnection.ExecSQL();
EnableSharedCache Enables or disables the Shared-Cache mode for SQLite database. Default value of this option is False.
EncryptionAlgorithm Used to specify the encryption algorithm for an encrypted database.
EncryptionKey This property is used for password input and for working with encrypted database. Password can be set or changed using EncryptDatabase method.
ForegnKeys Enables or disables the enforcement of foreign key constraints. Foreign key constraints are disabled by default in SQLite, so this option can be used to force enabling or disabling them by the application. Default value of this option is True.
ForceCreateDatabase Used to force TLiteConnection to create a new database before opening a connection, if the database does not exist.
ReadUncommitted Enables or disables Read-Uncommitted isolation mode. A database connection in read-uncommitted mode does not attempt to obtain read-locks before reading from database tables as described above. This can lead to inconsistent query results if another database connection modifies a table while it is being read, but it also means that a read-transaction opened by a connection in read-uncommitted mode can neither block nor be blocked by any other connection. Default value of this option is False.
TimeFormat Defines the format for storing time in the database. If it is not specified, the default hh24:mi:ss format will be used.
UseUnicode Enables or disables Unicode support. Affects character data fetched from the server. When set to True, all character data is stored as WideStrings, and TStringField is replaced by TWideStringFiled.
fox-manager-2.0-bpa/1.-общая-информация/тонкие-настройки-подключения-к-базе-данных.txt · Последние изменения: 2016/02/02 20:47 — Техподдержка