被迫转到MySQL数据库,发现读取数据库时,tinyint类型的值都被转化为boolean了,这样大于1的值都丢失,变成true了。查阅资料MySQL中无Boolean类型,都是存储为tinyint了,这也无妨,但是读回时不应该都变成boolean啊。网络检索没有解决方案,准备向官方报告bug,细想官方不应该有这样低级错误,先下载Connector/NET源码研究一下,发现其中有TreatTinyAsBoolean这个属性,检索百度无结果,google有几条英文的,看来大家都没有注意到这点,或者说很少用.Net玩 MySQL的。

这样将数据库连接字符串变为这样形式就一切正常了:
Database=dbname;Data Source=192.168.1.1;Port=3306;User Id=root;Password=****;Charset=utf8;TreatTinyAsBoolean=false;

顺便把源码中涉及的所有属性都列出来:
Server,host, data source, datasource, address, addr, network address: 数据库位置(以上任何关键字均可)
Database,initial catalog:数据库名
Port:        socket 端口,默认 3306
ConnectionProtocol,protocol:    连接协议,默认 Sockets
PipeName,pipe:        连接管道,默认 MYSQL
UseCompression,compress:    连接是否压缩,默认 false
AllowBatch:    是否允许一次执行多条SQL语句,默认 true
Logging:    是否启用日志,默认 false
SharedMemoryName:内存共享的名称,默认 MYSQL
UseOldSyntax,old syntax, oldsyntax:是否兼容旧版的语法,默认 false
ConnectionTimeout,connection timeout:连接超时等待时间,默认15s
DefaultCommandTimeout,command timeout:MySqlCommand 超时时间,默认 30s
UserID, uid, username, user name, user:数据库登录帐号
Password,pwd:    登录密码
PersistSecurityInfo:是否保持敏感信息,默认 false
Encrypt:已经用 SSL 替代了,默认 false
CertificateFile:证书文件(.pfx)格式
CertificatePassword:证书的密码
CertificateStoreLocation:证书的存储位置
CertificateThumbprint:证书指纹
AllowZeroDateTime:日期时间能否为零,默认 false
ConvertZeroDateTime:为零的日期时间是否转化为 DateTime.MinValue,默认 false
UseUsageAdvisor, usage advisor:是否启用助手,会影响数据库性能,默认 false
ProcedureCacheSize,procedure cache, procedurecache:同一时间能缓存几条存储过程,0为禁止,默认 25
UsePerformanceMonitor,userperfmon, perfmon:是否启用性能监视,默认 false
IgnorePrepare:    是否忽略 Prepare() 调用,默认 true
UseProcedureBodies,procedure bodies:是否检查存储过程体、参数的有效性,默认 true
AutoEnlist:    是否自动使用活动的连接,默认 true
RespectBinaryFlags:是否响应列上元数据的二进制标志,默认 true
TreatTinyAsBoolean:是否将 TINYINT(1) 列视为布尔型,默认 true
AllowUserVariables:是否允许 SQL 中出现用户变量,默认 false
InteractiveSession,interactive:会话是否允许交互,默认 false
FunctionsReturnString:所有服务器函数是否按返回字符串处理,默认 false
UseAffectedRows:是否用受影响的行数替代查找到的行数来返回数据,默认 false
OldGuids:    是否将 binary(16) 列作为 Guids,默认 false
Keepalive:    保持 TCP 连接的秒数,默认0,不保持。
ConnectionLifeTime:连接被销毁前在连接池中保持的最少时间(秒)。默认 0
Pooling:    是否使用线程池,默认 true
MinimumPoolSize, min pool size:线程池中允许的最少线程数,默认 0
MaximumPoolSize,max pool size:线程池中允许的最多线程数,默认 100
ConnectionReset:连接过期后是否自动复位,默认 false
CharacterSet, charset:向服务器请求连接所使用的字符集,默认:无
TreatBlobsAsUTF8:binary blobs 是否按 utf8 对待,默认 false
BlobAsUTF8IncludePattern:列的匹配模式,一旦匹配将按 utf8 处理,默认:无
SslMode:    是否启用 SSL 连接模式,默认:MySqlSslMode.None

文章出处:http://home.3233567.cn/space.php?uid=182&do=blog&id=159

