Вопросы Разработчикам Скриптов с SQL, вопросы по скриптам (мелкие вопросы) |
Здравствуйте, гость ( Вход | Регистрация )
Вопросы Разработчикам Скриптов с SQL, вопросы по скриптам (мелкие вопросы) |
5.4.2009, 14:46
Сообщение
#81
|
|
RusHub team lead Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз |
Код assert(con:execute(("UPDATE `TextSeach` SET '%s' = '%s' + 1 WHERE `Seach` = '%s'"):format("S"..tostring(iNumber), "S"..tostring(iNumber), sSeach)))
|
|
|
5.4.2009, 15:23
Сообщение
#82
|
|
Самый главный активист :-D Группа: Модераторы Сообщений: 2 790 Регистрация: 29.6.2008 Из: г. Тула Пользователь №: 97 Спасибо сказали: 440 раз |
не помогло
Цитата [16:22] Синтаксис TopSeach.lua:106: LuaSQL: Error executing query. MySQL: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''S1' = 'S1' + 1 WHERE `Seach` = 'test1'' at line 1 сделал всё с одинаковыми ковычками получил следующее Код [16:55] Синтаксис TopSeach.lua:106: LuaSQL: Error executing query. MySQL: Unknown column 'test1' in 'where clause'
|
|
|
6.4.2009, 17:59
Сообщение
#83
|
|
RusHub team lead Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз |
2Wariner:
Код con:execute(("UPDATE `TextSeach` SET `S%s` = `S%s` + 1 WHERE `Seach` = '%s'"):format(tostring(iNumber), tostring(iNumber), sSeach)) Кавычки ' ' служат для обозначения вносимых строковых данных. Кавычки ` ` служат для обозначения имён полей, таблиц или баз данных. Метод format тут применяется для оптимизации, для избавления от излишней нагрузки на память конкатенацией, а ты всё равно пытаешься конкатенацию впихнуть. 2vicious: Код function IsScriptRun()
for k,v in ipairs(ScriptMan.GetScripts()) do if v.sName == "abc" and v.bEnabled == true then return true end end end |
|
|
11.4.2009, 20:20
Сообщение
#84
|
|
Самый главный активист :-D Группа: Модераторы Сообщений: 2 790 Регистрация: 29.6.2008 Из: г. Тула Пользователь №: 97 Спасибо сказали: 440 раз |
можно ли упростить функцию
Код function ShowTopSeachDay(sDate) local tTemp = {} local sMsg = "" local sStr = string.rep("=",40) local cur = con:execute(("SELECT `id_Seach` FROM `S1` WHERE `date_Seach` = '%s'"):format(sDate)) local row = cur:fetch({}, "a") while row do local cur2 = con:execute(("SELECT `Seach` FROM `TextSeach` WHERE `id` = '%s'"):format(row.id_Seach)) local row2 = cur2:fetch({}, "a") while row2 do if not tTemp[row2.Seach] then tTemp[row2.Seach] = 1 else tTemp[row2.Seach] = tTemp[row2.Seach] + 1 end row2 = cur2:fetch(row, "a") end row = cur:fetch(row, "a") end for i,v in pairs(tTemp) do Core.SendToAll(i.." "..v) end cur:close() cur2:close() -- return ("%s\t%s\r\n"):format(sMsg,sStr) end основать её только на MySQL |
|
|
16.4.2009, 21:41
Сообщение
#85
|
|
Самый главный активист :-D Группа: Модераторы Сообщений: 2 790 Регистрация: 29.6.2008 Из: г. Тула Пользователь №: 97 Спасибо сказали: 440 раз |
опять проблемы с MySQL((((
уже глаз замылился, где тут ошибка Код function UserDisconnected(tUser) con:execute(("UPDATE `NicksIPs` SET `out` = %s WHERE `id` = '(SELECT id FROM `NicksIPs` WHERE (`Nick` = '%s' && `IP` = '%s') ORDER BY id DESC LIMIT 1)'"):format(os.date("%Y-%m-%d"), tUser.sNick, tUser.sIP)) end OpDisconnected = UserDisconnected RegDisconnected = UserDisconnected создание таблицы Код assert(con:execute[[CREATE TABLE IF NOT EXISTS `NicksIPs`(`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,`Nick` VARCHAR(64) NOT NULL, `IP` VARCHAR(64) NOT NULL,`in` DATE NOT NULL, `out` DATE NOT NULL,PRIMARY KEY(`id`))]])
|
|
|
16.4.2009, 21:50
Сообщение
#86
|
|
RusHub team lead Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз |
Во-первых, `out` = '%s'
Во-вторых, в чём же ошибка? Что не так? |
|
|
16.4.2009, 21:57
Сообщение
#87
|
|
Самый главный активист :-D Группа: Модераторы Сообщений: 2 790 Регистрация: 29.6.2008 Из: г. Тула Пользователь №: 97 Спасибо сказали: 440 раз |
да не апдейтится и всё
|
|
|
16.4.2009, 22:07
Сообщение
#88
|
|
RusHub team lead Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз |
ппц... а зачем такой гемор... не легче ли так написать:
Код "UPDATE `NicksIPs` SET `out` = '%s' WHERE `Nick` = '%s' AND `IP` = '%s' LIMIT 1"
|
|
|
16.4.2009, 22:13
Сообщение
#89
|
|
Самый главный активист :-D Группа: Модераторы Сообщений: 2 790 Регистрация: 29.6.2008 Из: г. Тула Пользователь №: 97 Спасибо сказали: 440 раз |
оператор есть я на их сайте смотрел а гемор такой для потому что в таблице ип и ник позиции не уникальные и надо апдейтить именно последнюю запись!
|
|
|
16.4.2009, 22:25
Сообщение
#90
|
|
RusHub team lead Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз |
А как так может быть, что пара ник и ip не уникальны? Разве протокол позволяет находится на хабе двум пользователям с одним ником и ip ?
Что за бред? Код UNIQUE(`Nick`, `IP`)
|
|
|
16.4.2009, 22:36
Сообщение
#91
|
|
Самый главный активист :-D Группа: Модераторы Сообщений: 2 790 Регистрация: 29.6.2008 Из: г. Тула Пользователь №: 97 Спасибо сказали: 440 раз |
нет там просто интервалы нахождения пользователя на хабе! Объясняю:
когда входит юзер в таблицу NicksIPs записывается: Ник_____IP____дата входа_______прочерк при выходе прочерк должен заменится на дату выхода при повторном коннекте юзера эта запись не перезаписывается а добавляется такая же еновая только с другими данными входа! |
|
|
17.4.2009, 1:11
Сообщение
#92
|
|
RusHub team lead Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз |
И какой смысл в этом? Только гемор
|
|
|
20.4.2009, 20:01
Сообщение
#93
|
|
Самый главный активист :-D Группа: Модераторы Сообщений: 2 790 Регистрация: 29.6.2008 Из: г. Тула Пользователь №: 97 Спасибо сказали: 440 раз |
Может ли IP адрес менятся по ходу сессии. Т.е. если юзер входит с одним ип может ли он уходить с другим?
|
|
|
20.4.2009, 21:18
Сообщение
#94
|
|
RusHub team lead Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз |
По поводу смены ip адреса будет закрыт сокет, причем как со стороны сервера, так и со стороны клиента.
Шару точно так же. |
|
|
24.4.2009, 21:32
Сообщение
#95
|
|
Самый главный активист :-D Группа: Модераторы Сообщений: 2 790 Регистрация: 29.6.2008 Из: г. Тула Пользователь №: 97 Спасибо сказали: 440 раз |
Есть таблица в которой отдельно присутствуют поля Дата и Время. Как построить запрос чтобы отыскать записи в промежутке с гггг-мм-дд чч:мм:сс до гггг-мм-дд чч:мм:сс?
|
|
|
24.4.2009, 22:02
Сообщение
#96
|
|
AmxModx Scripter Группа: Пользователи Сообщений: 302 Регистрация: 2.12.2008 Из: Королев Пользователь №: 1 283 Спасибо сказали: 127 раз |
Так попробуй:
WHERE `Data`>'гггг-мм-дд' AND `Data`<'гггг-мм-дд2' AND `Time`>'чч:мм:сс' AND `Time`<'чч:мм:сс2' А вообще я всегда храню дату и время в формате UNIX, мне кажется так гораздо удобнее |
|
|
24.4.2009, 22:18
Сообщение
#97
|
|
Самый главный активист :-D Группа: Модераторы Сообщений: 2 790 Регистрация: 29.6.2008 Из: г. Тула Пользователь №: 97 Спасибо сказали: 440 раз |
так пробовал, но что то не срослось)))) никакой сортировки...
|
|
|
24.4.2009, 22:19
Сообщение
#98
|
|
AmxModx Scripter Группа: Пользователи Сообщений: 302 Регистрация: 2.12.2008 Из: Королев Пользователь №: 1 283 Спасибо сказали: 127 раз |
Сортировка ORDER BY делается, добавь ORDER BY `id` в конце
|
|
|
24.4.2009, 22:23
Сообщение
#99
|
|
RusHub team lead Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз |
Согласен в Романовым, лучше записывать в бд unix время - os.time(), а из него можно уже "форматировать" время.
Тем более, ведь хаб и mysql сервер могут быть на разных машинах в разных странах, и время на серваке с mysql может отличаться от времени на хабе |
|
|
24.4.2009, 22:23
Сообщение
#100
|
|
Самый главный активист :-D Группа: Модераторы Сообщений: 2 790 Регистрация: 29.6.2008 Из: г. Тула Пользователь №: 97 Спасибо сказали: 440 раз |
не ты меня не понял! не отделились те сообщения которые не вошли в период времени...
|
|
|
Похожие темы
|
Сейчас: 27.11.2024, 2:02 |