World: r3wp
[MySQL]
older newer | first last |
DideC 25-Feb-2005 [96] | I could use the REPLACE statement, but doc said that it's an heavy instruction. Is there an "UPDATE-IF-THERE-ELSE-INSERT" statement somewhere ? |
Sunanda 25-Feb-2005 [97] | This is the way I'd do it -- don't know if it'd work for mySQL (assumes product is identified by 'prod-code) insert ignore into Commands select * from products; update commands where not prod-code in select prod-code from product where command.prod-code = products.prod-code set quantity = ????; |
DideC 25-Feb-2005 [98] | Huu, I need to learn SQL more deeply !! |
Sunanda 25-Feb-2005 [99] | I think I mean where prod-code in not NOT in (the code is not tested, and may not be possible in mySQL) Joe Celko's SQL for Smarties is probably the best book for getting up to speed. |
Gabriele 25-Feb-2005 [100] | dunno if newer mysql supports subselects, but it didn't in the past |
Sunanda 25-Feb-2005 [101] | 4.1 seems to support them. Dunno if they work though :-) http://dev.mysql.com/doc/mysql/en/subqueries.html |
Ashley 25-Feb-2005 [102] | I need to learn SQL more deeply A broad introduction can be found here: http://riki-lb1.vet.ohio-state.edu/mqlin/computec/tutorials/SQLTutorial.htm |
james_nak 11-Mar-2005 [103x2] | I'm sure one of you guys knows how to check so that I can avoid: ** Access Error: Port rhm not open ** Where: read-rows ** Near: a: copy db I think this happens after I have inserted a query and there are no results, but in any case I'd like to able to check a port to see it is open. |
I should add that the code looks like this ...and it works when a record is found: insert db reduce [s] a: copy db | |
Graham 11-Mar-2005 [105x2] | while copy db |
foreach record copy db [ probe record ] | |
james_nak 14-Mar-2005 [107] | Graham, thanks. So this would check if there was something returned by the query. I'll check it out. |
Henrik 2-May-2005 [108x2] | I have a problem when the connection times out and mysql-protocol.r wants to reconnect. It looks like it hangs, but on closer inspection with trace/net on just gives an infinite amount of low-level reads of length 0 bytes. |
I can close and reopen the connection, and it works again, but I can only do this 5-6 times before it refuses to connect to the mysql server. Is this a known problem? | |
Dockimbel 3-May-2005 [110x2] | You can try to disengage the auto-reconnect feature and test if the connection is still active by yourself (send a ping command for example). |
db-port/locals/auto-ping?: off (stop pinging the server and don't reconnect automatically). | |
Oldes 6-May-2005 [112x2] | Henrik: I hit the same problem just at this moment:( unfortunatelly I don't know how to fix it |
But I'm not sure if it's not problem of the MySQL itself (for example some way how to awoid attacks | |
Henrik 6-May-2005 [114] | I found a different solution: manually check if the connection has timed out 30 seconds after a query and then reconnect. it's not perfect since I have to check at every query, but it works to the extent, I've tested it |
Oldes 6-May-2005 [115] | how you do the timeout test? |
Henrik 6-May-2005 [116] | after the query I store 'now. the next time I do a new query I check 'now against the stored one. if the difference is more than 30 seconds, I close the db connection and open it again immediately |
Oldes 10-May-2005 [117x2] | that would not solve my problem |
my problem was that after about 30 queries it got to infinitive loop (low-level reads of length 0 bytes) | |
Dockimbel 10-May-2005 [119] | What's your server version ? |
Oldes 15-May-2005 [120] | MySQL server version: 3.23.37 |
Tomc 26-May-2005 [121x3] | an atomic way of returning the value of an AUTO_INCREMENT column on insert would be very nice. |
i.e. insert db "insert into tab(tab_id,tab_name) values(NULL,'alt_key')" tab-id: copy db would gaurentee to give you the correct tab_id as it looks now you have to: insert db "insert into tab(tab_id,tab_name) values(NULL,'alt_key')" ;;; hope no one else is insertintginto the table right now insert db "select LAST_INSERT_ID()" tab-id: copy db | |
even being able to issue more than one sql statement would help some insert db {insert into tab(tab_id,tab_name) values(NULL,'alt_key'); select LAST_INSERT_ID()} tab-id: copy db | |
Gabriele 26-May-2005 [124x3] | Tom: the select above is actually safe. MySQL keeps the last insert id on a per-connection basis |
this means, that even if someone else inserts a record between your two queries, you'll get the correct result. | |
each connection gets its own last insert id. | |
Tomc 26-May-2005 [127] | thanks Gab, that makes me feel better |
François 7-Aug-2005 [128] | Hello, is there anyone working with Rebol Command and Mysql 4.1.x ? It appears that the authentication protocol has changed and Rebol/Command can not connect to MySQL 4.1.x. But it works fine with MySql 4.0.x. |
Pekr 7-Aug-2005 [129] | have you tried free mySQL driver from DocKimbel? |
François 7-Aug-2005 [130] | I have heard that the driver from DocKimbel has the seem issue... But my point is that Rebol/Command should be updated to work with version 4.1 which is currently the recommended version for peoduction environment! |
JaimeVargas 8-Aug-2005 [131x2] | Most probably driver support for db will be drop in future versions. (I recommend working with DocKimbel of helping improve his code). |
(Disclaimer: This is my opiong not RT official position) | |
François 8-Aug-2005 [133] | If support for db is gone, what is the point for a professional version of rebol?? |
JaimeVargas 8-Aug-2005 [134] | It is going to become platform. You get access to a plugin API where you can plug-in 3rd db modules. (At leass the was the plan from DevCon'04). Don't know how things will change in the future. You can still request RT to upgrade the drivers. |
Pekr 8-Aug-2005 [135x3] | What exactly is Platform going to be about? |
Imo we should aim for REAL kernel - where all unnecessary things should be removed - I talk about fastcgi, db drivers etc. | |
I am not sure about protocol handlers either ... I start to not understand, what is rebol - it is not language, nor it is stand-alon platform ... I want clean design ... Base + SDK is the answer imo ... | |
JaimeVargas 8-Aug-2005 [138] | Base == Platform imho |
Pekr 8-Aug-2005 [139x2] | good then ... |
so we should be able "to build" various variants upon our (developers) needs using SDK modules ... | |
François 9-Aug-2005 [141] | Ok, but who will develop those modules? Would they be open source? Personally, the reason why I love rebol is because it allows me to focus on the business, not on the tehnical aspect of a database, fastcgi, etc... I am certainly not the one who will develop technical modules, simply by lack of knowledge and time. But I really need those db access, fastcgi, etc... |
JaimeVargas 9-Aug-2005 [142] | It could be RT, or they could come from 3rd parties. I guess the answer is time will tell. You can certainly express your views and requests to RT, they may change direction based on customer input. However the directions is a bit blurry right now. |
Pekr 19-Aug-2005 [143x2] | Is there any conclusion about DocKimbel's mySQL driver and 4.11 server release? Does it work or no? In terms of one project, where we exchange data, client agrees to our proposed way, only if we import data to their tables on their server. It is Debian linux, mySQL 4.11 or so, so before I produce some script and give it to them, I would like to ask if the problem of connection/authentication is resolved? Thanks a lot .... |
Can I update particular fields (columns) in table? | |
Pekr 23-Aug-2005 [145] | Hmm, so noone uses mySQL here? :-) |
older newer | first last |