Polecenie xlsImport kopiuje dane z arkusza Microsoft Excel (XLS file) do tabeli bazy danych.
Składnia:
xlsImport(file, [alias.]table[, hasHeader = 0 | 1][, sheetNumber = N])
file - nazwa pliku XLS
alias - alias do bazy danych
table - nazwa tabeli, która ma być utworzona
hasHeader - 1 jeżeli pierwszy wiersz pliku CSV zawiera nazwę kolumny, 0 w innym przypadku. Domyślnie : 1
sheetNumber - liczba arkuszy, z których będą czytane dane. Domyślnie : 0 (the first sheet).
Polecenie csvImport kopiuje dane z pliku CSV do tabeli bazy danych.
Składnia:
csvImport(file, alias.table[, hasHeader = 0 | 1][, rowsToAnalyze = n]
[,textSeparator = c][, separator = c][, breakOnError = 0 | 1][, deleteTable = 0 | 1]
columnNames = [s1, s2, ... ], dateFormat = s | { n1 : s1, n2 : s2, ... },
[,decimalSeparator = c][, columnType = {n1 : t1, n2 : t2, ... }]
[,language = aa | ab | af | am | ... ][, quotedString = 0 | 1]
[,encoding = "UTF-8" | "UTF-16" | ... ][, skipErroneous = 0 | 1]
[,newLinesAllowed = 0 | 1][, lineConverter = converterObject.converterMethod] )
file - nazwa pliku XLS
alias - alias do bazy danych
table - nazwa tabeli, która ma być utworzona
hasHeader - 1 jeżeli pierwszy wiersz pliku CSV zawiera nazwę kolumny, 0 w innym przypadku. Domyślnie : 1
rowsToAnalyze - liczba wierszy do analizy dla ustalenia typu kolumny. Jeżeli wszystkie wiersze są analizowane, ładowanie danych może wydłużyć się dwukrotnie w stosunku do przypadku gdy analizowany jest tylko pierwszy wiersz. Domyślnie : wszystkie wiersze.
textSeparator - znak, który oddziela tekstowe wpisy. Domyślnie : '"' (double quote), textSeperator=None jest równy z textSeparator="".
separator - znak, który oddziela kolejne kolumny. Domyślnie : ',' (comma)
breakOnError - jeżeli 1, import zatrzyma się przy napotkaniu błędu. Domyślnie: 1.
deleteTable - jeżeli 1, każda istniejąca tabela z taką samą nazwą zostanie nadpisana. Wartość 0 narzuca warunek jeżeli tabela wyjściowa istnieje. Domyślnie : 0
prefix - prefiks dla automatycznie generowanych nazw kolumn. Domyślnie : "column".
columnNames - nazwa wszystkich kolumn w pliku.
dateFormat - format wpisanych danych z tabeli importowanej. Dla każdego wpisu danych w tabeli każdy pojedynczy styl może być wyszczególniony lub każda kolumna może mieć inny format – w przypadku: n1, n2, ... jest 1-bazowy indks kolumny. Składnia stylu danych do jest do znalezienia pod adresem http://download.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html. Domyślnie, następujące formaty są wypróbowane: "yyyy-MM-dd", "yyyy.MM.dd", "yyyy/MM/dd", "dd-MM-yyyy", "dd.MM.yyyy", "dd/MM/yyyy". Ciąg znaków w importowanej tabeli musi mieć idealnie dopasowany format deklaracji (lub domyślnie, jeżeli deklaracja nie została określona), aby był interpretowany jako dane wejściowe.
language - sprecyzowanie języka do interpretacji pól z datą (dla przypadku z formatem daty jak "ddMMMyyy"). Dwuliterowe, pisane z małych liter znaki są używane (ISO 639). Parametr może być ustawiony dla każdej z kolumn w postaci ciągu znaków (i.e. "aa | ab | af | am") lub jako słownik (i.e. {1:'aa', 2:'af' }). Więcej informacji na temat kodowania w językach znajdziesz w załączniku: Language Codes.
decimalSeparator - znak użyty jako separator dziesiętny. Domyślnie: '.'
columnType - typ kolumny - n1, n2, ... jest jednoznakowym indeksem kolumny, t1, t2, ... może być: LONGVARCHAR, DOUBLE lub DATE. Domyślnie typy kolumn określane są automatycznie.
quotedAsString - Jeżeli 1, wartości numeryczne w apostrofach interpretowane są jako ćiągi znaków. Domyślnie: 0.
encoding - kodowanie pliku wejściowego. Domyślnie : domyślne kodowanie serwera operacyjnego. Kompletna lista kodowania dostępna jest tu: http://download.oracle.com/javase/1.3/docs/guide/intl/encoding.doc.html
skipErroneous - Jeżeli 1, wiersze z błędami (takimi jak: błędny typ danych, błędna liczba wartości w kolumnach) są pomijane. Domyślnie: 0.
newLinesAllowed - Jeżeli 1, nowa linia między separatorami kolumn jest dozwolona. Domyślnie: 0.
maxWarnings - maksymalna liczba wyświetlanych ostrzeżeń. Domyślnie: 100.
lineConverter - umożliwia transformację linii do priorytowego importu (włączając zwielokrotnienie lub usuwanie). Konwerter linii zdefiniowany jest jako obiekt Java converterObject i należy do klasy converterClass. Klasa ta musi definiować metodę converterMethod, która wykonuje aktualną transformację. converterClass oraz converterObject musi definiować skrypt z priorytetowym wywołaniem komendy csvImport. Zobacz przykłady poniżej.
Przy podawaniu ścieżki do pliku trzeba uważać na używanie połączeń slasha i małych liter. Jeśli wystąpi błąd (np. gdy w ścieżce mamy "\a") należy użyć podwójnego slasha.
Przykład 4.5. importowanie pliku CSV
csvImport('c:\\some_data.csv', 'some_data', separator = ';', columnNames = ['first', 'second'], dateFormat = {1: 'MM-dd-yyyy'}, columnType = {1: DATE, 2: LONGVARCHAR})
Przykład 4.6. importowanie pliku CSV, ale z pominięciem pierwszych 10 linii
# Przykład 1 - pominięcie pierwszych 10 linii class MyConverter: def convert(self, line, linenum): # print '*'*5, linenum, repr(line) if linenum < 10: return '' # usunięcie linii else: return line t = MyConverter() csvImport(r'C:\test.csv', 'cup664', lineConverter=t.convert)
xlsExport kopiuje dane z tabeli bazy danych do akrusza copies the data Microsoft Excel (XLS).
Składnia:
xlsExport([alias.]table, file[, hasHeader = 0 | 1][, sheetName = name]
[, xlsDateFormat=format_string][, use1904windowing = 0 | 1])
alias - alias do bazy danych
table - nazwa tabeli
file - nazwa pliku XLS, który ma być utworzony (razem z ścieżką)
hasHeader - 1 jeżeli pierwszy wiersz w pliku CSV powinien zawierać nazwę kolumny, 0 w innym przypadku. Domyślnie: 1
sheetName - nazwa arkusza do utworzenia w tabeli wyjściowej. Jeżeli pominięty lub wartość wynosi null, użyta będzie nazwa tabeli.
xlsDateFormat - ciąg określający format daty w pliku wyjściowym: y - rok, m - miesiąc, d - dzień. Domyślną wartością jest 'yyyy.m.d'.
use1904windowing - jeżeli 1, wszystkie daty będą zapisane używając systemu datowania w Excelu 1904 date system (np. daty składowane są jako liczby dni od Styczeń 1, 1904. Domyślnie: 0, np. daty składowane są jako liczby dni od Styczeń 1, 1900).
Komenda csvExport kopiuje dane z tabeli bazy danych do pliku CSV.
Składnia:
csvExport(alias.table, file[, hasHeader = 0 | 1][, deleteFile = 0 | 1]
[,separator = c][, dateFormat = s][, decimalSeparator = c][, encoding = "UTF-8"|"UTF-16"| ... ]
[,language = aa | ab | af | am | ... ][, textSeparator = c][, forceTextSeparator = 0 | 1 ])
alias - alias do bazy danych
table - nazwa tabeli
file - nazwa pliku CSV, który ma być utworzony (razem z ścieżką)
hasHeader - 1 jeżeli pierwszy wiersz w pliku CSV powinien zawierać nazwę kolumny, 0 w innym przypadku. Domyślnie: 1
deleteFile - jeżeli 1, istnijący plik z taką samą nazwą będzie nadpisany. Domyślnie: 0
separator - znak, który oddziela sąsiadujące kolumny. Domyślnie: ',' (comma)
dateFormat - format wpisów dat. Składnia dla formatu dat można znaleźć na http://download.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html. Domyślnie: "yyyy-MM-dd".
decimalSeparator - znak, używany jako separator dziesiętny. Domyślnie: '.'
encoding - kodowanie pliku wejściowego. Domyślnie : domyślne kodowanie serwera operacyjnego. Kompletna lista kodowania dostępna jest tu: http://download.oracle.com/javase/1.3/docs/guide/intl/encoding.doc.html
language - znaki dwuliterowe, pisane z małych liter (ISO 639) , które definiują język używany do interpretacji pół dat (dla przykładu format daty "ddMMMyyy"). Więcej informacji na temat kodowania dla języka znajdziesz w załączniku: Language Codes.
textSeparator - znak, który oddziela tekstowe wpisy. Domyślnie : '"' (double quote), textSeperator=None is equivalent to textSeparator="".
forceTextSeparator - jeżeli ustawione 0, textSeparator jest pomijany, chyba że eksportowany plik napotka na problemy podczas importowania. Default: 1 - textSeparator będzie użyty.
Polecenie tableColumns zwraca listę obiektów z nazwami kolumn w wybranej tabeli bazy danych. Jeżeli określona tabela nie istnieje, wystąpi wyjątek. Zwracana lista jest zmienna.
Składnia:
tableColumns(alias.table)
table - nazwa tabeli.
alias - alias do bazy danych