-
MY PROJECTS
-
Recent Posts
- SQL.How can you compare two nullable values safely, and how does IS DISTINCT FROM differ from <>?
- SQL.How are NULL values ordered by ORDER BY, how do defaults differ between databases, and how can you control their placement?
- SQL.How does NULL propagate through arithmetic expressions, and how can COALESCE and NULLIF help handle missing values and division by zero?
- SQL.How does NULL affect join conditions, and why can filtering the right-hand table in WHERE remove unmatched rows from a LEFT JOIN?
- SQL.How do GROUP BY and DISTINCT treat NULL values, even though NULL = NULL evaluates to UNKNOWN?
- SQL.How do aggregate functions handle NULL, and what is the difference between COUNT(*), COUNT(column), and COUNT(DISTINCT column)?
- SQL.How does NULL affect IN and NOT IN, and why can NOT EXISTS be a safer choice when a subquery returns nullable values?
- SQL.How do WHERE, HAVING, and CHECK constraints treat conditions that evaluate to UNKNOWN?
- SQL.Why do column = NULL and column <> NULL not work as expected, and when should you use IS NULL and IS NOT NULL?
- SQL.What is SQL’s three-valued logic (TRUE, FALSE, UNKNOWN), and how do AND, OR, and NOT behave with UNKNOWN?
- ChromeDevTools.Watch all failed requests
- SQL.What are domain types (or constraints on data types), and how do they help enforce data correctness?
- SQL.How does SQL handle comparisons between different data types (for example, string vs number), and why is this dangerous?
- SQL.What is the difference between DATE, TIME, TIMESTAMP, and TIMESTAMPTZ, and which one should be used for business events?
- SQL.How do numeric types like INTEGER, BIGINT, DECIMAL, and FLOAT differ in terms of precision and use cases?
- SQL.What problems can arise from implicit type casting in SQL, and how can it affect indexes?
- SQL.How does NULL differ from 0, an empty string, or FALSE in SQL?
- SQL.What is the difference between CHAR, VARCHAR, and TEXT, and when would you choose each?
- SQL.What is MVCC ?
- SQL.What is AutoVacuum Postgres ?
Categories
- Aptana
- Azure
- C#
- DataSnap
- DBExpress
- Delphi
- Delphi и сети
- Delphi. Язык программирования
- ExtJS
- FastReport
- FireDAC
- FireMonkey
- GIT
- ICS
- IDE
- IIS
- Indy
- InnoSetup
- javascript
- jQuery
- JSON
- LiveBindings
- MSHTML
- MySQL
- PHP
- REST
- Ribbons
- SMS
- SQL инструкции
- SVN
- TRichView
- UniGui
- WebBroker
- WinAPI
- Windows
- Алгоритмы
- Без рубрики
- Деревья
- Ищу ответ
- Компонентостроение
- Мои компоненты
- Начальный уровень
- Обработка исключений
- Парсинг
- Потоки(Threads)
- Регулярные выражения
- Тестирование приложений
Category Archives: Delphi
Delphi. idHTTP.Get и русские символы
Мне нужно было на свой собственный сервер отправлять запрос на получение картинки, например по адресу
|
1 |
http://localhost:40000/public/files/1/2017/1/9/Русский{EA1B9B79-AA95-424D-8AD2-AAE5BA023810}.png |
делал это через idHTTP.Get, но все русские символы либо обрезались либо уходили в виде ????????, уже сталкивался с этой проблемой, поэтому решил просто использовать … Continue reading
Posted in Delphi
Comments Off on Delphi. idHTTP.Get и русские символы
Delphi. DBGrid. Как пробежаться и собрать значения определенного поля выделенных записей?
DBGrid включаем в режим multiSelect. На примере сбора поля ID из базы данных
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
procedure TVisualFrame_HTTP.StatusBarClick(Sender: TObject); var idList: TStringList; i: integer; s: string; begin idList := TStringList.Create; try if DBGrid.SelectedRows.Count > 0 then with DBGrid.DataSource.DataSet do for i := 0 to DBGrid.SelectedRows.Count-1 do begin GotoBookmark(pointer(DBGrid.SelectedRows.Items[i])); idList.Add(FieldByName('id').AsInteger.ToString()); end; for i := 0 to idList.Count-1 do s := s + IDList[i] + #13#10; ShowMessage(s); finally IDList.Free; end; end; |
Posted in Delphi
Comments Off on Delphi. DBGrid. Как пробежаться и собрать значения определенного поля выделенных записей?
Delphi. FireDAC. Проверка на NULL и запись NULL значений в базу данных
Проверка на NULL
|
1 2 3 4 5 6 |
with qSomeQuery do begin if FieldByName('someField').IsNull then //do something end; |
Запись NULL значений, согласно инструкции
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
// setting param to null ... qSomeQuery.SQL.Text:= 'INSERT INTO DATABASE.TABLE (`someParam`) values (:someParam)'; ... //To set the parameter value to Null, specify the parameter data type, then call the Clear method: with qSomeQuery do begin with ParamByName('someParam') do begin DataType:=ftInteger; Clear(); Bound:=true; end; ExecSQL; end; |
Пример из проекта…
|
1 2 3 4 5 6 |
SET foreign_key_checks = 0; UPDATE `galionsms_db`.`clients` SET `partners_id`=:partners_id WHERE `id`=:id; SET foreign_key_checks = 1; |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
with qUpdatePartners_idInClients do begin Connection:=DBConnection.FDConnection; with ParamByName('partners_id') do begin DataType:=ftInteger; Clear(); Bound:=true; end; Params.ParamValues['id']:=ClientsOfPartner[i]; ExecSQL; end; |
Delphi. MySQL. Ошибка Type mismatch for field ‘name’, expecting: String actual: WideString
Пока не понял природу этой ошибки, но решил зафиксировать, мало ли кому понадобится.
|
1 2 |
First chance exception at $7470A832. Exception class EDatabaseError with message 'FDTable: Type mismatch for field 'name', expecting: String actual: WideString' |
Такая ошибка появилась у меня в результате работы с базой MySQL с кодировкой UTF8 и FDConnection, также с кодировкой UTF8, но передаваемым не напрямую, а через … Continue reading
Posted in Delphi
Comments Off on Delphi. MySQL. Ошибка Type mismatch for field ‘name’, expecting: String actual: WideString
Delphi. UniGUI. Делаем витрину (showcase) 2 часть
В прошлом посте мы сделали подготовочку. Структуру базы данных, определили основные сущности программы, создали под них таблицы в базе и модули в прекрасной IDE Delphi. В данном посте добавим функцию добавления товара, выделения товара, удаления товара, а также наладим листание … Continue reading
Posted in Delphi, Indy, UniGui, Без рубрики
Comments Off on Delphi. UniGUI. Делаем витрину (showcase) 2 часть
Delphi. Uploading to Keep2Share. Successful attempt
А теперь удачная попытка. Суть в том, что мы сначала отправляем файлы на VPS, далее, уже на Keep2Share через PHP скрипт. Сам скрипт отправки файла с одного сервера на другой достаточно прост
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
<?php include "Keep2ShareAPI.php"; $api = new Keep2ShareAPI(); $api->username='panteleevstas@gmail.com'; $api->password='SLwA63'; $filepath=$_REQUEST['filepath']; var_dump($api->uploadFile($filepath)); /* object(stdClass)#2 (3) { ["user_file_id"]=> string(13) "5238354a724c3" ["status"]=> string(7) "success" ["status_code"]=> int(200) } */ ?> |
Он выдает некоторую информацию, из которой нам … Continue reading
Delphi. Uploading to Keep2Share. Half Successfull Atempt…
Поступил ко мне небольшой заказ на автоматизацию заливки файлов на файлообменник Keep2Share.cc Всего было у меня 2 попытки делания данного проекта. Сначала опишу неудачную попытку, а в другом посте удачную. Задача стояла таким образом, чтобы сделать заливку напрямую из Delphi … Continue reading
Posted in Delphi, Indy, Без рубрики
Comments Off on Delphi. Uploading to Keep2Share. Half Successfull Atempt…
Delphi. Indy. Как отправить Get запрос, принять и обработать его на idHTTPServer?
Уже была подобная статья про отправку запросов с параметрами методом POST, а также был подобный пост, который касался отправки файлов методом POST и был на порядок сложнее того, что я напишу сейчас. Данные во второй статье отправляются в кодированном виде и мы делали … Continue reading
Delphi. UniGUI. Application Data Module and Free DataModule
Небольшая заметка! При создании дата модулей в UniGUI у нас есть 2 варианта – Application Data Module and Free Data Module В чем разница? Ответ на этот вопрос я получил на форуме UniGUI. Процитирую его здесь. Application Data Module’s life time … Continue reading
Delphi. Рекурсивный обход каталога файлов Windows при помощи SYSTEM.IOUTILS
Задача тривиальная, но всё же. Зачастую обходы делают при помощи SearchRecord, но стало интересным сделать это при помощи модуля System.IOUtils Получилось так… Каталоги файлов и папок очень похожи по структуре на дерево или граф. Соответственно можно применить один из методов … Continue reading
Posted in Delphi
Comments Off on Delphi. Рекурсивный обход каталога файлов Windows при помощи SYSTEM.IOUTILS