MySQL 连接方式-----------

MySQL Connector/ODBC 2.50 (MyODBC 2.50)连接方式

本地数据库连接

Driver={mySQL};Server=localhost;Option=16834;Database=myDataBase;

远程数据连接:

Driver={mySQL};Server=myServerAddress;Option=131072;Stmt=;Database=myDataBase; User=myUsername;Password=myPassword;

特殊的TCP/IP端口连接

Driver={mySQL};Server=myServerAddress;Port=3306;Option=131072;Stmt=;Database=myDataBase; User=myUsername;Password=myPassword;

说明:此Driver的默认端口是3306。如果没有在连接字符串中特别指出就是连接Mysql的3306端口。

MySQL Connector/ODBC 3.51 (MyODBC 3.51)连接方式

本地数据库连接

Driver={MySQL ODBC 3.51 Driver};Server=localhost;Database=myDataBase; User=myUsername;Password=myPassword;Option=3;

远程数据连接

Driver={MySQL ODBC 3.51 Driver};Server=data.domain.com;Database=myDataBase;User=myUsername; Password=myPassword;Option=3;

特殊的TCP/IP端口连接

Driver={MySQL ODBC 3.51 Driver};Server=data.domain.com;Port=3306;Database=myDataBase;User=myUsername; Password=myPassword;Option=3;

说明:此Driver的默认端口是3306。如果没有在连接字符串中特别指出就是连接Mysql的3306端口。

特殊字符集的连接

Driver={MySQL ODBC 3.51 Driver};Server=data.domain.com;charset=UTF8;Database=myDataBase;User=myUsername; Password=myPassword;Option=3;

OLE DB, OleDbConnection (.NET)连接方式

标准连接

Provider=MySQLProv;Data Source=mydb;User Id=myUsername;Password=myPassword;

MySQL Connector/Net (.NET)连接方式

标准连接

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;

默认端口是3306.

特殊的TCP/IP端口连接

Server=myServerAddress;Port=1234;Database=myDataBase;Uid=myUsername;Pwd=myPassword;

命名管道

Server=myServerAddress;Port=-1;Database=myDataBase;Uid=myUsername;Pwd=myPassword;

说明:端口值为-1,说明用命名管道方式连接。此方式只在Windows下有效,在UNIX下用会被忽略。

多服务器连接

用此种方式连接到数据库中,不必担心该使用哪个数据库。

Server=serverAddress1 & serverAddress2 & etc..;Database=myDataBase;Uid=myUsername;Pwd=myPassword;

加密选项

这条活动的SSL连接加密所有客户端和服务器商的数据传输。而且服务器要有一个证书。

Server=myServerAddress;Port=-1;Database=myDataBase;Uid=myUsername;Pwd=myPassword;

这个选项从 Connector/NET5.0.3版开始出现,以前的版本中则没有此功能。

修改默认的命令超时时间

使用这条修改连接的默认命令超时时间。注意:此条不会影响你在单独命令对象上设置的超时时间。 以下是语法格式:

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;default command timeout=20;

此条只对Connector/NET 5.1.4 及以上的版本有效.

修改连接偿试时间

使用这条修改在终止重试和接收错误的等待时间(以秒为单位) 以下是语法格式:

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Connection Timeout=5;

Inactivating prepared statements

Use this one to instruct the provider to ignore any command prepare statements and prevent corruption issues with server side prepared statements. 以下是语法格式:

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Ignore Prepare=true;

此选项被加入到Connector/NET的5.0.3版和1.0.9版。

特殊的TCP/IP端口连接

这条语句修改连接的端口。

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Port=3306;

默认端口是3306。此参数会被Unix忽略。

特殊网络协议

这条语句修改用哪种协议进行连接。 以下是语法格式:

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Protocol=socket;

如果没有特别说明,"socket"是默认的值。"tcp"是与"socket"相同意义的。"pipe"是使用命名管道连接,"unix"是使用unix socket连接,"memory"是使用mySql的共享内存。

特殊字符集的连接

这个语句指出以使种字符串编码发送到服务器上的查询语句。

