fox-manager-2.0-bpa:1.-общая-информация:тонкие-настройки-подключения-к-базе-данных
Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версияСледующая версияСледующая версия справа и слева | ||
fox-manager-2.0-bpa:1.-общая-информация:тонкие-настройки-подключения-к-базе-данных [2021/07/07 15:24] – erazor | fox-manager-2.0-bpa:1.-общая-информация:тонкие-настройки-подключения-к-базе-данных [2023/09/06 19:14] – [Длина текстовых колонок в базах данных по умолчанию] Техподдержка | ||
---|---|---|---|
Строка 2: | Строка 2: | ||
По умолчанию программа Fox Manager уже настроена таким образом, | По умолчанию программа Fox Manager уже настроена таким образом, | ||
+ | |||
+ | ===== Длина текстовых колонок в базах данных по умолчанию ===== | ||
+ | |||
+ | По умолчанию текстовые строки записываются в базу данных как **varchar(255)**, | ||
===== Проблемы с кодировкой ===== | ===== Проблемы с кодировкой ===== | ||
Строка 7: | Строка 11: | ||
Среди таких проблем можно отдельно выделить несоответствие кодировки, | Среди таких проблем можно отдельно выделить несоответствие кодировки, | ||
- | В случае возникновения подобных проблем следует прибегнуть к тонкой настройке соединения программы с базой данных. Параметры этих настроек находятся в файле **Connection.ini**, | + | В случае возникновения подобных проблем следует прибегнуть к тонкой настройке соединения программы с базой данных. Параметры этих настроек находятся в файле **Connection.ini**, |
Откройте данный файл, например, | Откройте данный файл, например, | ||
{{ : | {{ : | ||
+ | |||
+ | ===== Проблемы при одновременном доступе к базе SQLite ===== | ||
+ | |||
+ | База данных SQLite является файловой и рекомендуется для работы одного пользователя, | ||
+ | |||
+ | * BusyTimeout = 5000 | ||
+ | * LockingMode = lmNormal | ||
+ | * Synchronous = smExtra | ||
===== Проблемы при подключении к базе MySQL 8.x ===== | ===== Проблемы при подключении к базе MySQL 8.x ===== | ||
Строка 18: | Строка 30: | ||
* Установите в настройках сервера MySQL 8 опцию «Use Legacy Authentication Method». Иногда для этого нужно запустить установку сервера заново и выбрать «Reconfigure» на странице установки/ | * Установите в настройках сервера MySQL 8 опцию «Use Legacy Authentication Method». Иногда для этого нужно запустить установку сервера заново и выбрать «Reconfigure» на странице установки/ | ||
- | * Попробуйте выбрать прямой метод подключения к базу данных. Для этого отредактируйте файл Connection.ini и поставьте значение параметра Direct=True в разделе [MySQL] | + | * Попробуйте выбрать прямой метод подключения к базе данных. Для этого отредактируйте файл Connection.ini и поставьте значение параметра Direct=True в разделе [MySQL] |
* Если подключится к базе прямым методом не удаётся, | * Если подключится к базе прямым методом не удаётся, | ||
Строка 188: | Строка 200: | ||
|ASCIIDataBase|Enables or disables ASCII support. The default value is False. Note:For this option usage set the UseUnicode option to false.| | |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, | |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, | ||
- | |||
|CipherLicense|Holds a license key for SQLCipher Commercial Edition. Note that SQLCipher is not supported in the Direct mode.| | |CipherLicense|Holds a license key for SQLCipher Commercial Edition. Note that SQLCipher is not supported in the Direct mode.| | ||
- | |||
|ConnectMode|The connection mode. **cmDefault** - The default value. The database is opened for reading and writing. Corresponds to the SQLite default behavior. **cmReadWrite** - The database is opened for reading and writing. **cmReadOnly** - The database is opened in read-only mode.| | |ConnectMode|The connection mode. **cmDefault** - The default value. The database is opened for reading and writing. Corresponds to the SQLite default behavior. **cmReadWrite** - The database is opened for reading and writing. **cmReadOnly** - The database is opened in read-only mode.| | ||
- | |||
|ClientLibrary|Use the ClientLibrary option to set or get the client library location.| | |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. | | |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.| | |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.| | |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(); | |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. | |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. | |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. | |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.| | |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.| | |ForceCreateDatabase|Used to force TLiteConnection to create a new database before opening a connection, if the database does not exist.| | ||
- | |||
|JournalMode|The journal mode. **jmDelete** - The rollback journal is deleted at the conclusion of each transaction. **jmTruncate** - The rollback journal is stored in volatile RAM. It reduces disk I/O, but decreases database safety and integrity. If the application using SQLite crashes in the middle of a transaction, | |JournalMode|The journal mode. **jmDelete** - The rollback journal is deleted at the conclusion of each transaction. **jmTruncate** - The rollback journal is stored in volatile RAM. It reduces disk I/O, but decreases database safety and integrity. If the application using SQLite crashes in the middle of a transaction, | ||
- | |||
|LockingMode|The database locking mode. **lmExclusive** - The database connection never releases file locks. The first time the database is read or written in this mode, a shared lock is obtained and held. Use this mode if you want to prevent other processes from accessing the database file, reduce the number of filesystem operations, or access WAL databases without using the shared memory. **lmNormal** - The database connection unlocks the database file at the conclusion of each read or write transaction.| | |LockingMode|The database locking mode. **lmExclusive** - The database connection never releases file locks. The first time the database is read or written in this mode, a shared lock is obtained and held. Use this mode if you want to prevent other processes from accessing the database file, reduce the number of filesystem operations, or access WAL databases without using the shared memory. **lmNormal** - The database connection unlocks the database file at the conclusion of each read or write transaction.| | ||
- | |||
|NativeDate|If the option is set to True, the date and time values will be stored in the database in the native SQLite format, and when retrieved, they will be converted to the TDateTime type. If set to False, no conversion to the TDateTime type will be made. The default value is True.| | |NativeDate|If the option is set to True, the date and time values will be stored in the database in the native SQLite format, and when retrieved, they will be converted to the TDateTime type. If set to False, no conversion to the TDateTime type will be made. The default value is True.| | ||
- | |||
|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. | |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. | ||
- | |||
|Synchronous|The database synchronization mode when writing to disk. **smOff** - The database engine continues without syncing after handing data off to the operating system. If the application running SQLite crashes, the data will safe, unless the operating system crashes or the computer loses power before data has been written to disk, in which case the database might become corrupted. This is the fastest mode. **smNormal** - The database engine still syncs at the most critical moments, but less often than in the FULL mode. The Normal mode is faster than the Full mode. When using the WAL mode (and probably the DELETE mode) with synchronous=NORMAL, | |Synchronous|The database synchronization mode when writing to disk. **smOff** - The database engine continues without syncing after handing data off to the operating system. If the application running SQLite crashes, the data will safe, unless the operating system crashes or the computer loses power before data has been written to disk, in which case the database might become corrupted. This is the fastest mode. **smNormal** - The database engine still syncs at the most critical moments, but less often than in the FULL mode. The Normal mode is faster than the Full mode. When using the WAL mode (and probably the DELETE mode) with synchronous=NORMAL, | ||
- | |||
|TimeFormat|Defines the format for storing time in the database. If it is not specified, the default hh24:mi:ss format will be used. | | |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. When set to True, all character data is stored as WideString, and TStringField is used instead of TWideStringField. The default value is False.| | |UseUnicode|Enables or disables Unicode support. When set to True, all character data is stored as WideString, and TStringField is used instead of TWideStringField. The default value is False.| | ||
fox-manager-2.0-bpa/1.-общая-информация/тонкие-настройки-подключения-к-базе-данных.txt · Последнее изменение: 2024/05/12 19:35 — 127.0.0.1