| | |
| | | template<> |
| | | inline void bind_record<qtl::odbc::statement, TestOdbcRecord>(qtl::odbc::statement& command, TestOdbcRecord&& v) |
| | | { |
| | | qtl::bind_field(command, (size_t)0, v.id); |
| | | qtl::bind_field(command, 1, v.name); |
| | | qtl::bind_field(command, 2, v.create_time); |
| | | qtl::bind_fields(command, v.id, v.name, v.create_time); |
| | | } |
| | | } |
| | | |
| | | TestOdbc::TestOdbc() : m_db(m_env) |
| | | { |
| | | m_db.open("DRIVER={SQL Server};SERVER=(local);UID=;PWD=;Trusted_Connection=yes;DATABASE=test"); |
| | | //m_db.open("DRIVER={SQL Server};SERVER=(local);UID=;PWD=;Trusted_Connection=no;DATABASE=test;UID=sa;PWD=111111;"); |
| | | m_db.open("DRIVER={SQL Server};SERVER=(local);UID=;PWD=;Trusted_Connection=no;DATABASE=test;UID=sa;PWD=111111;"); |
| | | cout<<"DBMS: "<<m_db.dbms_name()<<endl; |
| | | cout<<"SERVER: "<<m_db.server_name()<<endl; |
| | | cout<<"USER: "<<m_db.user_name()<<endl; |
| | |
| | | cout<<hex; |
| | | for(size_t i=0; i!=n; i++) |
| | | cout<<(data[i]&0xFF); |
| | | cout<<dec; |
| | | } |
| | | |
| | | int main(int argc, char* argv[]) |