Function odbc_api::escape_attribute_value
source · [−]Expand description
You can use this method to escape a password so it is suitable to be appended to an ODBC
connection string as the value for the PWD
attribute. This method is only of interest for
application in need to create their own connection strings.
See:
- https://stackoverflow.com/questions/22398212/escape-semicolon-in-odbc-connection-string-in-app-config-file
- https://docs.microsoft.com/en-us/dotnet/api/system.data.odbc.odbcconnection.connectionstring
Example
use odbc_api::escape_attribute_value;
let password = "abc;123}";
let user = "SA";
let mut connection_string_without_credentials =
"Driver={ODBC Driver 17 for SQL Server};Server=localhost;";
let connection_string = format!(
"{}UID={};PWD={};",
connection_string_without_credentials,
user,
escape_attribute_value(password)
);
assert_eq!(
"Driver={ODBC Driver 17 for SQL Server};Server=localhost;UID=SA;PWD={abc;123}}};",
connection_string
);
use odbc_api::escape_attribute_value;
assert_eq!("abc", escape_attribute_value("abc"));
assert_eq!("ab}c", escape_attribute_value("ab}c"));
assert_eq!("{ab;c}", escape_attribute_value("ab;c"));
assert_eq!("{a}}b;c}", escape_attribute_value("a}b;c"));
assert_eq!("{ab+c}", escape_attribute_value("ab+c"));