Skip to content
This repository
Fetching contributors…

Cannot retrieve contributors at this time

file 43 lines (31 sloc) 1.633 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43

// Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
// documentation files (the "Software"), to deal in the Software without restriction, including without limitation the
// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to
// permit persons to whom the Software is furnished to do so.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
// WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS
// OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

#ifndef CNXNINFO_H
#define CNXNINFO_H

struct Connection;
extern PyTypeObject CnxnInfoType;

struct CnxnInfo
{
    PyObject_HEAD

    // The description of these fields is in the connection structure.

    char odbc_major;
    char odbc_minor;

    bool supports_describeparam;
    int datetime_precision;

    // These are from SQLGetTypeInfo.column_size, so the char ones are in characters, not bytes.
    int varchar_maxlength;
    int wvarchar_maxlength;
    int binary_maxlength;
};

void CnxnInfo_init();

// Looks-up or creates a CnxnInfo object for the given connection string. The connection string can be a Unicode or
// String object.

PyObject* GetConnectionInfo(PyObject* pConnectionString, Connection* cnxn);

#endif // CNXNINFO_H
Something went wrong with that request. Please try again.