AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   SQL QUERY (https://forums.alliedmods.net/showthread.php?t=163660)

davidto1995 08-01-2011 22:55

SQL QUERY
 
there are 26 errors
24 are undefined symbol "INT" line 291-314
1 is undefined symbol "ClientName" line 290
1 is invalid string <possibly non-terminated string> line290
Code:

Queries = SQL_PrepareQuery(SqlConnection, "CREATE TABLE IF NOT EXISTS TRMOD_DB (
        ClientName varchar(64), //line 290
        ClientExp INT(11),
        ClientFame INT(11),
        ClientMoney INT(11),
        ClientLevel INT(11),
        ClientGoldCoin INT(11),
        ClientNorNickGet INT(11),
        ClientSeNickGet INT(11),
        ClientAch INT(11),
        ClinetNicknameID INT(11),
        CN_CountKill INT(11),
        CN_CountKillKnife INT(11),
        CN_CountKillGrenade INT(11),
        CN_CountKillAwp INT(11),
        CN_MakeGunNum INT(11),
        CN_TreasureNum INT(11),
        CN_MakeClothingNum INT(11),
        CN_ConnectTimeSec INT(11),
        CN_ConnectTimeMin INT(11),
        CN_ConnectTimeHour INT(11),
        CN_DieTime INT(11),
        CN_TreatmentNum INT(11),
        CN_ItemHave INT(11),
        CN_GiveMoneyNum INT(11),
        CN_MetalResources INT(11), // line 314
        CN_UseAudioTimes INT(11),
        CN_ChangeEquipTimes INT(11),
        CN_DropGunTimes INT(11),
        CN_JumpTimes INT(11),
        CN_CountFireMiunsHealth INT(11),
        CN_CountWaterMiunsHealth INT(11),
        CN_BOOL_IsUserHaveNickname_0 varchar(6),
        CN_BOOL_IsUserHaveNickname_1 varchar(6),
        CN_BOOL_IsUserHaveNickname_2 varchar(6),
        CN_BOOL_IsUserHaveNickname_3 varchar(6),
        CN_BOOL_IsUserHaveNickname_4 varchar(6),
        CN_BOOL_IsUserHaveNickname_5 varchar(6),
        CN_BOOL_IsUserHaveNickname_6 varchar(6),
        CN_BOOL_IsUserHaveNickname_7 varchar(6),
        CN_BOOL_IsUserHaveNickname_8 varchar(6),
        CN_BOOL_IsUserHaveNickname_9 varchar(6),
        CN_BOOL_IsUserHaveNickname_10 varchar(6),
        CN_BOOL_IsUserHaveNickname_11 varchar(6),
        CN_BOOL_IsUserHaveNickname_12 varchar(6),
        CN_BOOL_IsUserHaveNickname_13 varchar(6),
        CN_BOOL_IsUserHaveNickname_14 varchar(6),
        CN_BOOL_IsUserHaveNickname_15 varchar(6),
        CN_BOOL_IsUserHaveNickname_16 varchar(6),
        CN_BOOL_IsUserHaveNickname_17 varchar(6),
        CN_BOOL_IsUserHaveNickname_18 varchar(6),
        CN_BOOL_IsUserHaveNickname_19 varchar(6),
        CN_BOOL_IsUserHaveNickname_20 varchar(6),
        CN_BOOL_IsUserHaveNickname_21 varchar(6),
        CN_BOOL_IsUserHaveNickname_22 varchar(6),
        CN_BOOL_IsUserHaveNickname_23 varchar(6),
        CN_BOOL_IsUserHaveNickname_24 varchar(6),
        CN_BOOL_IsUserHaveNickname_25 varchar(6),
        CN_BOOL_IsUserHaveNickname_26 varchar(6),
        CN_BOOL_IsUserHaveNickname_27 varchar(6),
        CN_BOOL_IsUserHaveNickname_28 varchar(6),
        CN_BOOL_IsUserHaveNickname_29 varchar(6),
        CN_BOOL_IsUserHaveNickname_30 varchar(6),
        CN_BOOL_IsUserHaveNickname_31 varchar(6),
        CN_BOOL_IsUserHaveNickname_32 varchar(6),
        CN_BOOL_IsUserHaveNickname_33 varchar(6),
        CN_BOOL_IsUserHaveNickname_34 varchar(6),
        CN_BOOL_IsUserHaveNickname_35 varchar(6),
        CN_BOOL_IsUserHaveNickname_36 varchar(6),
        CN_BOOL_IsUserHaveNickname_37 varchar(6),
        CN_BOOL_IsUserHaveNickname_38 varchar(6),
        CN_BOOL_IsUserHaveNickname_39 varchar(6),
        CN_BOOL_IsUserHaveNickname_40 varchar(6),
        CN_BOOL_IsUserHaveNickname_41 varchar(6),
        CN_BOOL_IsUserHaveNickname_42 varchar(6),
        CN_BOOL_IsUserHaveNickname_43 varchar(6),
        CN_BOOL_IsUserHaveNickname_44 varchar(6),
        CN_BOOL_IsUserHaveNickname_45 varchar(6),
        CN_BOOL_IsUserHaveNickname_46 varchar(6),
        CN_BOOL_IsUserHaveNickname_47 varchar(6),
        CN_BOOL_IsUserHaveNickname_48 varchar(6),
        CN_BOOL_IsUserHaveNickname_49 varchar(6),
        CN_BOOL_IsUserHaveNickname_50 varchar(6)
        )")

it will be greatly appericiated if you would like to fix the code :)

