Я предполагаю, что вы хотите, чтобы это произошло, когда пользователь нажимает ввод только тогда, когда TextField имеет фокус. Вы захотите использовать KeyEvent из javafx.scene.input и сделать что-то вроде этого ...
textField.setOnKeyPressed(new EventHandler<KeyEvent>()
{
@Override
public void handle(KeyEvent ke)
{
if (ke.getCode().equals(KeyCode.ENTER))
{
doSomething();
}
}
});
Надеюсь, это полезно!
Я полагаю, вы могли бы выполнить подзапрос с несколькими SELECT
в сочетании с UNION
s.
SELECT a, b, c, d
FROM (
SELECT 1 AS a, 2 AS b, 3 AS c, 4 AS d
UNION ALL
SELECT 5 , 6, 7, 8
) AS temp;
В стандартном SQL (SQL 2003 - см. http://savage.net.au/SQL/ ) вы можете использовать:
INSERT INTO SomeTable(Id, Count) VALUES (1, 7), (2, 6), (3, 13), ...
Если немного погоняться, вы также можете использовать:
SELECT * FROM TABLE(VALUES (1,7), (2, 6), (3, 13), ...) AS SomeTable(Id, Count)
Независимо от того, работает ли эта работа в MySQL отдельно, но вы всегда можете попросить добавить ее или добавить самостоятельно (в этом прелесть Open Source).
СОЗДАТЬ ВРЕМЕННУЮ ТАБЛИЦУ (ID int, Name char (100)) SELECT ....
Подробнее на: http://dev.mysql.com/doc/ refman / 5.0 / en / create-table.html
(внизу)
Это имеет то преимущество, что при возникновении проблем с заполнением таблицы (несоответствие типов данных) таблица автоматически удаляется.
в раннем ответе использовалось предложение FROM SELECT. Если возможно, используйте это, потому что это избавляет от головной боли при уборке стола.
Недостатком (который может не иметь значения) FROM SELECT является размер созданного набора данных. Временная таблица позволяет выполнять индексацию, что может быть критичным. Для последующего запроса. Это кажется нелогичным, но даже с набором данных среднего размера (~ 1000 строк) может быть быстрее создать индекс, с которым будет работать запрос.
Я нашел эту ссылку Временные таблицы с MySQL
CREATE TEMPORARY TABLE TempTable ( ID int, Name char(100) ) TYPE=HEAP;
INSERT INTO TempTable VALUES( 1, "Foo bar" );
SELECT * FROM TempTable;
DROP TABLE TempTable;
Одним словом, да. Еще лучше IMO, если ваш продукт SQL поддерживает общие табличные выражения (CTE), то есть проще для глаз, чем использование подзапроса, плюс один и тот же CTE можно использовать несколько раз, например, это для `` создания '' таблицы последовательности уникальных целых чисел от 0 до 999 в SQL Сервер 2005 и выше:
WITH Digits (nbr) AS
(
SELECT 0 AS nbr UNION ALL SELECT 1 UNION ALL SELECT 2
UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5
UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8
UNION ALL SELECT 9
),
Sequence (seq) AS
(
SELECT Units.nbr + Tens.nbr + Hundreds.nbr
FROM Digits AS Units
CROSS JOIN Digits AS Tens
CROSS JOIN Digits AS Hundreds
)
SELECT S1.seq
FROM Sequence AS S1;
, за исключением того, что вы действительно можете сделать что-нибудь полезное с таблицей последовательности, например, проанализировать символы из столбца VARCHAR в базовой таблице.
ОДНАКО, если вы используете эту таблицу, которая состоит только из литералов значений, несколько раз или в нескольких запросах, тогда почему бы не сделать это в первую очередь базовой таблицей? В каждой базе данных, которую я использую, есть таблица последовательности целых чисел (обычно 100 000 строк), потому что она очень полезна в целом.