-
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: javascript
Алгоритмы. Delphi. C#. PHP. JS. Бинарный поиск в массивах на 4 языках
Продолжаем мультиязычные посты. Сегодня бинарный поиск. Все программы будут состоять из 2 частей – рандомное заполнение массивов с сортировкой. И вторая часть – собственно бинарный поиск. Delphi (бинарный поиск) Собственно реализация Функции бинарного поиска Integer и String массивов. Массивы предварительно … Continue reading
Posted in C#, Delphi, javascript, PHP
Comments Off on Алгоритмы. Delphi. C#. PHP. JS. Бинарный поиск в массивах на 4 языках
PHP.JS. Проверка полей на пустоту. Усовершенствуем скрипт авторизации
В прошлом посте сделали простейший PHP скрипт авторизации, сейчас усовершенствуем его при помощи JS. Будем проверять форму перед отправкой при помощи самописной функции
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
<script> <!-- // Функция проверки формы function validate_form ( ) { if ( (document.submit_form.login.value)==''){alert('Поле логин не заполнено'); return false; exit(); }; if ( (document.submit_form.password.value)==''){alert('Поле пароль не заполнено'); return false; exit();}; alert('Подтверждаю отправку данных'); document.submit_form.name.submit(); } //--> </script> |
На клиенте проверяем заполнены ли поля. Тут можно кучу других проверок организовать, но это уже тема … Continue reading
Posted in javascript, PHP
Comments Off on PHP.JS. Проверка полей на пустоту. Усовершенствуем скрипт авторизации
Delphi.VCL+JS
Приспичило меня в одной из VCL программ использовать JS, так как наперед неизвестны были функции, которые нужно программировать, нужна была некоторая универсальность. Словом, в Memo пишем функцию на JS, о которой узнаем в последний момент, далее, в VCL программе, пользуемся … Continue reading
Posted in Delphi, javascript
Comments Off on Delphi.VCL+JS
jQuery. Подключение библиотеки и “первый hello world”
Подключение библиотеки jQuery Надо сказать, что существует как минимум 2 версии библиотеки – сжатая (с приставкой min, например jquery-1.10.1.min.js) и расширенная. Насколько я понял, разница между ними только в объеме памяти, который они занимают. У сжатой удалены все пробелы и комментарии, … Continue reading
Posted in javascript, jQuery
Comments Off on jQuery. Подключение библиотеки и “первый hello world”
Как учиться пользоваться библиотекой ExtJS?
Универсальный способ работы со свойствами, методами, событиями ExtJS (На примере класса Ext.dom.Elements) При моем знакомстве с ExtJS меня долгое время мучил вопрос – “Где взять все свойства и методы того или иного класса?”, а также “Как узнать какой метод или … Continue reading
Posted in ExtJS, javascript, Без рубрики
Comments Off on Как учиться пользоваться библиотекой ExtJS?
ExtJS. Псевдонимы классов
Классам можно задавать псевдонимы с помощью ключевого слова alias Простой пример App.js
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
Ext.define('SomeClass', { alias:'person', someproperty:"testproperty", somemethod: function(text){ alert(text);}, somemethod2:function(text){alert(text);} }); var myinstance=Ext.create('person');// Создаем экземпляр класса alert('someproperty '+myinstance.someproperty); myinstance.somemethod('testword'); //Вызываем метод myinstance.somemethod2('testword2');// Вызываем метод |
Пример посложнее
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
//Определяем класс Ext.define('Person.Panel', { alias: 'widget.myalias', extend: 'Ext.panel.Panel', title: 'Пример использования псевдонимов классов', html : '<h3>Hello world! Hello from ExtJS<h3>' }); //Создаем приложение Ext.application({ name: 'AliasExample', launch: function() { //Создаем контейнер Ext.create('Ext.container.Viewport', { //настраиваем отображение layout: 'fit', //Добавляем в контейнер элементы items: [ { xtype: 'alias', }] }); } }); |
Слово widget в данном случае зарезервированное. Если его изменить, убрать, то работать не будет.
Posted in ExtJS, javascript, Без рубрики
Comments Off on ExtJS. Псевдонимы классов
ExtJS. Динамическая загрузка классов
Как загружать классы из той же директории, что и запускаемый js, html файл? Здесь приведен сначала самый простой вариант, когда мы выносим описание наших классов в отдельный файл с расширением .js и размещаем его в той же директории, в которой у … Continue reading
Posted in ExtJS, javascript
Comments Off on ExtJS. Динамическая загрузка классов
ExtJS. Секция statics
При создании класса, можно в items объявить секцию statics и в неё записывать свойства и методы, которые можно будет вызывать без создания экземпляра класса.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
Ext.define('MyApp.Calc', { statics: { count: 0, AppName:"MyCalc", multiply: function(n1, n2) { return n1*n2; }, } }); //Вызываем без создания экземпляра класса alert(MyApp.Calc.AppName); alert(MyApp.Calc.multiply(5,5)); |
Примечание. Когда в свойстве statics я использовал в качестве имени свойства имя name, то при обращении к свойству, … Continue reading
Posted in ExtJS, javascript, Без рубрики
Comments Off on ExtJS. Секция statics
ExtJS. Секция config (Auto setters Auto getters)
Согласно книге FirstLook, при создании класса и определении items, мы можем использовать параметр config, для создаваемых итемов в секции config автоматически создаются методы get – получение свойства set – установка свойства reset – установка свойства в первоначальное значение apply – вспомогательный … Continue reading
Posted in javascript
Comments Off on ExtJS. Секция config (Auto setters Auto getters)
ExtJS. Конструкторы
В данном посте посмотрим, что такое конструкторы при создании класса в ExtJS. Конструктор, в частности, позволяет при создании экземпляра класса для свойств пользоваться не значением по умолчанию, а значением, которое мы сами этому экземпляру класса и задаем. Main.html
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <!--Подключение библиотеки ExtJS, CSS и нашего скрипта JS--> <link rel="stylesheet" type="text/css" href="/ExtJS/www/Styles/theme-neptune/resources/theme-neptune-all.css"> <script type="text/javascript" src="/ExtJS/www/ext-all.js"></script> <script type="text/javascript" src="App.js"></script> <title>Main</title> </head> <body> </body> </html> |
App.js
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
/** * @author Stas */ Ext.define('Classes.People', // Определение свойств класса {name:'Stas', surname:'Panteleev', sex:'male', age:32, //Определение конструктора constructor:function(name,surname){ if (name&&surname){ this.name=name; this.surname=surname; } }, // Определение методов класса getfullname:function(){ alert('Имя '+this.name+' : '+'Фамилия '+this.surname); }, } ); //Создание экземпляра класса var YourName=prompt('Введите Ваше имя',''); var YourFamily=prompt('Введите Вашу Фамилию',''); // Вот где мы воспользовались преимуществом вонструктора var NewPerson=Ext.create('Classes.People',YourName,YourFamily); // Можно также было создавать вот так... //NewPerson=new Classes.People(YourName, YourFamily); //Вызов методов класса NewPerson.getfullname(); |
Posted in ExtJS, javascript
Comments Off on ExtJS. Конструкторы