Я могу сделать нахождение/заменение в t-sql?

Реализация задержки в 5 секунд, измеряющая прошедшие миллисекунды и считывание аналогового значения во время ожидания, выглядит следующим образом:

startTime = millis();
while(millis()-startTime < 5000) {
    sensorValue = analogRead(A0);
    if (sensorValue >= 300) {
        AbsMouse.press(MOUSE_LEFT);
        AbsMouse.release(MOUSE_LEFT);
    }
}

Это имеет два недостатка, которые вам придется решить при необходимости. Первый заключается в том, что события щелчка будут выполняться, пока значение остается выше 300 (то есть оно может щелкать более одного раза). Вторая проблема заключается в том, что это не точная задержка в 5 секунд, поскольку она может иметь дрожание из-за кода, выполняемого внутри блока while.

Другой вариант, как вы упомянули, - использовать прерывания по таймеру для достижения более точной задержки. Используя такую ​​библиотеку, как TimerOne , это выглядит так (вдохновлено примерами библиотек и модифицировано для выполнения каждые 5 секунд):

#include 

void setup(void) {
  Timer1.initialize(5000000);
  Timer1.attachInterrupt(fiveSeconds);
}

void fiveSeconds(void) {
    // do stuff
}

Функция fiveSeconds должна выполняться каждые 5 секунд, с большей точностью, чем подход millis().

Теперь вам нужно добавить код в эту функцию, чтобы достичь того, что вы хотите сделать. Я бы предложил использовать loop() для считывания аналогового значения и щелчка, а также прерывание для перемещения курсора мыши, но ваш подход может быть другим.

25
задан Cade Roux 5 October 2008 в 03:13
поделиться

2 ответа

update my_table
set xml_column = replace(xml_column, "old  value", "new value")
-5
ответ дан 28 November 2019 в 20:45
поделиться

Для нахождения содержания в столбце XML изучите существование () метод, как описано в MSDN здесь .

SELECT * FROM Table
WHERE XMLColumn.exist('/Root/MyElement') = 1

... для замены используйте изменение () метод, как описано здесь .

SET XMLColumn.modify('
  replace value of (/Root/MyElement/text())[1]
  with "new value"
')

.. весь SqlServer 2005 or or 2005 or or 2008 принятия. Это основано на XPath, который необходимо будет знать.

16
ответ дан 28 November 2019 в 20:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: