Home » U++ Library support » U++ SQL » Sql(SqlSession& session) problem
Re: Sql(SqlSession& session) problem (SOLVED) [message #40321 is a reply to message #40320] |
Thu, 18 July 2013 18:37   |
Sender Ghost
Messages: 301 Registered: November 2008
|
Senior Member |
|
|
Hello, Danny.
pfsdanny wrote on Thu, 18 July 2013 15:24 | After rewrite the code, it works. So the following code that is ok in 4193 does not work in 5485.
Toggle source code
class c_db : public MySqlSession{
public:
typedef c_db CLASSNAME;
String username;
String password;
String database;
String host;
String collate;
String lockId;
int port;
bool connect(bool prompt=true);
void disconnect();
void copyFm(c_db db); <<--- this line cause error !
void copyFm(String xhost, String xdatabase, String xusername, String xpassword, String xcollate, int sport); <<-- change to this one and no problems !
bool getlock(String name);
bool releaselock();
c_db();
~c_db();
};
|
You are right, that after 4296 revision your previous code doesn't work, because of "Sql, SqlSession: operator= and copy constructors now private".
I think, you could rewrite your code as follows:
Toggle source code
#include <MySql/MySql.h>
using namespace Upp;
struct DBData {
String username;
String password;
String database;
String host;
String collate;
String lockId;
int port;
DBData() : port(3306) { }
DBData(const String& username, const String& password, const String& database, const String& host,
const String& collate, const String& lockId, int port = 3306) : username(username),
password(password), database(database), host(host), collate(collate), lockId(lockId), port(port) { }
};
class DBConnection {
protected:
MySqlSession session;
DBData data;
public:
// DBConnection() { }
DBConnection(const DBData& data) : data(data) { }
~DBConnection() { Disconnect(); ReleaseLock(); }
MySqlSession& GetSession() { return session; }
const DBData& GetData() { return data; }
void SetData(const DBData& d) { data = d; }
bool Connect(bool prompt = true);
void Disconnect();
bool GetLock(const String& name);
bool ReleaseLock();
};
// TODO: implement
bool DBConnection::Connect(bool prompt)
{
return true;
}
// TODO: implement
void DBConnection::Disconnect()
{
}
// TODO: implement
bool DBConnection::GetLock(const String& name)
{
return true;
}
// TODO: implement
bool DBConnection::ReleaseLock()
{
return true;
}
CONSOLE_APP_MAIN
{
DBData data("username", "password", "database", "host", "collate", "lockId");
DBConnection ctn(data);
if (!ctn.Connect())
return;
SQL = ctn.GetSession();
/* // Doing some query:
Sql sql;
sql * Select(SqlAll()).From(TABLE);
while(sql.Fetch()) { }
*/
}
where you will have DBData structure to avoid the need to copy each variable to c_db::copyFm method and no need to assign MySqlSession contents.
[Updated on: Thu, 18 July 2013 18:40] Report message to a moderator
|
|
|
 |
|
Sql(SqlSession& session) problem
By: koldo on Mon, 17 September 2012 23:09
|
 |
|
Re: Sql(SqlSession& session) problem
By: dolik.rce on Tue, 18 September 2012 07:18
|
 |
|
Re: Sql(SqlSession& session) problem
By: koldo on Tue, 18 September 2012 09:25
|
 |
|
Re: Sql(SqlSession& session) problem
By: koldo on Tue, 18 September 2012 10:11
|
 |
|
Re: Sql(SqlSession& session) problem
By: mirek on Tue, 18 September 2012 11:47
|
 |
|
Re: Sql(SqlSession& session) problem
By: dolik.rce on Tue, 18 September 2012 13:00
|
 |
|
Re: Sql(SqlSession& session) problem
By: BioBytes on Tue, 18 September 2012 15:06
|
 |
|
Re: Sql(SqlSession& session) problem
By: koldo on Tue, 18 September 2012 21:06
|
 |
|
Re: Sql(SqlSession& session) problem
|
 |
|
Re: Sql(SqlSession& session) problem
By: mirek on Wed, 17 July 2013 14:28
|
 |
|
Re: Sql(SqlSession& session) problem
|
 |
|
Re: Sql(SqlSession& session) problem
By: mirek on Wed, 17 July 2013 15:13
|
 |
|
Re: Sql(SqlSession& session) problem
|
 |
|
Re: Sql(SqlSession& session) problem
|
 |
|
Re: Sql(SqlSession& session) problem
|
 |
|
Re: Sql(SqlSession& session) problem
|
 |
|
Re: Sql(SqlSession& session) problem (SOLVED)
|
 |
|
Re: Sql(SqlSession& session) problem (SOLVED)
|
 |
|
Re: Sql(SqlSession& session) problem (SOLVED)
|
 |
|
Re: Sql(SqlSession& session) problem (SOLVED)
|
Goto Forum:
Current Time: Sat Jun 07 13:34:36 CEST 2025
Total time taken to generate the page: 0.03811 seconds
|