fysiks 08-01-2011 23:10

Re: SQL QUERY
 
I've seen others have problems with string that are too long, I believe they had to format the whole query into a buffer.

davidto1995 08-01-2011 23:34

Re: SQL QUERY
 
solved thx

but another error occurs..
here's the code
Code:

new bool:IsUserHaveNickname[33][51]
Code:

        if(SQL_NumResults(Query) < 1)
        {
                      //do stuff
        }
        else
        {
                      //do stuff
                      for(new i; i < 51; i++)
                        IsUserHaveNickname[client][i] = SQL_ReadResult(Query, i+31) //Error: tag mismatch

btw , what is mismatched?

nikhilgupta345 08-02-2011 01:15

Re: SQL QUERY
 
IsUserHaveNickname holds booleans, and I'm guessing SQL_ReadResult is an integer.

You can't assign integers to a boolean without having a tag mismatch error.

davidto1995 08-02-2011 01:21

Re: SQL QUERY
 
Code:

`CN_BOOL_IsUserHaveNickname_0`//SQL_ReadResult(Query, i+31)
however , i created it
Code:

CN_BOOL_IsUserHaveNickname_0 varchar(6)//not interger

Hunter-Digital 08-02-2011 05:25

Re: SQL QUERY
 
Read what the function does before you try to understand anything:
http://www.amxmodx.org/funcwiki.php?...sult&go=search
And I quote:
Quote:

Retrieves the current result.
A successful query starts at the first result, so you should not call SQL_NextRow() first.
Passing no extra params - return int
Passing one extra param - return float in 1st extra arg
Passing two extra params - return string in 1st arg, max length in 2nd
So if you want a string, you'll need to parse it into the next args, functions don't return strings.

davidto1995 08-02-2011 06:28

Re: SQL QUERY
 
read it before
forgot.. thx anyway

btw
after edited:
Code:

new TempString[32]
SQL_ReadResult(Query, i+31, TempString, charsmax(TempString))
IsUserHaveNickname[client][i] = TempString//error

however , new error occurs:must be assigned to be array

davidto1995 08-02-2011 08:27

Re: SQL QUERY
 
Code:

for(new i; i < 51; i++)
{
      new TempString[32]
      SQL_ReadResult(Query, i+31, TempString, charsmax(TempString))
      IsUserHaveNickname[client][i] = TempString
}

I need to insert the value of every boolean(reason)

fysiks 08-02-2011 08:30

Re: SQL QUERY
 
Well, TempString is just that, a string, it's not a bool or integer. What is the contents of TempString when you retrieve it?

davidto1995 08-02-2011 08:32

Re: SQL QUERY
 
In i+31, i insert "false" / "true"(the thing i retrieve)
a little part of the code:
Code:

len += formatex(TempQuery[len], charsmax(TempQuery)-len, "'true',")
//any...
len += formatex(TempQuery[len], charsmax(TempQuery) - len, "'false',")



All times are GMT -4. The time now is 03:31.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.