Advertisement
Guest User

Untitled

a guest
Jun 3rd, 2016
181
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.22 KB | None | 0 0
  1. --[[
  2. @Class Database
  3. - Database management
  4.  
  5. ---- Functions ------
  6.  
  7. CDatabase:excec(sQuery [, ...args])
  8. Excecutes a Query without any result or callback. Use for one-way Querys.
  9.  
  10. CDatabase:query(sQuery [, ...args])
  11. Excecutes a SQL-Query. You will get a Table as result.
  12.  
  13. ]]
  14. CDatabase = {}
  15.  
  16. function CDatabase:constructor(sType, sHost, sUser, sPass, sDBName, iPort)
  17. self.sType = mysql
  18. self.sHost = localhost
  19. self.sUser = test
  20. self.sPass = test1234
  21. self.sDBName = test
  22. self.iPort = 9987
  23.  
  24. if (self.sType == "mysql") then
  25. self.hCon = dbConnect(self.sType, "dbname="..self.sDBName..";host="..self.sHost..";port="..iPort, self.sUser, self.sPass)
  26. if ((self.hCon ~= false) and (self.hCon)) then
  27. outputServerLog("Datenbankverbindung hergestellt!")
  28. self.tStundenTimer = bind(CDatabase.stundenTimer, self)
  29. else
  30. outputServerLog("Datenbankverbindung konnte nicht hergestellt werden!")
  31. stopResource(getThisResource())
  32. end
  33. else
  34. outputServerLog("Please add specific Database Connection!")
  35. stopResource(getThisResource())
  36. end
  37. end
  38.  
  39. function CDatabase:destructor()
  40. self.sType = nil
  41. self.sHost = nil
  42. self.sUser = nil
  43. self.sPass = nil
  44. self.sDBName = nil
  45. self.iPort = nil
  46. destroyElement(self.hCon)
  47. end
  48.  
  49. function CDatabase:query(sQuery, ...)
  50. local qHandler = dbQuery(self.hCon,sQuery, ...)
  51. local result, iRows, sError = dbPoll ( qHandler, 20)
  52. if (result == nil) then
  53. local result, iRows, sError = dbPoll ( qHandler, 60)
  54. if(result == nil) then
  55. dbFree(qHandler)
  56. return false
  57. end
  58. end
  59.  
  60. if (result == false) then
  61. outputDebugString("Error Excecuting Query: "..sQuery.." ||"..iRows.."| "..sError)
  62. return false
  63. end
  64. return result, iRows
  65. end
  66.  
  67. function CDatabase:exec(sQuery, ...)
  68. return dbExec(self.hCon, sQuery, ...)
  69. end
  70.  
  71.  
  72. function CDatabase:savePlayer(thePlayer)
  73. thePlayer:save()
  74. end
  75.  
  76. function CDatabase:saveAllPlayers()
  77. local players = getElementsByType("player")
  78. if (#players > 0) then
  79. for i,thePlayer in ipairs(players) do
  80. if (thePlayer.LoggedIn == true) then
  81. thePlayer:save()
  82. end
  83. end
  84. end
  85. end
  86.  
  87. function CDatabase:stundenTimer()
  88. saveAllPlayers()
  89. end
  90.  
  91. DB = new(CDatabase,"mysql", "127.0.0.1", "root", "", "accountsystem", 3306)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement