File tree Expand file tree Collapse file tree 4 files changed +63
-0
lines changed Expand file tree Collapse file tree 4 files changed +63
-0
lines changed Original file line number Diff line number Diff line change @@ -48,6 +48,7 @@ const char AttachDBFileName[] = "AttachDbFileName";
48
48
const char Authentication[] = " Authentication" ;
49
49
const char ColumnEncryption[] = " ColumnEncryption" ;
50
50
const char ConnectionPooling[] = " ConnectionPooling" ;
51
+ const char Language[] = " Language" ;
51
52
const char ConnectRetryCount[] = " ConnectRetryCount" ;
52
53
const char ConnectRetryInterval[] = " ConnectRetryInterval" ;
53
54
const char Database[] = " Database" ;
@@ -241,6 +242,15 @@ const connection_option PDO_CONN_OPTS[] = {
241
242
CONN_ATTR_BOOL,
242
243
conn_null_func::func
243
244
},
245
+ {
246
+ PDOConnOptionNames::Language,
247
+ sizeof ( PDOConnOptionNames::Language ),
248
+ SQLSRV_CONN_OPTION_LANGUAGE,
249
+ ODBCConnOptions::Language,
250
+ sizeof ( ODBCConnOptions::Language ),
251
+ CONN_ATTR_STRING,
252
+ conn_str_append_func::func
253
+ },
244
254
{
245
255
PDOConnOptionNames::Driver,
246
256
sizeof (PDOConnOptionNames::Driver),
Original file line number Diff line number Diff line change @@ -1131,6 +1131,7 @@ const char Authentication[] = "Authentication";
1131
1131
const char Driver[] = " Driver" ;
1132
1132
const char CharacterSet[] = " CharacterSet" ;
1133
1133
const char ConnectionPooling[] = " ConnectionPooling" ;
1134
+ const char Language[] = " Language" ;
1134
1135
const char ColumnEncryption[] = " ColumnEncryption" ;
1135
1136
const char ConnectRetryCount[] = " ConnectRetryCount" ;
1136
1137
const char ConnectRetryInterval[] = " ConnectRetryInterval" ;
@@ -1163,6 +1164,7 @@ enum SQLSRV_CONN_OPTIONS {
1163
1164
SQLSRV_CONN_OPTION_ACCESS_TOKEN,
1164
1165
SQLSRV_CONN_OPTION_CHARACTERSET,
1165
1166
SQLSRV_CONN_OPTION_CONN_POOLING,
1167
+ SQLSRV_CONN_OPTION_LANGUAGE,
1166
1168
SQLSRV_CONN_OPTION_DATABASE,
1167
1169
SQLSRV_CONN_OPTION_ENCRYPT,
1168
1170
SQLSRV_CONN_OPTION_FAILOVER_PARTNER,
Original file line number Diff line number Diff line change @@ -233,6 +233,7 @@ const char Authentication[] = "Authentication";
233
233
const char CharacterSet[] = " CharacterSet" ;
234
234
const char ColumnEncryption[] = " ColumnEncryption" ;
235
235
const char ConnectionPooling[] = " ConnectionPooling" ;
236
+ const char Language[] = " Language" ;
236
237
const char ConnectRetryCount[] = " ConnectRetryCount" ;
237
238
const char ConnectRetryInterval[] = " ConnectRetryInterval" ;
238
239
const char Database[] = " Database" ;
@@ -380,6 +381,15 @@ const connection_option SS_CONN_OPTS[] = {
380
381
CONN_ATTR_BOOL,
381
382
conn_null_func::func
382
383
},
384
+ {
385
+ SSConnOptionNames::Language,
386
+ sizeof (SSConnOptionNames::Language),
387
+ SQLSRV_CONN_OPTION_LANGUAGE,
388
+ ODBCConnOptions::Language,
389
+ sizeof (ODBCConnOptions::Language),
390
+ CONN_ATTR_STRING,
391
+ conn_str_append_func::func
392
+ },
383
393
{
384
394
SSConnOptionNames::Driver,
385
395
sizeof (SSConnOptionNames::Driver),
Original file line number Diff line number Diff line change
1
+ --TEST--
2
+ Encoding of sqlsrv errors
3
+ --SKIPIF--
4
+ <?php require ('skipif.inc ' ); ?>
5
+ --FILE--
6
+ <?php
7
+ header ('content-type: text/plain;encoding=ISO-8859-1 ' );
8
+
9
+ require_once ("MsCommon.inc " );
10
+
11
+ $ conn = connect (array ( 'CharacterSet ' =>'UTF-8 ' ,'Language ' =>'German ' ));
12
+ if (!$ conn ) {
13
+ die (print_r (sqlsrv_errors (), true ));
14
+ }
15
+
16
+ $ stmt = sqlsrv_query ($ conn , "select *, BadColumn from sys.syslanguages " );
17
+ if ($ stmt ) {
18
+ echo 'OK! ' ;
19
+ sqlsrv_free_stmt ($ stmt );
20
+ } else {
21
+ $ errs = sqlsrv_errors ();
22
+ print_r ($ errs );
23
+ }
24
+
25
+ sqlsrv_close ($ conn );
26
+
27
+ ?>
28
+ --EXPECTF--
29
+ Array
30
+ (
31
+ [0] => Array
32
+ (
33
+ [0] => 42S22
34
+ [SQLSTATE] => 42S22
35
+ [1] => 207
36
+ [code] => 207
37
+ [2] => %SUngültiger Spaltenname %cBadColumn%c.
38
+ [message] => %SUngültiger Spaltenname %cBadColumn%c.
39
+ )
40
+
41
+ )
You can’t perform that action at this time.
0 commit comments