@@ -172,6 +172,7 @@ <h1>Source code for sqlobject.mysql.mysqlconnection</h1><div class="highlight"><
172
172
< span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> dbEncoding</ span > < span class ="o "> =</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> kw</ span > < span class ="p "> [</ span > < span class ="s2 "> "charset"</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="n "> kw</ span > < span class ="o "> .</ span > < span class ="n "> pop</ span > < span class ="p "> (</ span > < span class ="s2 "> "charset"</ span > < span class ="p "> )</ span >
173
173
< span class ="k "> else</ span > < span class ="p "> :</ span >
174
174
< span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> dbEncoding</ span > < span class ="o "> =</ span > < span class ="kc "> None</ span >
175
+ < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> driver</ span > < span class ="o "> =</ span > < span class ="n "> driver</ span >
175
176
176
177
< span class ="k "> global</ span > < span class ="n "> mysql_Bin</ span >
177
178
< span class ="k "> if</ span > < span class ="ow "> not</ span > < span class ="n "> PY2</ span > < span class ="ow "> and</ span > < span class ="n "> mysql_Bin</ span > < span class ="ow "> is</ span > < span class ="kc "> None</ span > < span class ="p "> :</ span >
@@ -192,20 +193,20 @@ <h1>Source code for sqlobject.mysql.mysqlconnection</h1><div class="highlight"><
192
193
< div class ="viewcode-block " id ="MySQLConnection.makeConnection "> < a class ="viewcode-back " href ="../../../api/sqlobject.mysql.mysqlconnection.html#sqlobject.mysql.mysqlconnection.MySQLConnection.makeConnection "> [docs]</ a > < span class ="k "> def</ span > < span class ="nf "> makeConnection</ span > < span class ="p "> (</ span > < span class ="bp "> self</ span > < span class ="p "> ):</ span >
193
194
< span class ="n "> dbEncoding</ span > < span class ="o "> =</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> dbEncoding</ span >
194
195
< span class ="k "> if</ span > < span class ="n "> dbEncoding</ span > < span class ="p "> :</ span >
195
- < span class ="k "> if</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> module </ span > < span class ="o "> .</ span > < span class ="n "> __name__ </ span > < span class ="o " > == </ span > < span class ="s1 "> 'MySQLdb '</ span > < span class ="p "> :</ span >
196
+ < span class ="k "> if</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> driver </ span > < span class ="o "> .</ span > < span class ="n "> lower </ span > < span class =" p " > () </ span > < span class ="ow " > in </ span > < span class =" p " > ( </ span > < span class =" s1 " > 'mysqldb' </ span > < span class =" p " > , </ span > < span class ="s1 "> 'pymysql '</ span > < span class ="p "> ) :</ span >
196
197
< span class ="kn "> from</ span > < span class ="nn "> MySQLdb.connections</ span > < span class ="k "> import</ span > < span class ="n "> Connection</ span >
197
198
< span class ="k "> if</ span > < span class ="ow "> not</ span > < span class ="nb "> hasattr</ span > < span class ="p "> (</ span > < span class ="n "> Connection</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'set_character_set'</ span > < span class ="p "> ):</ span >
198
199
< span class ="c1 "> # monkeypatch pre MySQLdb 1.2.1</ span >
199
200
< span class ="k "> def</ span > < span class ="nf "> character_set_name</ span > < span class ="p "> (</ span > < span class ="bp "> self</ span > < span class ="p "> ):</ span >
200
201
< span class ="k "> return</ span > < span class ="n "> dbEncoding</ span > < span class ="o "> +</ span > < span class ="s1 "> '_'</ span > < span class ="o "> +</ span > < span class ="n "> dbEncoding</ span >
201
202
< span class ="n "> Connection</ span > < span class ="o "> .</ span > < span class ="n "> character_set_name</ span > < span class ="o "> =</ span > < span class ="n "> character_set_name</ span >
202
- < span class ="k "> if</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> module </ span > < span class =" o " > . </ span > < span class ="n " > __name__ </ span > < span class =" o "> ==</ span > < span class ="s1 "> 'mysql. connector'</ span > < span class ="p "> :</ span >
203
+ < span class ="k "> if</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> driver </ span > < span class ="o "> ==</ span > < span class ="s1 "> 'connector'</ span > < span class ="p "> :</ span >
203
204
< span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> kw</ span > < span class ="p "> [</ span > < span class ="s1 "> 'consume_results'</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="kc "> True</ span >
204
205
< span class ="k "> try</ span > < span class ="p "> :</ span >
205
206
< span class ="n "> conn</ span > < span class ="o "> =</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> module</ span > < span class ="o "> .</ span > < span class ="n "> connect</ span > < span class ="p "> (</ span >
206
207
< span class ="n "> host</ span > < span class ="o "> =</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> host</ span > < span class ="p "> ,</ span > < span class ="n "> port</ span > < span class ="o "> =</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> port</ span > < span class ="p "> ,</ span > < span class ="n "> db</ span > < span class ="o "> =</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> db</ span > < span class ="p "> ,</ span >
207
208
< span class ="n "> user</ span > < span class ="o "> =</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> user</ span > < span class ="p "> ,</ span > < span class ="n "> passwd</ span > < span class ="o "> =</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> password</ span > < span class ="p "> ,</ span > < span class ="o "> **</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> kw</ span > < span class ="p "> )</ span >
208
- < span class ="k "> if</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> module </ span > < span class =" o " > . </ span > < span class =" n " > __name__ </ span > < span class ="o "> !=</ span > < span class ="s1 "> 'oursql'</ span > < span class ="p "> :</ span >
209
+ < span class ="k "> if</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> driver </ span > < span class ="o "> !=</ span > < span class ="s1 "> 'oursql'</ span > < span class ="p "> :</ span >
209
210
< span class ="c1 "> # Attempt to reconnect. This setting is persistent.</ span >
210
211
< span class ="n "> conn</ span > < span class ="o "> .</ span > < span class ="n "> ping</ span > < span class ="p "> (</ span > < span class ="kc "> True</ span > < span class ="p "> )</ span >
211
212
< span class ="k "> except</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> module</ span > < span class ="o "> .</ span > < span class ="n "> OperationalError</ span > < span class ="k "> as</ span > < span class ="n "> e</ span > < span class ="p "> :</ span >
@@ -216,10 +217,12 @@ <h1>Source code for sqlobject.mysql.mysqlconnection</h1><div class="highlight"><
216
217
217
218
< span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _setAutoCommit</ span > < span class ="p "> (</ span > < span class ="n "> conn</ span > < span class ="p "> ,</ span > < span class ="nb "> bool</ span > < span class ="p "> (</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> autoCommit</ span > < span class ="p "> ))</ span >
218
219
219
- < span class ="k "> if</ span > < span class ="n "> dbEncoding</ span > < span class =" ow " > and </ span > < span class =" bp " > self </ span > < span class =" o " > . </ span > < span class =" n " > module </ span > < span class =" o " > . </ span > < span class =" n " > __name__ </ span > < span class =" o " > == </ span > < span class =" s1 " > 'MySQLdb' </ span > < span class ="p "> :</ span >
220
- < span class ="k "> if</ span > < span class ="nb "> hasattr</ span > < span class ="p "> (</ span > < span class ="n "> conn</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'set_character_set'</ span > < span class ="p "> ):</ span > < span class =" c1 " > # MySQLdb 1.2.1 and later </ span >
220
+ < span class ="k "> if</ span > < span class ="n "> dbEncoding</ span > < span class ="p "> :</ span >
221
+ < span class ="k "> if</ span > < span class ="nb "> hasattr</ span > < span class ="p "> (</ span > < span class ="n "> conn</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'set_character_set'</ span > < span class ="p "> ):</ span >
221
222
< span class ="n "> conn</ span > < span class ="o "> .</ span > < span class ="n "> set_character_set</ span > < span class ="p "> (</ span > < span class ="n "> dbEncoding</ span > < span class ="p "> )</ span >
222
- < span class ="k "> else</ span > < span class ="p "> :</ span > < span class ="c1 "> # pre MySQLdb 1.2.1</ span >
223
+ < span class ="k "> elif</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> driver</ span > < span class ="o "> ==</ span > < span class ="s1 "> 'oursql'</ span > < span class ="p "> :</ span >
224
+ < span class ="n "> conn</ span > < span class ="o "> .</ span > < span class ="n "> charset</ span > < span class ="o "> =</ span > < span class ="n "> dbEncoding</ span >
225
+ < span class ="k "> elif</ span > < span class ="nb "> hasattr</ span > < span class ="p "> (</ span > < span class ="n "> conn</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'query'</ span > < span class ="p "> ):</ span >
223
226
< span class ="c1 "> # works along with monkeypatching code above</ span >
224
227
< span class ="n "> conn</ span > < span class ="o "> .</ span > < span class ="n "> query</ span > < span class ="p "> (</ span > < span class ="s2 "> "SET NAMES </ span > < span class ="si "> %s</ span > < span class ="s2 "> "</ span > < span class ="o "> %</ span > < span class ="n "> dbEncoding</ span > < span class ="p "> )</ span >
225
228
0 commit comments