以下是语法格式:

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;CharSet=UTF8;

注意:查询结果仍然是以反回数据的格式传送。

修改共享内存名

此语句用来修改用来通信的共享内存名称。 以下是语法格式:

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Shared Memory Name=MYSQL;

说明:    此语句只有当连接协议设置为"memory"时才有效。

MySqlConnection (.NET)连接方式

eInfoDesigns.dbProvider 以下是语法格式:

Data Source=myServerAddress;Database=myDataBase;User ID=myUsername;Password=myPassword;Command Logging=false;

SevenObjects MySqlClient (.NET)连接方式

标准连接

Host=myServerAddress;UserName=myUsername;Password=myPassword;Database=myDataBase;

Core Labs MySQLDirect (.NET)连接方式

标准连接

User ID=root;Password=myPassword;Host=localhost;Port=3306;Database=myDataBase; Direct=true;Protocol=TCP;Compress=false;Pooling=true;Min Pool Size=0;Max Pool Size=100;Connection Lifetime=0;

MySQLDriverCS (.NET)连接方式

标准连接

Location=myServerAddress;Data Source=myDataBase;User ID=myUsername;Password=myPassword;Port=3306;Extended Properties="""";

-----------excel----------

ODBC 方式

以下是代码片段:

Driver={Microsoft Excel Driver (*.xls)};DriverId=790;Dbq=C:\MyExcel.xls;DefaultDir=c:\mypath;

SQL语法 "SELECT * FROM [sheet1$]". Excel 工作表名跟一个"$"并且加一个中括号。

OLE DB方式

标准格式

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\MyExcel.xls;Extended Properties="Excel 8.0;HDR=Yes;IMEX=1";

注意 :在字符串中的引号"需要根据你使用的语言转义一些.举例如下

c#, c++   \"

VB6, VBScript   ""

xml (web.config etc)   "

或者用单引号’。

"HDR=Yes;" 这个参数说明第一行是列名,而不是数据. "HDR=No;"正好与前面的相反。

"IMEX=1;" 告诉driver总是把数据作为text 类型.注意,这选项会影响excel的写访问(sheet write access negative)。

SQL语法 "SELECT * FROM [sheet1$]"。Excel 工作表名跟一个"$"并且加一个中括号。

检查注册表 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Excel] located registry REG_DWORD "TypeGuessRows". 此项将不会让excel仅读前8行去猜数据列的类型。把这项设为0,让excel检查所有行。这会影响性能。

如果excel文件有密码,你将不能连接成功,即使提供了正确的密码。如果你试一下,你会发现提示“不能解密文件”

--------------access------------------

ODBC

标准连接

Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\mydatabase.mdb;Uid=Admin;Pwd=;

工作组

Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\mydatabase.mdb;SystemDB=C:\mydatabase.mdw;

独享(排他)连接

Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\mydatabase.mdb;Exclusive=1;Uid=admin;Pwd=;

开启管理语句功能

要执行特别的语句如CREATE USER, CREATE GROUP, ADD USER, GRANT, REVOKE 和 DEFAULTS (当执行CREATE TABLE 语句时) 用下面的连接字符串。

Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\mydatabase.mdb;Uid=Admin;Pwd=;ExtendedAnsiSQL=1;

具体的 locale identifier

使用locale identifier可以帮助识别非美语日期

Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\mydatabase.mdb;Locale Identifier=2057;Uid=Admin;Pwd=;

OLE DB, OleDbConnection (.NET)

标准连接

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mydatabase.mdb;User Id=admin;Password=;

带数据库密码的连接

下面是一个带有密码保护的access 数据库.

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mydatabase.mdb;Jet OLEDB:Database Password=MyDbPassword;

工作组(system database)

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mydatabase.mdb;Jet OLEDB:System Database=system.mdw;

带用户名与密码的工作组(system database)

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mydatabase.mdb;Jet OLEDB:System Database=system.mdw;User ID=myUsername;Password=myPassword;

DataDirectory functionality

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\myDatabase.mdb;User Id=admin;Password=;

-------------------sql server---------------

ODBC方式

标准安全链接语法:

Driver={SQL Server};Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;

信任连接语法:

Driver={SQL Server};Server=myServerAddress;Database=myDataBase;Trusted_Connection=Yes;

若提示用户名和密码,这里有一个小技巧.首先你要设置连接对象的Prompt 属性为adPromptAlways.然后用下面的连接字符串连接数据库. 以下是语法格式:

oConn.Properties("Prompt") = adPromptAlways

Driver={SQL Server};Server=myServerAddress;Database=myDataBase;

OLE DB, OleDbConnection (.NET)

标准安全链接语法:

Provider=sqloledb;Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;

信任连接语法:

Provider=sqloledb;Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;

用服务器名\实例名来连接一个服务器实例,需要注意很多实例连接参数仅对2000版本有效,以前其他的版本是不可以用的.

连接到sql server实例. 以下是语法格式:

Provider=sqloledb;Data Source=myServerName\theInstanceName;Initial Catalog=myDataBase;Integrated Security=SSPI;

若提示用户名和密码,也需要一点小技巧.首先设置连接对象的Provider属性为sqloledb,接着设置连接对象的Prompt属性为adPromptAlways.最后用连接字符串连接数据库就可以啦.代码如下: 以下是示例代码:

oConn.Provider = "sqloledb"

oConn.Properties("Prompt") = adPromptAlways

Data Source=myServerAddress;Initial Catalog=myDataBase;

通过IP地址连接

Provider=sqloledb;Data Source=190.190.200.100,1433;Network Library=DBMSSOCN;Initial Catalog=myDataBase;User ID=myUsername;Password=myPassword;

DBMSSOCN=TCP/IP.是告诉连接对象用ip连接而不是命名管道的方式.DataSource最后的那个1433端口是SQL server的默认端口(站长注:与sql server2005的不相同)

SqlConnection (.NET)

标准连接语法:

Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;

标准连接语法(另一种):

Server=myServerAddress;Database=myDataBase;User ID=myUsername;Password=myPassword;Trusted_Connection=False;

第二种连接字符串与前一个是效果相同的.之所以包含到这里是为了指出很多连接字符串的关键词有相同的效果.

信任连接语法:

Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;

信任连接的语法(另一种):

Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;

用服务器名\实例名来连接一个服务器实例,需要注意很多实例连接参数仅对2000版本有效,以前其他的版本是不可以用的. 连接到Sql Server实例:

Server=myServerName\theInstanceName;Database=myDataBase;Trusted_Connection=True;

CE设备的信任连接

通常一个windows CE设置是被验证过并且登陆到域中的,用SSPI或信任/验证过的连接连接数据库用下面的连接字符串: 以下是语法格式:

Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;User ID=myDomain\myUsername;Password=myPassword;

注意:仅在CE设备上有效.

通过IP地址连接

Data Source=190.190.200.100,1433;Network Library=DBMSSOCN;Initial Catalog=myDataBase;User ID=myUsername;Password=myPassword;

DBMSSOCN=TCP/IP.是告诉连接对象用ip连接而不是命名管道的方式.DataSource最后的那个1433端口是SQL server的默认端口(站长注:与sql server2005的不相同)

特殊的包大小

以下是语法格式:

Server=myServerAddress;Database=myDataBase;User ID=myUsername;Password=myPassword;Trusted_Connection=False;Packet Size=4096;

默认的,微软的.net框架中的SQL Server数据库Provider 设置的默认网络包的大小为8192字节,这可能不是最优的设置 ,你可以试着设置为4096字节.

8192字节可能引发" Failed to reserve contiguous memory" 错误.

Data Shape

以下是语法格式:

Provider=MSDataShape;Data Provider=SQLOLEDB;Data Source=myServerAddress;Initial Catalog=myDataBase;User ID=myUsername;Password=myPassword;

--------------sql server 2005---------

SQL Native Client ODBC Driver

标准安全连接 以下是语法格式:

Driver={SQL Native Client};Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;

你用过sql server 2005 Express么?不要忘记服务器的语法“Servername\SQLEXPRESS”(你要把Servername替换为装有sql server 2005 Express的计算机的名字)

信任连接

Driver={SQL Native Client};Server=myServerAddress;Database=myDataBase;Trusted_Connection=yes;

等效的参数对:"Integrated Security=SSPI"与"Trusted_Connection=yes" 效果相同。

连接到一个SQL Server 实例

这个指明Sql Server 实例的语法中的server参数的值对所有连接Sql Server的字符串相同。

以下是语法格式:

Driver={SQL Native Client};Server=myServerName\theInstanceName;Database=myDataBase;Trusted_Connection=yes;

提示用户名和密码

这个有点麻烦。首先你要设置连接对象的Prompt属性为adPromptAlways,然后用连接字符串连接数据库。

以下是语法格式:

oConn.Properties("Prompt") = adPromptAlways

Driver={SQL Native Client};Server=myServerAddress;Database=myDataBase;

允许多个结果集(Enable Mars (multiple active result sets))

以下是语法格式:

Driver={SQL Native Client};Server=myServerAddress;Database=myDataBase;Trusted_Connection=yes;MARS_Connection=yes;

等效的参数对:"MultipleActiveResultSets=true"与"MARS_Connection=yes" 效果相同。使用Mars功能需要ADO.NET2.0。ADO.NET1.0和1.1不支持此功能。

网络加密传输数据

以下是语法格式:

Driver={SQL Native Client};Server=myServerAddress;Database=myDataBase;Trusted_Connection=yes;Encrypt=yes;

在一个到本地SQL Server Express 实例的连接上附加数据库文件

以下是语法格式:

Driver={SQL Native Client};Server=.\SQLExpress;AttachDbFilename=c:\asd\qwe\mydbfile.mdf; Database=dbname;Trusted_Connection=Yes;

为什么要带上Database参数呢?因为如果有同名的数据库已经被附加上啦,SQL Server将不会重新附加该数据库。他将使用原数据库作为要连接的对象。

在一个到本地SQL Server Express 实例的连接上附加数据库文件(数据文件在数据目录中。)

以下是语法格式:

Driver={SQL Native Client};Server=.\SQLExpress;AttachDbFilename=|DataDirectory|mydbfile.mdf; Database=dbname;Trusted_Connection=Yes;

为什么要带上Database参数呢?因为如果有同名的数据库已经被附加上啦,SQL Server将不会重新附加该数据库。他将使用原数据库作为要连接的对象。

数据库镜像

如果你用Ado.Net或着SQL Native Client 连接到一个镜像的数据库,当一个数据库镜像出错时,你的应用程序应该提供自动切换连接的功能。那么,你应该在连接字符串中指明原始数据库名和镜像数据库名。

以下是语法格式:

Data Source=myServerAddress;Failover Partner=myMirrorServer;Initial Catalog=myDataBase;Integrated Security=True;

当然还有很多连接数据库镜像的连接字符串的写法。这只是一个例子指明 failover功能。你还可以指明其他的连接字符串属性参数。

SQL Native Client OLE DB Provider

标准安全连接 以下是语法格式:

Provider=SQLNCLI;Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;

你用过sql server 2005 Express么?不要忘记服务器的语法“Servername\SQLEXPRESS”(你要把Servername替换为装有sql server 2005 Express的计算机的名字)

信任连接

以下是语法格式:

Provider=SQLNCLI;Server=myServerAddress;Database=myDataBase;Trusted_Connection=yes;

等效的参数对:"Integrated Security=SSPI"与"Trusted_Connection=yes" 效果相同。

连接到一个SQL Server 实例

这个指名Sql Server 实例的语法中的server参数的值对所有连接Sql Server的字符串相同。

以下是语法格式:

Provider=SQLNCLI;Server=myServerName\theInstanceName;Database=myDataBase;Trusted_Connection=yes;

提示用户名和密码

这个有点麻烦。首先你要设置连接对象的Prompt属性为adPromptAlways,然后用连接字符串连接数据库。

以下是语法格式:

oConn.Properties("Prompt") = adPromptAlways

oConn.Open "Provider=SQLNCLI;Server=myServerAddress;DataBase=myDataBase;

允许多个结果集(Enable Mars (multiple active result sets))

以下是语法格式:

Provider=SQLNCLI;Server=myServerAddress;Database=myDataBase;Trusted_Connection=yes;MarsConn=yes;

等效的参数对:"MultipleActiveResultSets=true"与"MARS_Connection=yes" 效果相同。使用Mars功能需要ADO.NET2.0。ADO.NET1.0和1.1不支持此功能。

网络加密传输数据

以下是语法格式:

Provider=SQLNCLI;Server=myServerAddress;Database=myDataBase;Trusted_Connection=yes;Encrypt=yes;

在一个到本地SQL Server Express 实例的连接上附加数据库文件

以下是语法格式:

Provider=SQLNCLI;Server=.\SQLExpress;AttachDbFilename=c:\asd\qwe\mydbfile.mdf; Database=dbname;Trusted_Connection=Yes;

为什么要带上Database参数呢?因为如果有同名的数据库已经被附加上啦,SQL Server将不会重新附加该数据库。他将使用原数据库作为要连接的对象。

在一个到本地SQL Server Express 实例的连接上附加数据库文件(数据文件在数据目录中。)

以下是语法格式:

Provider=SQLNCLI;Server=.\SQLExpress;AttachDbFilename=|DataDirectory|mydbfile.mdf; Database=dbname;Trusted_Connection=Yes;

为什么要带上Database参数呢?因为如果有同名的数据库已经被附加上啦,SQL Server将不会重新附加该数据库。他将使用原数据库作为要连接的对象。

数据库镜像

如果你用Ado.Net或着SQL Native Client 连接到一个镜像的数据库,当一个数据库镜像出错时,你的应用程序应该提供自动切换连接的功能。那么,你应该在连接字符串中指明原始数据库名和镜像数据库名。

以下是语法格式:

Data Source=myServerAddress;Failover Partner=myMirrorServer;Initial Catalog=myDataBase;Integrated Security=True;

当然还有很多连接数据库镜像的连接字符串的写法。这只是一个例子指明 failover功能。你还可以指明其他的连接字符串属性参数。

SqlConnection (.NET)

标准安全连接 以下是语法格式:

Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;

使用"服务器名\实例名"的格式作为Data Source来连接到一个Sql Server服务器上的一个实例。

你用过sql server 2005 Express么?不要忘记服务器的语法“Servername\SQLEXPRESS”(你要把Servername替换为装有sql server 2005 Express的计算机的名字)

标准连接的另一种语法

这个连接字符串和前一个的作用是一样的,只所以放到这里是为了说明有些连接参数带有相同的效果。

以下是语法格式:

Server=myServerAddress;Database=myDataBase;User ID=myUsername;Password=myPassword;Trusted_Connection=False;

信任的连接

Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;

信任连接的另一种语法

这个连接字符串和前一个的作用是一样的,只所以放到这里是为了说明有些连接参数带有相同的效果。

以下是语法格式:

Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;

这个指名Sql Server 实例的语法中的server参数的值对所有连接Sql Server的字符串相同。 以下是语法格式:

Server=myServerName\theInstanceName;Database=myDataBase;Trusted_Connection=True;

信任连接来至CE设备

通常CE设备是没有验证和登陆到域的。用SSPI或信任验证的连接要使用下面的连接字符串。 以下是语法格式:

Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;User ID=myDomain\myUsername;Password=myPassword;

注意:上面的语法只能用在CE设置上。

通过IP地址的连接 以下是语法格式:

Data Source=190.190.200.100,1433;Network Library=DBMSSOCN;Initial Catalog=myDataBase;User ID=myUsername;Password=myPassword;

DBMSSOCN=TCP/IP.这是指明使用IP地址而不是命名管道来连接。Data Source的最后是端口。1433是数据库的默认端口。

允许多个结果集(Enable Mars (multiple active result sets))

以下是语法格式:

Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;MultipleActiveResultSets=true;

此功能只支持Ado.net 2.0.

在一个到本地SQL Server Express 实例的连接上附加数据库文件

以下是语法格式:

Server=.\SQLExpress;AttachDbFilename=c:\asd\qwe\mydbfile.mdf;Database=dbname;Trusted_Connection=Yes;

为什么要带上Database参数呢?因为如果有同名的数据库已经被附加上啦,SQL Server将不会重新附加该数据库。他将使用原数据库作为要连接的对象。

在一个到本地SQL Server Express 实例的连接上附加数据库文件(数据文件在数据目录中。)

以下是语法格式:

Server=.\SQLExpress;AttachDbFilename=|DataDirectory|mydbfile.mdf; Database=dbname;Trusted_Connection=Yes;

为什么要带上Database参数呢?因为如果有同名的数据库已经被附加上啦,SQL Server将不会重新附加该数据库。他将使用原数据库作为要连接的对象。

使用本机上的SQL Server Express 实例上的用户实例。

用户实例的连接创建了一个新的SQL Server 实例。此连接只能是在本地SQL Server 2005实例上并且是通过命名管的windows验证连接才有效。目的就是为了给用户创建一个完全权限的Sql Server 实例和有限的计算机管理员权限。

以下是语法格式:

Data Source=.\SQLExpress;Integrated Security=true;AttachDbFilename=|DataDirectory|\mydb.mdf;User Instance=true;

要使用User Instance 功能,你要在sql server服务器上启用他。你可以通过执行“sp_configure 'user instances enabled', '1'”来启用,执行“sp_configure 'user instances enabled', '0'”来禁用。

数据库镜像

如果你用Ado.Net或着SQL Native Client 连接到一个镜像的数据库,当一个数据库镜像出错时,你的应用程序应该提供自动切换连接的功能。那么,你应该在连接字符串中指明原始数据库名和镜像数据库名。

以下是语法格式:

Data Source=myServerAddress;Failover Partner=myMirrorServer;Initial Catalog=myDataBase;Integrated Security=True;

当然还有很多连接数据库镜像的连接字符串的写法。这只是一个例子指明 failover功能。你还可以指明其他的连接字符串属性参数。

异步处理

SQL Server 2005允许通过Ado.net对象进行异步请求任务。

以下是语法格式:

Server=myServerAddress;Database=myDataBase;Integrated Security=True;Asynchronous Processing=True;

SQL Server 2005 specials

Context连接

Connecting to "self" from within your CLR stored prodedure/function. The context connection lets you execute Transact-SQL statements in the same context (connection) that your code was invoked in the first place.

以下是语法格式:

C#

using(SqlConnection connection = new SqlConnection("context connection=true"))

{

connection.Open();

}

---------------数据库连接字符串的加密与解密---------------

ASP.NET web.config中,数据库连接字符串的加密与解密。

方法:开始--->运行,输入cmd,接着输入以下内容

加密:

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -pef "connectionStrings" "你的Web项目路径"

解密:

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -pdf "connectionStrings" "你的Web项目路径"

.NET为版本的路径自行修改,其中connectionStrings连接字符串的名称。

需要注意的是,加密过程中使用了一个基于本机的密钥,这意味着解密过程必须在同一台计算机上完成。如果是将加密后的Web.config文件移动到其它计算机上,那么Web.config文件中的连接字符串将不能够正常解密。

-----------------------------------------------------------------------------------------------------------------------------------------

ASP.net2.0提供了简便的加密方法,即使用aspnet_iis.exe命令,该命令位置如下:

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727

注意,具体情况视系统位置及版本号有所差异

在命令模式下进入该目录即可运行,完整命令为:

aspnet_iis -pef "connectionStrings" "Web.cofing绝对路径(注:不需要输入web.config)"

如果正常会提示“成功”,此时打开Web.config会发现字符串已加密

解密命令为:

aspnet_iis -pdf "connectionStrings" "Web.cofing绝对路径(注:不需要输入web.config)"

注意的是加密、解密必须在一台机器上完成。

--------------连接串加密解密---------------

下面显示的是通过代码方式对数据库连接字符串加密,代码如下:

Configuration config = WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath);

ConfigurationSection configSection = config.GetSection("connectionStrings");

if (configSection.SectionInformation.IsProtected)

...{//如果已经加密,就不用再加密了

configSection.SectionInformation.UnprotectSection();

config.Save();

}

else {

configSection.SectionInformation.ProtectSection ("DataProtectionConfigurationProvider");

config.Save();

}

ASP.NET中web.config中加密连接字符串

旧版本的ASP.NET将连接字符串直接保存在ASPX页面中。回想一下,连接字符串包含了数据服务器名称和用户账户等信息,有时候甚至还包含了密码。在代码中包含以上信息是非常不好的习惯,原因有二。首先,这些信息可以被设计小组中的每一位程序人员看到(但是站点访问者不能在浏览器上看到)。第二,在整个Web站点中的每一个拥有该连接的地方,都必须进行维护和更新。更新密码成为了一项繁重的工作。

ASP.NET 2.0提供了一个选项可以将连接字符串移动至Web.config文件的连接区域,给字符串一个名称并将其加密。然后ASP.NET 2.0页面就通过这个名称来引用连接字符串。保存连接字符串至Web.config的步骤并不复杂。打开位于站点根目录下的Web.config文件。找到被界定的区域(如果不存在,可自行添加)并在标记中输入如下代码。该标记有三个属性:name、connectionString和providerName。属性name就是将会在页面中使用的连接字符串的普通名称。connectionString属性应当设置为连接至数据库的完整的连接字符串,如前所述。

e.g.

http://schemas.microsoft.com/.NetConfiguration/v2.0">

providerName="System.Data.SqlClient" />

providerName="System.Data.SqlClient" />

providerName="System.Data.SqlClient" />

providerName="System.Data.SqlClient" />

providerName="System.Data.SqlClient" />

通过使用命令,可以将Web.config文件的连接字符串区域加密。当ASPX页面请求连接字符串时,将由ASP.NET自动对信息进行解密。加密必须由以下命令行来执行。依次单击Start/Run/cmd并切换至C:\WINDOWS\ Microsoft.net\ Framework\ v2.0.xxxx,其中xxxx是您的软件版本。如果C:\Websites\BegAspNet2Db是站点根目录的话,即可输入如下命令行:

aspnet_regiis –pef connectionStrings C:\Websites\BegAspNet2Db

加密连接字符串的命令行工具还可以使用虚拟路径语法(在IIS元数据库中的路径),而无需指定Web.config文件的完全限定路径,如下所示:

aspnet_regiis –pe connectionStrings –app /BegAspNet2Db

一旦执行完了加密过程,就可以打开Web.config文件,但是连接字符串已经被混淆。当ASP.NET需要,连接字符串即可自动解密,或者如果需要进行一些更改,例如修改密码,则可以手动输入以下代码来解密。

aspnet_regiis –pdf connectionStrings c:\Websites\BegAspNet2Db

请注意,在默认情况下,加密过程使用了一个基于加密算法执行的机器的键。解密过程(无论手动还是在处理页面过程中)必须发生在与加密相同的机器上。例如,作为XCOPY部署的一部分,移动Web.config至另外一台机器将会导致Web.config无法解密,所以推荐在部署Web站点至最终机器之后,再将连接字符串进行加密。

--------------OLE DB Provider Microsoft Jet oledb连接字符串格式介绍-----------

做网站的朋友经连见到用Microsoft.Jet.Oledb.4.0连接Access数据库的情况。那这个连接方式都有哪些参数可供我们设置呢?我们应该如何优化呢?下面我是我找到的关于这个连接方式的介绍。

OLE DB Provider for Microsoft Jet 允许 ADO 访问 Microsoft Jet 数据库。

连接字符串参数

要连接此提供者(Provider),请将 ConnectionString 属性的 Provider 参数设置为:

Microsoft.Jet.OLEDB.4.0

读取 Provider 属性也将返回此字符串。

典型连接字符串

此提供者的典型连接字符串是:

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=databaseName;User ID=userName;Password=userPassword;"

它包含下列关键字:

jet mysql连接字符串_数据库连接字符串大全相关推荐

  1. access mysql连接字符串_[数据库连接字符串] Access 连接字符串

    [数据库连接字符串] Access 连接字符串 //ODBC 标准安全策略 Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\mydatabase.mdb ...

  2. c# mysql 连接串_C#数据库连接字符串

    sa登陆: "Data Source=.;Initial Catalog=数据库;User ID=sa,pwd=;"; windows登陆 Data Source=.;Initia ...

  3. gc问题mysql连接池_数据库连接池引起的FullGC问题,看我如何一步步排查、分析、解决...

    问题现象 在某个工作日,突然收到线上的服务告警,有大量的请求延时产生,查看线上服务发现基本上都是获取数据库连接超时,而且影响时间只有3~4秒钟,服务又恢复了正常.隔了几分钟之后,又出现了大量的告警,还 ...

  4. mysql关键字释义_数据库连接字符串ConnectionString 中的关键字值释义

    ConnectionString 类似于 OLE DB 连接字符串,但并不相同.与 OLE DB 或 ADO不同,如果"Persist Security Info "值设置为fal ...

  5. c# mysql 连接串_c#数据库连接字符串集合

    本文介绍了C#连接常用数据库的常用方法,供大家进行设计数据库程序时参考. (一)常用连接: (1)使用SqlConnection对象: public void SqlConnectionOpen() ...

  6. mysql连接字符串 端口_数据库连接字符串 端口号

    如何获取SQL server数据库的连接字符串 步骤:1.新建一个txt文本文档,然后把后缀名改为udl2.打开 新建文本文档. udl ,并选择相应的数据库进行连接,之后点击 "测试连接& ...

  7. vs mysql连接字符串_vs 数据库连接字符串

    VS2010连接SQLSERVER2008数据库的步骤 1.在要连接数据库的类中使用using namespace System::Data::SqlClient; 将类型引入 2.定义一个连接对象, ...

  8. 数据库连接字符串 mysql_数据库连接字符串(MySQL,SQL Server,Oracle)

    数据库连接字符串(在java中使用) =====MySQL===== String driverClass="com.mysql.jdbc.Driver; String url=" ...

  9. mysql 连接符_MySql 链接字符串

    MySql连接字符串总结 1.本地数据库连接 2.远程数据连接 Server=myServerAddress;Option=131072;Stmt=;Database=myDataBase; User ...

最新文章

  1. Golang经典面试题上
  2. OpenCV人脸检测与人脸识别
  3. 【QQ输入法】QQ输入法-剪切板 释放内存
  4. Codeforces Round #656 (Div. 3) F. Removing Leaves 贪心 + 模拟
  5. 手机搜狗浏览器怎么样
  6. ue4 运行禁用鼠标_从零开始——三:关闭电脑无用服务提高运行速度
  7. Java类的加载过程,类加载器,双亲委派原则
  8. 图标截取——背景偏移量技术
  9. Xshell中文乱码怎么处理?
  10. 计算机学院金海教授当选2019IEEE会士
  11. W25Q64Flash芯片
  12. 软件相貌测试准确吗,测另一半的相貌超准软件 提前了解对象的外貌
  13. python情感分析中文_Python有趣|中文文本情感分析
  14. 如何用html制作移动app,html移动开发app
  15. 10.24-10.25 交流会小日记
  16. assert()使用
  17. 标题:互联网轻松赚钱之道。。
  18. vue3加ts出现 --找不到模块“@/views/HomeView.vue”或其相应的类型声明。
  19. 视频号美食账号如何运营,美食账号全面解析:国仁楠哥
  20. 盛大林:深市不收的“过户费”沪市为何要收?

热门文章

  1. 设计模式之模板方法模式(行为型)
  2. latex公式转换编辑免费网站推荐
  3. 食物和计算机中一样的英语,表示食物或饮料的英语单词有哪些?
  4. 唐骏在大连理工演讲两次的经典内容
  5. 你所不知道的冰冷的经济真相 flp713
  6. 让Borland C++ Builder在WIN7下完美运行帮助
  7. 小度路由刷openwrt
  8. 注册博客,写的第一篇博客
  9. IBM小型机AIX操作系统总结13–网络配置
  10. AndroidStudio中Method “xxx” is never used 解决方案