现在的位置: 首页数据存储 > 正文
MySQL数据库.NET连接字符串设置详解
关键词:MySQL ┊ 来源: 原创收藏

网上很少用.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

sunpiny 翻译,如有翻译不准确,敬请见谅。
本文由 jack 发布于 2838天 2分钟前,目前已有 11562 人浏览
欢迎大家转载分享,请注明来源及链接;商业媒体转载请获得授权,谢谢合作!
 
匿名网友: 1楼2303天 23小时 43分钟前
我把其中一部分字符串取值的正则表达式琢磨了一下,可用于.net,其它平台未测试,希望能得大家到指正
Private _PatternUserId As String = "(?<=(?(^)\s*|[\;])\s*\bu(ser\s*)?(((?:ser)\s*name\b)?|(id\b)?)\s*\=\s*)\w+(?=\s*(?($)\s*|\;))"
Private _PatternServer As String = "(?<=(?(^)\s*|[\;])\s*(\bserver\b|\bhost\b|\bdata\s*source\b|\baddr(ess)?\b|\bnetwork\b\s+\baddress\b)\s*\=\s*)[^\=\;\s\t\n\r]+(?=\s*(?($)\s*|\;))"
Private _PatternPassword As String = "(?<=(?(^)\s*|[\;])\s*(\bpassword\b|\bpwd\b)\s*\=\s*)[^\=\;\s\t\n\r]+(?=\s*(?($)\s*|\;))"
Private _PatternCharacterSet As String = "(?<=(?(^)\s*|[\;])\s*\bchar(acter\s*)?set\b\s*\=\s*)[\w]+(?=\s*(?($)\s*|\;))"
Private _PatternConnectionTimeout As String = "(?<=(?(^)\s*|[\;])\s*\bconnection\s*timeout\b\s*\=\s*)\d+(?=\s*(?($)\s*|\;))"
Private _PatternPort As String = "(?<=(?(^)\s*|[\;])\s*\bport\b\s*\=\s*)\d+(?=\s*(?($)\s*|\;))"
jack: 2楼2303天 18小时 18分钟前
震憾!这正则什么场景会用到?
匿名网友: 3楼2290天 1小时 2分钟前
果断关注这个正则的用场!

添加评论