Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Старожил


Сообщения: 211
Благодарности: 2

Профиль | Отправить PM | Цитировать


Пока только получилось сохранить данные в файл csv и после импорта уже разбирать его.
Скрипт
Код: Выделить весь код
$datasource = "D:\base_dw.db"
$file = "D:\123.csv" 
[string]$time= "Table_" + [int64](([datetime]::UtcNow)-(get-date "1/1/1970")).TotalSeconds

$comand = @"
drop table qqqqqqq;
create global temporary table qqqqqqq
( ncount number,
  rerror varchar (1000))
  on commit delete rows; 
DECLARE 
rrrr  rta.list.request_id%TYPE;
begin    
   dbms_output.enable (buffer_size => NULL);  
  FOR jj IN (select distinct result_detail from rta.list where system_date>='16.02.2022' and operation_error='ERROR')
  loop 
      select count(result_detail) into rrrr from rta.list where result_detail=jj.result_detail and system_date>='16.02.2022';
      Insert into qqqqqqq(ncount,rerror) values (rrrr,jj.result_detail);
      --dbms_output.put_line(rrrr||'::::'||jj.result_detail);
   end loop;
end;
/
select * from qqqqqqq;
"@


$comand | D:\sqlcl\bin\sql.exe -silent -oci **** | Where {$_} |Out-File $file

    # Создаем столбцы и указываем типы данных
     $table = New-Object system.Data.DataTable 'TestDataTable1'
     $newcol = New-Object system.Data.DataColumn SYSDATETIME,([datetime]); 
     $table.columns.add($newcol)
     $newcol = New-Object system.Data.DataColumn COUNT_ERROR,([int]); 
     $table.columns.add($newcol)
     $newcol = New-Object system.Data.DataColumn BODY_ERROR,([string]); 
     $table.columns.add($newcol)
     
        
     # Записываем инфу в ранее созданные столбцы из CSV
     $csv = Import-CSV $file -delimiter "," 
     $csv | ForEach-Object {
         $row = $table.NewRow()
         $row.SYSDATETIME= (get-date).ToString()  #('HH:00:00')
         $row.COUNT_ERROR= ($_.COUNT_ERROR)
         $row.BODY_ERROR= ($_.BODY_ERROR)
         $table.Rows.Add($row)   }

Invoke-SQLiteBulkCopy -DataTable $table  -DataSource $DataSource  -Table "count_error" -force

Может кто знает как можно обойтись без экспорта и импорта файла? Решить все в теле скрипта?

Отправлено: 21:27, 15-03-2022 | #2