mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2025-03-29 21:57:16 +02:00
Main build (Jenkins)
This commit is contained in:
parent
4b8c0ecb75
commit
d160c54c31
62
.github/workflows/oint_test_full_en.yml
vendored
62
.github/workflows/oint_test_full_en.yml
vendored
@ -374,6 +374,48 @@ jobs:
|
||||
path: ./data.json
|
||||
|
||||
|
||||
Testing-PostgreSQL:
|
||||
runs-on: ubuntu-latest
|
||||
needs: [Decode, Build]
|
||||
steps:
|
||||
|
||||
- uses: actions/checkout@v2
|
||||
- uses: otymko/setup-onescript@v1.4
|
||||
with:
|
||||
version: 1.9.1
|
||||
|
||||
- name: Получить тестовые данные из кэша
|
||||
uses: actions/cache/restore@v3
|
||||
with:
|
||||
key: test-data
|
||||
path: ./data.json
|
||||
|
||||
- name: Установить asserts и 1testrunner
|
||||
run: |
|
||||
opm install asserts
|
||||
opm install 1testrunner
|
||||
|
||||
- name: Установить OInt
|
||||
run: |
|
||||
TEMP_DEB="$(mktemp)" &&
|
||||
wget -O "$TEMP_DEB" 'https://api.athenaeum.digital/tc/job/Release/lastSuccessfulBuild/artifact/1.18.1/oint_1.18.1_all_en.deb' &&
|
||||
sudo dpkg -i "$TEMP_DEB"
|
||||
rm -f "$TEMP_DEB"
|
||||
|
||||
|
||||
|
||||
- name: ORM
|
||||
if: ${{ cancelled() }} == false
|
||||
run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./src/en/OInt/tests/Modules/internal/OPI_TestsCLI.os "CLI_Postgres_ORM"
|
||||
|
||||
- name: Записать логи
|
||||
if: ${{ cancelled() }} == false
|
||||
uses: actions/cache/save@v3
|
||||
with:
|
||||
key: logs-PostgreSQL
|
||||
path: ./docs/en/results/PostgreSQL
|
||||
|
||||
|
||||
Testing-SQLite:
|
||||
runs-on: ubuntu-latest
|
||||
needs: [Decode, Build]
|
||||
@ -1407,7 +1449,7 @@ jobs:
|
||||
|
||||
Encode:
|
||||
runs-on: ubuntu-latest
|
||||
needs: [Testing-Telegram,Testing-VK,Testing-Viber,Testing-Twitter,Testing-SQLite,Testing-YandexDisk,Testing-GoogleWorkspace,Testing-GoogleCalendar,Testing-GoogleDrive,Testing-GoogleSheets,Testing-Notion,Testing-Slack,Testing-Airtable,Testing-Dropbox,Testing-Bitrix24,Testing-VkTeams,Testing-Ozon,Testing-Neocities,Testing-CDEK,Testing-YandexMetrika,Testing-S3,Testing-TCP]
|
||||
needs: [Testing-Telegram,Testing-VK,Testing-Viber,Testing-Twitter,Testing-PostgreSQL,Testing-SQLite,Testing-YandexDisk,Testing-GoogleWorkspace,Testing-GoogleCalendar,Testing-GoogleDrive,Testing-GoogleSheets,Testing-Notion,Testing-Slack,Testing-Airtable,Testing-Dropbox,Testing-Bitrix24,Testing-VkTeams,Testing-Ozon,Testing-Neocities,Testing-CDEK,Testing-YandexMetrika,Testing-S3,Testing-TCP]
|
||||
if: ${{ always() }}
|
||||
permissions:
|
||||
contents: write
|
||||
@ -1499,6 +1541,22 @@ jobs:
|
||||
-H "X-GitHub-Api-Version: 2022-11-28" \
|
||||
"https://api.github.com/repos/Bayselonarrend/OpenIntegrations/actions/caches?key=logs-Twitter"
|
||||
|
||||
- name: Получить логи PostgreSQL
|
||||
uses: actions/cache/restore@v3
|
||||
with:
|
||||
key: logs-PostgreSQL
|
||||
path: ./docs/en/results/PostgreSQL
|
||||
|
||||
|
||||
- name: Очистка логов PostgreSQL
|
||||
run: |
|
||||
curl -L \
|
||||
-X DELETE \
|
||||
-H "Accept: application/vnd.github+json" \
|
||||
-H "Authorization: Bearer ${{ secrets.TOKEN }}" \
|
||||
-H "X-GitHub-Api-Version: 2022-11-28" \
|
||||
"https://api.github.com/repos/Bayselonarrend/OpenIntegrations/actions/caches?key=logs-PostgreSQL"
|
||||
|
||||
- name: Получить логи SQLite
|
||||
uses: actions/cache/restore@v3
|
||||
with:
|
||||
@ -1799,7 +1857,7 @@ jobs:
|
||||
|
||||
Clear-Cache:
|
||||
runs-on: ubuntu-latest
|
||||
needs: [Testing-Telegram, Testing-VK, Testing-Viber, Testing-Twitter, Testing-SQLite, Testing-YandexDisk, Testing-GoogleWorkspace, Testing-GoogleCalendar, Testing-GoogleDrive, Testing-GoogleSheets, Testing-Notion, Testing-Slack, Testing-Airtable, Testing-Dropbox, Testing-Bitrix24, Testing-VkTeams, Testing-Ozon, Testing-Neocities, Testing-CDEK, Testing-YandexMetrika, Testing-S3, Testing-TCP, Encode]
|
||||
needs: [Testing-Telegram, Testing-VK, Testing-Viber, Testing-Twitter, Testing-PostgreSQL, Testing-SQLite, Testing-YandexDisk, Testing-GoogleWorkspace, Testing-GoogleCalendar, Testing-GoogleDrive, Testing-GoogleSheets, Testing-Notion, Testing-Slack, Testing-Airtable, Testing-Dropbox, Testing-Bitrix24, Testing-VkTeams, Testing-Ozon, Testing-Neocities, Testing-CDEK, Testing-YandexMetrika, Testing-S3, Testing-TCP, Encode]
|
||||
if: ${{ always() }}
|
||||
steps:
|
||||
- name: Очистка основного кэша
|
||||
|
11
ci/cli_ostesten
vendored
11
ci/cli_ostesten
vendored
@ -239,6 +239,17 @@ pipeline {
|
||||
}
|
||||
}
|
||||
|
||||
stage('Testing-PostgreSQL') {
|
||||
steps {
|
||||
|
||||
|
||||
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
|
||||
powershell encoding: 'UTF-8', script:'1testrunner -run "./src/en/OInt/tests/Modules/internal/OPI_TestsCLI.os" "CLI_Postgres_ORM"'
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
stage('Testing-SQLite') {
|
||||
steps {
|
||||
|
||||
|
11
ci/ostesten
vendored
11
ci/ostesten
vendored
@ -239,6 +239,17 @@ pipeline {
|
||||
}
|
||||
}
|
||||
|
||||
stage('Testing-PostgreSQL') {
|
||||
steps {
|
||||
|
||||
|
||||
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
|
||||
powershell encoding: 'UTF-8', script:'1testrunner -run "./src/en/OInt/tests/Modules/internal/OPI_Tests.os" "Postgres_ORM"'
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
stage('Testing-SQLite') {
|
||||
steps {
|
||||
|
||||
|
4
docs/en/data/PostgreSQL/GetTableInformation.json
vendored
Normal file
4
docs/en/data/PostgreSQL/GetTableInformation.json
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"Address": "93.125.42.204",
|
||||
"Password": "12we..."
|
||||
}
|
30
docs/en/examples/PostgreSQL/AddRecords.txt
vendored
30
docs/en/examples/PostgreSQL/AddRecords.txt
vendored
@ -10,24 +10,18 @@
|
||||
Image = "https://api.athenaeum.digital/test_data/picture.jpg";
|
||||
OPI_TypeConversion.GetBinaryData(Image); // Image - Type: BinaryData
|
||||
|
||||
Char = New Map;
|
||||
Char.Insert("""char""", 1);
|
||||
|
||||
DP = New Map;
|
||||
DP.Insert("DOUBLE PRECISION", 1.0000000000000002);
|
||||
|
||||
RecordStructure = New Structure;
|
||||
RecordStructure.Insert("bool_field" , New Structure("BOOL" , True));
|
||||
RecordStructure.Insert("char_field" , Char);
|
||||
RecordStructure.Insert("smallint_field", New Structure("SMALLINT" , 5));
|
||||
RecordStructure.Insert("int_field" , New Structure("INT" , 100));
|
||||
RecordStructure.Insert("oid_field" , New Structure("OID" , 24576));
|
||||
RecordStructure.Insert("bigint_field" , New Structure("BIGINT" , 9999999));
|
||||
RecordStructure.Insert("real_field" , New Structure("REAL" , 15.2));
|
||||
RecordStructure.Insert("dp_field" , DP);
|
||||
RecordStructure.Insert("text_field" , New Structure("TEXT" , "Some text"));
|
||||
RecordStructure.Insert("bytea_field" , New Structure("BYTEA" , Image));
|
||||
RecordStructure.Insert("ts_field" , New Structure("TIMESTAMP", 1739207915));
|
||||
RecordStructure.Insert("ip_field" , New Structure("INET" , "127.0.0.1"));
|
||||
RecordStructure.Insert("bool_field" , New Structure("BOOL" , True));
|
||||
RecordStructure.Insert("char_field" , New Structure("OLDCHAR" , "A"));
|
||||
RecordStructure.Insert("smallint_field", New Structure("SMALLINT" , 5));
|
||||
RecordStructure.Insert("int_field" , New Structure("INT" , 100));
|
||||
RecordStructure.Insert("oid_field" , New Structure("OID" , 24576));
|
||||
RecordStructure.Insert("bigint_field" , New Structure("BIGINT" , 9999999));
|
||||
RecordStructure.Insert("real_field" , New Structure("REAL" , 15.2));
|
||||
RecordStructure.Insert("dp_field" , New Structure("DOUBLE_PRECISION", 1.0000000000000002));
|
||||
RecordStructure.Insert("text_field" , New Structure("TEXT" , "Some text"));
|
||||
RecordStructure.Insert("bytea_field" , New Structure("BYTEA" , Image));
|
||||
RecordStructure.Insert("ts_field" , New Structure("TIMESTAMP" , 1739207915));
|
||||
RecordStructure.Insert("ip_field" , New Structure("INET" , "127.0.0.1"));
|
||||
|
||||
Result = OPI_PostgreSQL.AddRecords(Table, RecordStructure, False, ConnectionString);
|
||||
|
10
docs/en/examples/PostgreSQL/GetTableInformation.txt
vendored
Normal file
10
docs/en/examples/PostgreSQL/GetTableInformation.txt
vendored
Normal file
@ -0,0 +1,10 @@
|
||||
Address = "93.125.42.204";
|
||||
Login = "bayselonarrend";
|
||||
Password = "12we...";
|
||||
Base = "testbase1";
|
||||
|
||||
ConnectionString = OPI_PostgreSQL.GenerateConnectionString(Address, Base, Login, Password);
|
||||
|
||||
Table = "testtable";
|
||||
|
||||
Result = OPI_PostgreSQL.GetTableInformation(Table, ConnectionString);
|
2
docs/en/md/SQLite/Orm/Create-table.mdx
vendored
2
docs/en/md/SQLite/Orm/Create-table.mdx
vendored
@ -19,7 +19,7 @@ import TabItem from '@theme/TabItem';
|
||||
| Connection | --db | String, Arbitrary | ✖ | Existing connection or database path |
|
||||
|
||||
|
||||
Returns: Structure Of KeyAndValue, String - The result of the execution or SQL query text
|
||||
Returns: Structure Of KeyAndValue, String - Result of query execution
|
||||
|
||||
<br/>
|
||||
|
||||
|
@ -18,7 +18,7 @@ import TabItem from '@theme/TabItem';
|
||||
| Connection | --db | String, Arbitrary | ✖ | Existing connection or database path |
|
||||
|
||||
|
||||
Returns: Structure Of KeyAndValue, String - The result of the execution or SQL query text
|
||||
Returns: Structure Of KeyAndValue, String - Result of query execution
|
||||
|
||||
<br/>
|
||||
|
||||
|
4
docs/ru/data/PostgreSQL/ПолучитьИнформациюОТаблице.json
vendored
Normal file
4
docs/ru/data/PostgreSQL/ПолучитьИнформациюОТаблице.json
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"Адрес": "93.125.42.204",
|
||||
"Пароль": "12we..."
|
||||
}
|
30
docs/ru/examples/PostgreSQL/ДобавитьЗаписи.txt
vendored
30
docs/ru/examples/PostgreSQL/ДобавитьЗаписи.txt
vendored
@ -10,24 +10,18 @@
|
||||
Картинка = "https://api.athenaeum.digital/test_data/picture.jpg";
|
||||
OPI_ПреобразованиеТипов.ПолучитьДвоичныеДанные(Картинка); // Картинка - Тип: ДвоичныеДанные
|
||||
|
||||
Char = Новый Соответствие;
|
||||
Char.Вставить("""char""", 1);
|
||||
|
||||
DP = Новый Соответствие;
|
||||
DP.Вставить("DOUBLE PRECISION", 1.0000000000000002);
|
||||
|
||||
СтруктураЗаписи = Новый Структура;
|
||||
СтруктураЗаписи.Вставить("bool_field" , Новый Структура("BOOL" , Истина));
|
||||
СтруктураЗаписи.Вставить("char_field" , Char);
|
||||
СтруктураЗаписи.Вставить("smallint_field", Новый Структура("SMALLINT" , 5));
|
||||
СтруктураЗаписи.Вставить("int_field" , Новый Структура("INT" , 100));
|
||||
СтруктураЗаписи.Вставить("oid_field" , Новый Структура("OID" , 24576));
|
||||
СтруктураЗаписи.Вставить("bigint_field" , Новый Структура("BIGINT" , 9999999));
|
||||
СтруктураЗаписи.Вставить("real_field" , Новый Структура("REAL" , 15.2));
|
||||
СтруктураЗаписи.Вставить("dp_field" , DP);
|
||||
СтруктураЗаписи.Вставить("text_field" , Новый Структура("TEXT" , "Some text"));
|
||||
СтруктураЗаписи.Вставить("bytea_field" , Новый Структура("BYTEA" , Картинка));
|
||||
СтруктураЗаписи.Вставить("ts_field" , Новый Структура("TIMESTAMP", 1739207915));
|
||||
СтруктураЗаписи.Вставить("ip_field" , Новый Структура("INET" , "127.0.0.1"));
|
||||
СтруктураЗаписи.Вставить("bool_field" , Новый Структура("BOOL" , Истина));
|
||||
СтруктураЗаписи.Вставить("char_field" , Новый Структура("OLDCHAR" , "A"));
|
||||
СтруктураЗаписи.Вставить("smallint_field", Новый Структура("SMALLINT" , 5));
|
||||
СтруктураЗаписи.Вставить("int_field" , Новый Структура("INT" , 100));
|
||||
СтруктураЗаписи.Вставить("oid_field" , Новый Структура("OID" , 24576));
|
||||
СтруктураЗаписи.Вставить("bigint_field" , Новый Структура("BIGINT" , 9999999));
|
||||
СтруктураЗаписи.Вставить("real_field" , Новый Структура("REAL" , 15.2));
|
||||
СтруктураЗаписи.Вставить("dp_field" , Новый Структура("DOUBLE_PRECISION", 1.0000000000000002));
|
||||
СтруктураЗаписи.Вставить("text_field" , Новый Структура("TEXT" , "Some text"));
|
||||
СтруктураЗаписи.Вставить("bytea_field" , Новый Структура("BYTEA" , Картинка));
|
||||
СтруктураЗаписи.Вставить("ts_field" , Новый Структура("TIMESTAMP" , 1739207915));
|
||||
СтруктураЗаписи.Вставить("ip_field" , Новый Структура("INET" , "127.0.0.1"));
|
||||
|
||||
Результат = OPI_PostgreSQL.ДобавитьЗаписи(Таблица, СтруктураЗаписи, Ложь, СтрокаПодключения);
|
||||
|
10
docs/ru/examples/PostgreSQL/ПолучитьИнформациюОТаблице.txt
vendored
Normal file
10
docs/ru/examples/PostgreSQL/ПолучитьИнформациюОТаблице.txt
vendored
Normal file
@ -0,0 +1,10 @@
|
||||
Адрес = "93.125.42.204";
|
||||
Логин = "bayselonarrend";
|
||||
Пароль = "12we...";
|
||||
База = "testbase1";
|
||||
|
||||
СтрокаПодключения = OPI_PostgreSQL.СформироватьСтрокуПодключения(Адрес, База, Логин, Пароль);
|
||||
|
||||
Таблица = "testtable";
|
||||
|
||||
Результат = OPI_PostgreSQL.ПолучитьИнформациюОТаблице(Таблица, СтрокаПодключения);
|
2
docs/ru/md/SQLite/Orm/Create-table.mdx
vendored
2
docs/ru/md/SQLite/Orm/Create-table.mdx
vendored
@ -19,7 +19,7 @@ import TabItem from '@theme/TabItem';
|
||||
| Соединение | --db | Строка, Произвольный | ✖ | Существующее соединение или путь к базе |
|
||||
|
||||
|
||||
Возвращаемое значение: Структура Из КлючИЗначение, Строка - Результат выполнения запроса или его текст
|
||||
Возвращаемое значение: Структура Из КлючИЗначение, Строка - Результат выполнения запроса
|
||||
|
||||
<br/>
|
||||
|
||||
|
@ -18,7 +18,7 @@ import TabItem from '@theme/TabItem';
|
||||
| Соединение | --db | Строка, Произвольный | ✖ | Существующее соединение или путь к базе |
|
||||
|
||||
|
||||
Возвращаемое значение: Структура Из КлючИЗначение, Строка - Результат выполнения запроса или его текст
|
||||
Возвращаемое значение: Структура Из КлючИЗначение, Строка - Результат выполнения запроса
|
||||
|
||||
<br/>
|
||||
|
||||
|
12914
service/dictionaries/en.json
vendored
12914
service/dictionaries/en.json
vendored
File diff suppressed because it is too large
Load Diff
27
src/en/OInt/core/Modules/OPI_PostgreSQL.os
vendored
27
src/en/OInt/core/Modules/OPI_PostgreSQL.os
vendored
@ -219,6 +219,31 @@ Function DropDatabase(Val Base, Val Connection = "") Export
|
||||
|
||||
EndFunction
|
||||
|
||||
// Get table information
|
||||
// Gets information about the table
|
||||
//
|
||||
// Parameters:
|
||||
// Table - String - Table name - table
|
||||
// Connection - String, Arbitrary - Connection or connection string - dbc
|
||||
//
|
||||
// Returns:
|
||||
// Structure Of KeyAndValue, String - Result of query execution
|
||||
Function GetTableInformation(Val Table, Val Connection = "") Export
|
||||
|
||||
OPI_TypeConversion.GetLine(Table);
|
||||
|
||||
TextSQL = "SELECT column_name, data_type, character_maximum_length
|
||||
|FROM information_schema.columns
|
||||
|WHERE table_name = '%1';";
|
||||
|
||||
TextSQL = StrTemplate(TextSQL, Table);
|
||||
|
||||
Result = ExecuteSQLQuery(TextSQL, , , Connection);
|
||||
|
||||
Return Result;
|
||||
|
||||
EndFunction
|
||||
|
||||
// Create table
|
||||
// Creates an empty table in the database
|
||||
//
|
||||
@ -462,7 +487,7 @@ Function ProcessBlobStructure(Val Value)
|
||||
DataValue = Value["BYTEA"];
|
||||
|
||||
If TypeOf(DataValue) = Type("BinaryData") Then
|
||||
Value = New Structure("BYTEA", Base64String(DataValue));
|
||||
Value = New Structure("BYTEA", Base64String(DataValue));
|
||||
Else
|
||||
|
||||
DataFile = New File(String(DataValue));
|
||||
|
4
src/en/OInt/core/Modules/OPI_SQLite.os
vendored
4
src/en/OInt/core/Modules/OPI_SQLite.os
vendored
@ -165,7 +165,7 @@ EndFunction
|
||||
// Connection - String, Arbitrary - Existing connection or database path - db
|
||||
//
|
||||
// Returns:
|
||||
// Structure Of KeyAndValue, String - The result of the execution or SQL query text
|
||||
// Structure Of KeyAndValue, String - Result of query execution
|
||||
Function GetTableInformation(Val Table, Val Connection = "") Export
|
||||
|
||||
OPI_TypeConversion.GetLine(Table);
|
||||
@ -188,7 +188,7 @@ EndFunction
|
||||
// Connection - String, Arbitrary - Existing connection or database path - db
|
||||
//
|
||||
// Returns:
|
||||
// Structure Of KeyAndValue, String - The result of the execution or SQL query text
|
||||
// Structure Of KeyAndValue, String - Result of query execution
|
||||
Function CreateTable(Val Table, Val ColoumnsStruct, Val Connection = "") Export
|
||||
|
||||
Result = OPI_SQLQueries.CreateTable(OPI_SQLite, Table, ColoumnsStruct, Connection);
|
||||
|
51
src/en/OInt/tests/Modules/internal/OPI_Tests.os
vendored
51
src/en/OInt/tests/Modules/internal/OPI_Tests.os
vendored
@ -2322,6 +2322,7 @@ Procedure Postgres_ORM() Export
|
||||
|
||||
PostgreSQL_CreateDatabase(TestParameters);
|
||||
PostgreSQL_CreateTable(TestParameters);
|
||||
PostgreSQL_GetTableInformation(TestParameters);
|
||||
PostgreSQL_AddRecords(TestParameters);
|
||||
PostgreSQL_DropDatabase(TestParameters);
|
||||
|
||||
@ -17370,6 +17371,26 @@ Procedure PostgreSQL_CreateTable(FunctionParameters)
|
||||
|
||||
EndProcedure
|
||||
|
||||
Procedure PostgreSQL_GetTableInformation(FunctionParameters)
|
||||
|
||||
Address = FunctionParameters["PG_IP"];
|
||||
Login = "bayselonarrend";
|
||||
Password = FunctionParameters["PG_Password"];
|
||||
Base = "testbase1";
|
||||
|
||||
ConnectionString = OPI_PostgreSQL.GenerateConnectionString(Address, Base, Login, Password);
|
||||
|
||||
Table = "testtable";
|
||||
|
||||
Result = OPI_PostgreSQL.GetTableInformation(Table, ConnectionString);
|
||||
|
||||
// END
|
||||
|
||||
OPI_TestDataRetrieval.WriteLog(Result, "AddRecords", "PostgreSQL");
|
||||
OPI_TestDataRetrieval.Check_ResultTrue(Result);
|
||||
|
||||
EndProcedure
|
||||
|
||||
Procedure PostgreSQL_AddRecords(FunctionParameters)
|
||||
|
||||
Address = FunctionParameters["PG_IP"];
|
||||
@ -17384,25 +17405,19 @@ Procedure PostgreSQL_AddRecords(FunctionParameters)
|
||||
Image = FunctionParameters["Picture"];
|
||||
OPI_TypeConversion.GetBinaryData(Image); // Image - Type: BinaryData
|
||||
|
||||
Char = New Map;
|
||||
Char.Insert("""char""", 1);
|
||||
|
||||
DP = New Map;
|
||||
DP.Insert("DOUBLE PRECISION", 1.0000000000000002);
|
||||
|
||||
RecordStructure = New Structure;
|
||||
RecordStructure.Insert("bool_field" , New Structure("BOOL" , True));
|
||||
RecordStructure.Insert("char_field" , Char);
|
||||
RecordStructure.Insert("smallint_field", New Structure("SMALLINT" , 5));
|
||||
RecordStructure.Insert("int_field" , New Structure("INT" , 100));
|
||||
RecordStructure.Insert("oid_field" , New Structure("OID" , 24576));
|
||||
RecordStructure.Insert("bigint_field" , New Structure("BIGINT" , 9999999));
|
||||
RecordStructure.Insert("real_field" , New Structure("REAL" , 15.2));
|
||||
RecordStructure.Insert("dp_field" , DP);
|
||||
RecordStructure.Insert("text_field" , New Structure("TEXT" , "Some text"));
|
||||
RecordStructure.Insert("bytea_field" , New Structure("BYTEA" , Image));
|
||||
RecordStructure.Insert("ts_field" , New Structure("TIMESTAMP", 1739207915));
|
||||
RecordStructure.Insert("ip_field" , New Structure("INET" , "127.0.0.1"));
|
||||
RecordStructure.Insert("bool_field" , New Structure("BOOL" , True));
|
||||
RecordStructure.Insert("char_field" , New Structure("OLDCHAR" , "A"));
|
||||
RecordStructure.Insert("smallint_field", New Structure("SMALLINT" , 5));
|
||||
RecordStructure.Insert("int_field" , New Structure("INT" , 100));
|
||||
RecordStructure.Insert("oid_field" , New Structure("OID" , 24576));
|
||||
RecordStructure.Insert("bigint_field" , New Structure("BIGINT" , 9999999));
|
||||
RecordStructure.Insert("real_field" , New Structure("REAL" , 15.2));
|
||||
RecordStructure.Insert("dp_field" , New Structure("DOUBLE_PRECISION", 1.0000000000000002));
|
||||
RecordStructure.Insert("text_field" , New Structure("TEXT" , "Some text"));
|
||||
RecordStructure.Insert("bytea_field" , New Structure("BYTEA" , Image));
|
||||
RecordStructure.Insert("ts_field" , New Structure("TIMESTAMP" , 1739207915));
|
||||
RecordStructure.Insert("ip_field" , New Structure("INET" , "127.0.0.1"));
|
||||
|
||||
Result = OPI_PostgreSQL.AddRecords(Table, RecordStructure, False, ConnectionString);
|
||||
|
||||
|
14
src/en/OInt/tools/Modules/OPI_SQLQueries.os
vendored
14
src/en/OInt/tools/Modules/OPI_SQLQueries.os
vendored
@ -50,8 +50,8 @@ Function CreateDatabase(Val Module, Val Base, Val Connection = "") Export
|
||||
|
||||
SetBaseName(Scheme, Base);
|
||||
|
||||
Request = FormSQLText(Scheme);
|
||||
Result = Module.ExecuteSQLQuery(Request, , , Connection);
|
||||
Request = FormSQLText(Scheme);
|
||||
Result = Module.ExecuteSQLQuery(Request, , , Connection);
|
||||
|
||||
Return Result;
|
||||
|
||||
@ -63,8 +63,8 @@ Function DropDatabase(Val Module, Val Base, Val Connection = "") Export
|
||||
|
||||
SetBaseName(Scheme, Base);
|
||||
|
||||
Request = FormSQLText(Scheme);
|
||||
Result = Module.ExecuteSQLQuery(Request, , , Connection);
|
||||
Request = FormSQLText(Scheme);
|
||||
Result = Module.ExecuteSQLQuery(Request, , , Connection);
|
||||
|
||||
Return Result;
|
||||
|
||||
@ -479,8 +479,8 @@ Function FormTextInsert(Val Scheme)
|
||||
|
||||
CheckSchemeRequiredFields(Scheme, "table,set");
|
||||
|
||||
Table = Scheme["table"];
|
||||
Fields = Scheme["set"];
|
||||
Table = Scheme["table"];
|
||||
Fields = Scheme["set"];
|
||||
Numeration = Scheme["nump"];
|
||||
Marker = Scheme["markp"];
|
||||
|
||||
@ -858,7 +858,7 @@ Function CreateConnectionInsideModule(Val Connector, Val Base)
|
||||
OPI_TypeConversion.GetLine(Base);
|
||||
OPI_Tools.RestoreEscapeSequences(Base);
|
||||
|
||||
FieldName = GetPrimaryFieldName(Connector);
|
||||
FieldName = GetPrimaryFieldName(Connector);
|
||||
Connector = AttachAddInOnServer(Connector);
|
||||
|
||||
Connector[FieldName] = Base;
|
||||
|
@ -2436,7 +2436,7 @@ Procedure ProcessSpecialOptionsSecrets(Val Library, Val Option, Value)
|
||||
|
||||
EndIf;
|
||||
|
||||
If Library = "postgres"
|
||||
If Library = "postgres"
|
||||
And Option = "conn" Then
|
||||
|
||||
Value = "postgresql://bayselonarrend:***@127.0.0.1:5432/";
|
||||
|
@ -219,6 +219,31 @@ Function DropDatabase(Val Base, Val Connection = "") Export
|
||||
|
||||
EndFunction
|
||||
|
||||
// Get table information
|
||||
// Gets information about the table
|
||||
//
|
||||
// Parameters:
|
||||
// Table - String - Table name - table
|
||||
// Connection - String, Arbitrary - Connection or connection string - dbc
|
||||
//
|
||||
// Returns:
|
||||
// Structure Of KeyAndValue, String - Result of query execution
|
||||
Function GetTableInformation(Val Table, Val Connection = "") Export
|
||||
|
||||
OPI_TypeConversion.GetLine(Table);
|
||||
|
||||
TextSQL = "SELECT column_name, data_type, character_maximum_length
|
||||
|FROM information_schema.columns
|
||||
|WHERE table_name = '%1';";
|
||||
|
||||
TextSQL = StrTemplate(TextSQL, Table);
|
||||
|
||||
Result = ExecuteSQLQuery(TextSQL, , , Connection);
|
||||
|
||||
Return Result;
|
||||
|
||||
EndFunction
|
||||
|
||||
// Create table
|
||||
// Creates an empty table in the database
|
||||
//
|
||||
@ -462,7 +487,7 @@ Function ProcessBlobStructure(Val Value)
|
||||
DataValue = Value["BYTEA"];
|
||||
|
||||
If TypeOf(DataValue) = Type("BinaryData") Then
|
||||
Value = New Structure("BYTEA", Base64String(DataValue));
|
||||
Value = New Structure("BYTEA", Base64String(DataValue));
|
||||
Else
|
||||
|
||||
DataFile = New File(String(DataValue));
|
||||
|
@ -50,8 +50,8 @@ Function CreateDatabase(Val Module, Val Base, Val Connection = "") Export
|
||||
|
||||
SetBaseName(Scheme, Base);
|
||||
|
||||
Request = FormSQLText(Scheme);
|
||||
Result = Module.ExecuteSQLQuery(Request, , , Connection);
|
||||
Request = FormSQLText(Scheme);
|
||||
Result = Module.ExecuteSQLQuery(Request, , , Connection);
|
||||
|
||||
Return Result;
|
||||
|
||||
@ -63,8 +63,8 @@ Function DropDatabase(Val Module, Val Base, Val Connection = "") Export
|
||||
|
||||
SetBaseName(Scheme, Base);
|
||||
|
||||
Request = FormSQLText(Scheme);
|
||||
Result = Module.ExecuteSQLQuery(Request, , , Connection);
|
||||
Request = FormSQLText(Scheme);
|
||||
Result = Module.ExecuteSQLQuery(Request, , , Connection);
|
||||
|
||||
Return Result;
|
||||
|
||||
@ -479,8 +479,8 @@ Function FormTextInsert(Val Scheme)
|
||||
|
||||
CheckSchemeRequiredFields(Scheme, "table,set");
|
||||
|
||||
Table = Scheme["table"];
|
||||
Fields = Scheme["set"];
|
||||
Table = Scheme["table"];
|
||||
Fields = Scheme["set"];
|
||||
Numeration = Scheme["nump"];
|
||||
Marker = Scheme["markp"];
|
||||
|
||||
@ -858,7 +858,7 @@ Function CreateConnectionInsideModule(Val Connector, Val Base)
|
||||
OPI_TypeConversion.GetLine(Base);
|
||||
OPI_Tools.RestoreEscapeSequences(Base);
|
||||
|
||||
FieldName = GetPrimaryFieldName(Connector);
|
||||
FieldName = GetPrimaryFieldName(Connector);
|
||||
Connector = AttachAddInOnServer(Connector);
|
||||
|
||||
Connector[FieldName] = Base;
|
||||
|
@ -165,7 +165,7 @@ EndFunction
|
||||
// Connection - String, Arbitrary - Existing connection or database path - db
|
||||
//
|
||||
// Returns:
|
||||
// Structure Of KeyAndValue, String - The result of the execution or SQL query text
|
||||
// Structure Of KeyAndValue, String - Result of query execution
|
||||
Function GetTableInformation(Val Table, Val Connection = "") Export
|
||||
|
||||
OPI_TypeConversion.GetLine(Table);
|
||||
@ -188,7 +188,7 @@ EndFunction
|
||||
// Connection - String, Arbitrary - Existing connection or database path - db
|
||||
//
|
||||
// Returns:
|
||||
// Structure Of KeyAndValue, String - The result of the execution or SQL query text
|
||||
// Structure Of KeyAndValue, String - Result of query execution
|
||||
Function CreateTable(Val Table, Val ColoumnsStruct, Val Connection = "") Export
|
||||
|
||||
Result = OPI_SQLQueries.CreateTable(OPI_SQLite, Table, ColoumnsStruct, Connection);
|
||||
|
@ -2436,7 +2436,7 @@ Procedure ProcessSpecialOptionsSecrets(Val Library, Val Option, Value)
|
||||
|
||||
EndIf;
|
||||
|
||||
If Library = "postgres"
|
||||
If Library = "postgres"
|
||||
And Option = "conn" Then
|
||||
|
||||
Value = "postgresql://bayselonarrend:***@127.0.0.1:5432/";
|
||||
|
@ -2322,6 +2322,7 @@ Procedure Postgres_ORM() Export
|
||||
|
||||
PostgreSQL_CreateDatabase(TestParameters);
|
||||
PostgreSQL_CreateTable(TestParameters);
|
||||
PostgreSQL_GetTableInformation(TestParameters);
|
||||
PostgreSQL_AddRecords(TestParameters);
|
||||
PostgreSQL_DropDatabase(TestParameters);
|
||||
|
||||
@ -17370,6 +17371,26 @@ Procedure PostgreSQL_CreateTable(FunctionParameters)
|
||||
|
||||
EndProcedure
|
||||
|
||||
Procedure PostgreSQL_GetTableInformation(FunctionParameters)
|
||||
|
||||
Address = FunctionParameters["PG_IP"];
|
||||
Login = "bayselonarrend";
|
||||
Password = FunctionParameters["PG_Password"];
|
||||
Base = "testbase1";
|
||||
|
||||
ConnectionString = OPI_PostgreSQL.GenerateConnectionString(Address, Base, Login, Password);
|
||||
|
||||
Table = "testtable";
|
||||
|
||||
Result = OPI_PostgreSQL.GetTableInformation(Table, ConnectionString);
|
||||
|
||||
// END
|
||||
|
||||
OPI_TestDataRetrieval.WriteLog(Result, "AddRecords", "PostgreSQL");
|
||||
OPI_TestDataRetrieval.Check_ResultTrue(Result);
|
||||
|
||||
EndProcedure
|
||||
|
||||
Procedure PostgreSQL_AddRecords(FunctionParameters)
|
||||
|
||||
Address = FunctionParameters["PG_IP"];
|
||||
@ -17384,25 +17405,19 @@ Procedure PostgreSQL_AddRecords(FunctionParameters)
|
||||
Image = FunctionParameters["Picture"];
|
||||
OPI_TypeConversion.GetBinaryData(Image); // Image - Type: BinaryData
|
||||
|
||||
Char = New Map;
|
||||
Char.Insert("""char""", 1);
|
||||
|
||||
DP = New Map;
|
||||
DP.Insert("DOUBLE PRECISION", 1.0000000000000002);
|
||||
|
||||
RecordStructure = New Structure;
|
||||
RecordStructure.Insert("bool_field" , New Structure("BOOL" , True));
|
||||
RecordStructure.Insert("char_field" , Char);
|
||||
RecordStructure.Insert("smallint_field", New Structure("SMALLINT" , 5));
|
||||
RecordStructure.Insert("int_field" , New Structure("INT" , 100));
|
||||
RecordStructure.Insert("oid_field" , New Structure("OID" , 24576));
|
||||
RecordStructure.Insert("bigint_field" , New Structure("BIGINT" , 9999999));
|
||||
RecordStructure.Insert("real_field" , New Structure("REAL" , 15.2));
|
||||
RecordStructure.Insert("dp_field" , DP);
|
||||
RecordStructure.Insert("text_field" , New Structure("TEXT" , "Some text"));
|
||||
RecordStructure.Insert("bytea_field" , New Structure("BYTEA" , Image));
|
||||
RecordStructure.Insert("ts_field" , New Structure("TIMESTAMP", 1739207915));
|
||||
RecordStructure.Insert("ip_field" , New Structure("INET" , "127.0.0.1"));
|
||||
RecordStructure.Insert("bool_field" , New Structure("BOOL" , True));
|
||||
RecordStructure.Insert("char_field" , New Structure("OLDCHAR" , "A"));
|
||||
RecordStructure.Insert("smallint_field", New Structure("SMALLINT" , 5));
|
||||
RecordStructure.Insert("int_field" , New Structure("INT" , 100));
|
||||
RecordStructure.Insert("oid_field" , New Structure("OID" , 24576));
|
||||
RecordStructure.Insert("bigint_field" , New Structure("BIGINT" , 9999999));
|
||||
RecordStructure.Insert("real_field" , New Structure("REAL" , 15.2));
|
||||
RecordStructure.Insert("dp_field" , New Structure("DOUBLE_PRECISION", 1.0000000000000002));
|
||||
RecordStructure.Insert("text_field" , New Structure("TEXT" , "Some text"));
|
||||
RecordStructure.Insert("bytea_field" , New Structure("BYTEA" , Image));
|
||||
RecordStructure.Insert("ts_field" , New Structure("TIMESTAMP" , 1739207915));
|
||||
RecordStructure.Insert("ip_field" , New Structure("INET" , "127.0.0.1"));
|
||||
|
||||
Result = OPI_PostgreSQL.AddRecords(Table, RecordStructure, False, ConnectionString);
|
||||
|
||||
|
25
src/ru/OInt/core/Modules/OPI_PostgreSQL.os
vendored
25
src/ru/OInt/core/Modules/OPI_PostgreSQL.os
vendored
@ -219,6 +219,31 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить информацию о таблице
|
||||
// Получает информацию о таблице
|
||||
//
|
||||
// Параметры:
|
||||
// Таблица - Строка - Имя таблицы - table
|
||||
// Соединение - Строка, Произвольный - Соединение или строка подключения - dbc
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура Из КлючИЗначение, Строка - Результат выполнения запроса
|
||||
Функция ПолучитьИнформациюОТаблице(Знач Таблица, Знач Соединение = "") Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Таблица);
|
||||
|
||||
ТекстSQL = "SELECT column_name, data_type, character_maximum_length
|
||||
|FROM information_schema.columns
|
||||
|WHERE table_name = '%1';";
|
||||
|
||||
ТекстSQL = СтрШаблон(ТекстSQL, Таблица);
|
||||
|
||||
Результат = ВыполнитьЗапросSQL(ТекстSQL, , , Соединение);
|
||||
|
||||
Возврат Результат;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Создать таблицу
|
||||
// Создает пустую таблицу в базе
|
||||
//
|
||||
|
4
src/ru/OInt/core/Modules/OPI_SQLite.os
vendored
4
src/ru/OInt/core/Modules/OPI_SQLite.os
vendored
@ -165,7 +165,7 @@
|
||||
// Соединение - Строка, Произвольный - Существующее соединение или путь к базе - db
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура Из КлючИЗначение, Строка - Результат выполнения запроса или его текст
|
||||
// Структура Из КлючИЗначение, Строка - Результат выполнения запроса
|
||||
Функция ПолучитьИнформациюОТаблице(Знач Таблица, Знач Соединение = "") Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Таблица);
|
||||
@ -188,7 +188,7 @@
|
||||
// Соединение - Строка, Произвольный - Существующее соединение или путь к базе - db
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура Из КлючИЗначение, Строка - Результат выполнения запроса или его текст
|
||||
// Структура Из КлючИЗначение, Строка - Результат выполнения запроса
|
||||
Функция СоздатьТаблицу(Знач Таблица, Знач СтруктураКолонок, Знач Соединение = "") Экспорт
|
||||
|
||||
Результат = OPI_ЗапросыSQL.СоздатьТаблицу(OPI_SQLite, Таблица, СтруктураКолонок, Соединение);
|
||||
|
51
src/ru/OInt/tests/Modules/internal/OPI_Тесты.os
vendored
51
src/ru/OInt/tests/Modules/internal/OPI_Тесты.os
vendored
@ -2322,6 +2322,7 @@
|
||||
|
||||
PostgreSQL_СоздатьБазуДанных(ПараметрыТеста);
|
||||
PostgreSQL_СоздатьТаблицу(ПараметрыТеста);
|
||||
PostgreSQL_ПолучитьИнформациюОТаблице(ПараметрыТеста);
|
||||
PostgreSQL_ДобавитьЗаписи(ПараметрыТеста);
|
||||
PostgreSQL_УдалитьБазуДанных(ПараметрыТеста);
|
||||
|
||||
@ -17370,6 +17371,26 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура PostgreSQL_ПолучитьИнформациюОТаблице(ПараметрыФункции)
|
||||
|
||||
Адрес = ПараметрыФункции["PG_IP"];
|
||||
Логин = "bayselonarrend";
|
||||
Пароль = ПараметрыФункции["PG_Password"];
|
||||
База = "testbase1";
|
||||
|
||||
СтрокаПодключения = OPI_PostgreSQL.СформироватьСтрокуПодключения(Адрес, База, Логин, Пароль);
|
||||
|
||||
Таблица = "testtable";
|
||||
|
||||
Результат = OPI_PostgreSQL.ПолучитьИнформациюОТаблице(Таблица, СтрокаПодключения);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ДобавитьЗаписи", "PostgreSQL");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_РезультатИстина(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура PostgreSQL_ДобавитьЗаписи(ПараметрыФункции)
|
||||
|
||||
Адрес = ПараметрыФункции["PG_IP"];
|
||||
@ -17384,25 +17405,19 @@
|
||||
Картинка = ПараметрыФункции["Picture"];
|
||||
OPI_ПреобразованиеТипов.ПолучитьДвоичныеДанные(Картинка); // Картинка - Тип: ДвоичныеДанные
|
||||
|
||||
Char = Новый Соответствие;
|
||||
Char.Вставить("""char""", 1);
|
||||
|
||||
DP = Новый Соответствие;
|
||||
DP.Вставить("DOUBLE PRECISION", 1.0000000000000002);
|
||||
|
||||
СтруктураЗаписи = Новый Структура;
|
||||
СтруктураЗаписи.Вставить("bool_field" , Новый Структура("BOOL" , Истина));
|
||||
СтруктураЗаписи.Вставить("char_field" , Char);
|
||||
СтруктураЗаписи.Вставить("smallint_field", Новый Структура("SMALLINT" , 5));
|
||||
СтруктураЗаписи.Вставить("int_field" , Новый Структура("INT" , 100));
|
||||
СтруктураЗаписи.Вставить("oid_field" , Новый Структура("OID" , 24576));
|
||||
СтруктураЗаписи.Вставить("bigint_field" , Новый Структура("BIGINT" , 9999999));
|
||||
СтруктураЗаписи.Вставить("real_field" , Новый Структура("REAL" , 15.2));
|
||||
СтруктураЗаписи.Вставить("dp_field" , DP);
|
||||
СтруктураЗаписи.Вставить("text_field" , Новый Структура("TEXT" , "Some text"));
|
||||
СтруктураЗаписи.Вставить("bytea_field" , Новый Структура("BYTEA" , Картинка));
|
||||
СтруктураЗаписи.Вставить("ts_field" , Новый Структура("TIMESTAMP", 1739207915));
|
||||
СтруктураЗаписи.Вставить("ip_field" , Новый Структура("INET" , "127.0.0.1"));
|
||||
СтруктураЗаписи.Вставить("bool_field" , Новый Структура("BOOL" , Истина));
|
||||
СтруктураЗаписи.Вставить("char_field" , Новый Структура("OLDCHAR" , "A"));
|
||||
СтруктураЗаписи.Вставить("smallint_field", Новый Структура("SMALLINT" , 5));
|
||||
СтруктураЗаписи.Вставить("int_field" , Новый Структура("INT" , 100));
|
||||
СтруктураЗаписи.Вставить("oid_field" , Новый Структура("OID" , 24576));
|
||||
СтруктураЗаписи.Вставить("bigint_field" , Новый Структура("BIGINT" , 9999999));
|
||||
СтруктураЗаписи.Вставить("real_field" , Новый Структура("REAL" , 15.2));
|
||||
СтруктураЗаписи.Вставить("dp_field" , Новый Структура("DOUBLE_PRECISION", 1.0000000000000002));
|
||||
СтруктураЗаписи.Вставить("text_field" , Новый Структура("TEXT" , "Some text"));
|
||||
СтруктураЗаписи.Вставить("bytea_field" , Новый Структура("BYTEA" , Картинка));
|
||||
СтруктураЗаписи.Вставить("ts_field" , Новый Структура("TIMESTAMP" , 1739207915));
|
||||
СтруктураЗаписи.Вставить("ip_field" , Новый Структура("INET" , "127.0.0.1"));
|
||||
|
||||
Результат = OPI_PostgreSQL.ДобавитьЗаписи(Таблица, СтруктураЗаписи, Ложь, СтрокаПодключения);
|
||||
|
||||
|
14
src/ru/OInt/tools/Modules/OPI_ЗапросыSQL.os
vendored
14
src/ru/OInt/tools/Modules/OPI_ЗапросыSQL.os
vendored
@ -50,7 +50,7 @@
|
||||
|
||||
УстановитьИмяБазы(Схема, База);
|
||||
|
||||
Запрос = СформироватьТекстSQL(Схема);
|
||||
Запрос = СформироватьТекстSQL(Схема);
|
||||
Результат = Модуль.ВыполнитьЗапросSQL(Запрос, , , Соединение);
|
||||
|
||||
Возврат Результат;
|
||||
@ -63,7 +63,7 @@
|
||||
|
||||
УстановитьИмяБазы(Схема, База);
|
||||
|
||||
Запрос = СформироватьТекстSQL(Схема);
|
||||
Запрос = СформироватьТекстSQL(Схема);
|
||||
Результат = Модуль.ВыполнитьЗапросSQL(Запрос, , , Соединение);
|
||||
|
||||
Возврат Результат;
|
||||
@ -479,10 +479,10 @@
|
||||
|
||||
ПроверитьОбязательныеПоляСхемы(Схема, "table,set");
|
||||
|
||||
Таблица = Схема["table"];
|
||||
Поля = Схема["set"];
|
||||
Нумерация = Схема["nump"];
|
||||
Маркер = Схема["markp"];
|
||||
Таблица = Схема["table"];
|
||||
Поля = Схема["set"];
|
||||
Нумерация = Схема["nump"];
|
||||
Маркер = Схема["markp"];
|
||||
|
||||
ШаблонSQL = "INSERT INTO %1 (%2) VALUES (%3)";
|
||||
|
||||
@ -858,7 +858,7 @@
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(База);
|
||||
OPI_Инструменты.ВернутьУправляющиеПоследовательности(База);
|
||||
|
||||
ИмяПоля = ПолучитьИмяОсновногоПоля(Коннектор);
|
||||
ИмяПоля = ПолучитьИмяОсновногоПоля(Коннектор);
|
||||
Коннектор = ПодключитьКомпонентуНаСервере(Коннектор);
|
||||
|
||||
Коннектор[ИмяПоля] = База;
|
||||
|
@ -232,10 +232,10 @@
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Таблица);
|
||||
|
||||
ТекстSQL = "SELECT column_name, data_type, character_maximum_length
|
||||
|FROM information_schema.columns
|
||||
|WHERE table_name = '%1';";
|
||||
|
||||
ТекстSQL = "SELECT column_name, data_type, character_maximum_length
|
||||
|FROM information_schema.columns
|
||||
|WHERE table_name = '%1';";
|
||||
|
||||
ТекстSQL = СтрШаблон(ТекстSQL, Таблица);
|
||||
|
||||
Результат = ВыполнитьЗапросSQL(ТекстSQL, , , Соединение);
|
||||
|
@ -50,7 +50,7 @@
|
||||
|
||||
УстановитьИмяБазы(Схема, База);
|
||||
|
||||
Запрос = СформироватьТекстSQL(Схема);
|
||||
Запрос = СформироватьТекстSQL(Схема);
|
||||
Результат = Модуль.ВыполнитьЗапросSQL(Запрос, , , Соединение);
|
||||
|
||||
Возврат Результат;
|
||||
@ -63,7 +63,7 @@
|
||||
|
||||
УстановитьИмяБазы(Схема, База);
|
||||
|
||||
Запрос = СформироватьТекстSQL(Схема);
|
||||
Запрос = СформироватьТекстSQL(Схема);
|
||||
Результат = Модуль.ВыполнитьЗапросSQL(Запрос, , , Соединение);
|
||||
|
||||
Возврат Результат;
|
||||
@ -479,10 +479,10 @@
|
||||
|
||||
ПроверитьОбязательныеПоляСхемы(Схема, "table,set");
|
||||
|
||||
Таблица = Схема["table"];
|
||||
Поля = Схема["set"];
|
||||
Нумерация = Схема["nump"];
|
||||
Маркер = Схема["markp"];
|
||||
Таблица = Схема["table"];
|
||||
Поля = Схема["set"];
|
||||
Нумерация = Схема["nump"];
|
||||
Маркер = Схема["markp"];
|
||||
|
||||
ШаблонSQL = "INSERT INTO %1 (%2) VALUES (%3)";
|
||||
|
||||
@ -858,7 +858,7 @@
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(База);
|
||||
OPI_Инструменты.ВернутьУправляющиеПоследовательности(База);
|
||||
|
||||
ИмяПоля = ПолучитьИмяОсновногоПоля(Коннектор);
|
||||
ИмяПоля = ПолучитьИмяОсновногоПоля(Коннектор);
|
||||
Коннектор = ПодключитьКомпонентуНаСервере(Коннектор);
|
||||
|
||||
Коннектор[ИмяПоля] = База;
|
||||
|
@ -17381,14 +17381,14 @@
|
||||
СтрокаПодключения = OPI_PostgreSQL.СформироватьСтрокуПодключения(Адрес, База, Логин, Пароль);
|
||||
|
||||
Таблица = "testtable";
|
||||
|
||||
|
||||
Результат = OPI_PostgreSQL.ПолучитьИнформациюОТаблице(Таблица, СтрокаПодключения);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ДобавитьЗаписи", "PostgreSQL");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_РезультатИстина(Результат);
|
||||
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура PostgreSQL_ДобавитьЗаписи(ПараметрыФункции)
|
||||
|
Loading…
x
Reference in New Issue
Block a user