MYSQL连接字符串参数解析(解释)的更多相关文章

  1. 转:MYSQL连接字符串参数解析(解释)

    被迫转到MySQL数据库,发现读取数据库时,tinyint类型的值都被转化为boolean了,这样大于1的值都丢失,变成true了.查阅资料MySQL中无Boolean类型,都是存储为tinyint了 ...

  2. MYSQL连接字符串参数详细解析(大全参考)

    Connector/Net Connection String Options Reference Database=dbname;Data Source=192.168.1.1;Port=3306; ...

  3. mysql连接字符串,连接字段结果集

    archie2010 ${原来姹紫嫣红开遍,似这般都付与扣钉八哥} mysql连接字符串,连接字段结果集 select CONCAT('My', 'S', 'QL连接字符串') as MySql; 连 ...

  4. MySql 连接字符串

    一.MySQL Connector/ODBC 2.50 (MyODBC 2.50)连接方式 1.本地数据库连接Driver={MySQL};Server=localhost;Option=16834; ...

  5. MySQL连接字符串总结

    一.MySQL Connector/ODBC 2.50 (MyODBC 2.50)连接方式 1.本地数据库连接 Driver={MySQL};Server=localhost;Option=16834 ...

  6. MYSQL连接相关参数和状态值详解

    针对mysql的连接参数和状态值,本文做些介绍和对比 一.MYSQL连接参数变量 1.常用连接数限制参数 show variables like '%connect%'; | max_connect_ ...

  7. [MySQL] - MySQL连接字符串总结

    来源:http://blog.sina.com.cn/s/blog_5f0dab1e0100e4pv.html?retcode=0 一.MySQL Connector/ODBC 2.50 (MyODB ...

  8. mysql 连接字符串 CONCAT

    以前用SQL Server 连接字符串是用“+”,现在数据库用mysql,写个累加两个字段值SQL语句居然不支持"+",郁闷了半天在网上查下,才知道mysql里的+是数字相加的操作 ...

  9. Mybatis连接MySQL时,可以使用的JDBC连接字符串参数

    一.举例 spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test_db?useAffectedRows=true&allowMultiQu ...

随机推荐

  1. SSH密钥登陆

    参考: SSH公钥登录原理 比如git可以生成公钥,然后用有权限的账户把他加到仓库上,以后就可以通过公钥登陆了.不需要像https那样需要有账号,但是权限管理就不细了. 有时候如果仓库上添加了多个公钥 ...

  2. centos6和7的防火墙开关

    CentOS6.5查看防火墙的状态: 1 [linuxidc@localhost ~]$service iptable status 显示结果: 1 2 3 4 5 [linuxidc@localho ...

  3. c# ref与out的区别

     c#  ref与out的区别 相同点:都是输出参数 不同点: ref: 1.必须初始化,即:必须赋初始值: 2.有进有出: 3.用在需要被调用的方法修改调用者的引用的时候. 4.是传递参数的地址 o ...

  4. javascript实现playfair和hill密码算法

    时至期末,补习信息安全概论作业.恰巧遇古典密码学算法中的playfair算法和hill算法,用javascript语言实现起来是在有趣,边查百度边编码,顺便好好补习一下javascript基础. pl ...

  5. iOS开发之静态库.a 以及合并

    静态库和动态库 静态库和动态库的存在形式静态库: .a 和 .framework 动态库: .dylib 和 .framework 静态库和动态库在使用上的区别静态库:链接时,静态库会被完整地复制到可 ...

  6. (转)windows下VMware-workstation中安装CentOS

    windows下VMware-workstation中安装CentOS   windows下VMware-workstation中安装CentOS,可以分两部分,安装虚拟机和安装CentOS虚拟机.具 ...

  7. jupyter notebook 的安装及使用

    推荐使用Python3 版本 安装pip3 版本 打开终端输入,安装jupyter notebook(ipython4之后命名) pip3 install jupyter notebook 启动jup ...

  8. EndNote登陆Web账号时解决不断询问用户名密码

    EndNote登陆Web账号时不断询问用户名密码怎么破?EndNote有个同步功能,在登陆Web账号时,EndNote不断的询问账号和密码,可是用户名和密码明明已经填写正确和完毕,就是登陆不上EndN ...

  9. C#集合之不变的集合

    如果对象可以改变其状态,就很难在多个同时运行的任务中使用.这些集合必须同步.如果对象不能改变器状态,就很容易在多个线程中使用. Microsoft提供了一个新的集合库:Microsoft Immuta ...

  10. springboot(九)-log配置

    spring项目放到tomcat中运行,我们可以在tomcat的logs文件夹下面生成log文件.那么我们的springboot项目没有放到系统安装的tomcat容器中,怎么设置生成log文件呢? 有 ...