怎样把sql数据库和web服务器连接起来

怎样把sql数据库和web服务器连接起来,第1张

public Connection getNewConnection(){

Connection con=null;

try {

ClassforName("commysqljdbcDriver");

} catch (ClassNotFoundException e) {

// TODO Auto-generated catch block

eprintStackTrace();

}

try {

con=DriverManagergetConnection("jdbc:mysql://localhost(或者你连的主机IP):3306/数据库名称","用户名","密码");

} catch (SQLException e) {

// TODO Auto-generated catch block

eprintStackTrace();

}

return con;

}

这是一个连接mysql的例子

先打开vs2010软件,找到项目文件,双击webconfig

vs2010中webconfig配置数据库连接

第一种:取连接字符串

string

connstring

=

systemwebconfigurationwebconfigurationmanagerconnectionstrings["sqlconnstr"]connectionstring;

或者

protected

static

string

connectionstring

=

configurationmanagerconnectionstrings["sqlconnstr"]connectionstring;

webconfig文件:加在</configsections>后面

<connectionstrings>

<remove

name="localsqlserver"

/>

<add

name="sqlconnstr"

connectionstring="user

id=xx;password=xx;initial

catalog=database_name;data

source=\sqlxxxx"

/>

</connectionstrings>

vs2010中webconfig配置数据库连接

第二种:取连接字符串:

string

myvar=configurationsettingsappsettings["connstring"];

webconfig文件:加在<appsettings>和</appsettings>

之间

<appsettings>

<add

key="connstring"

value="uid=xx;pwd=xx;database=batabase_name;server=(local)"

/>

</appsettings>

据说两者通用,但是第二种是aspnet20的新特性,建议使用第二种。其实我一直有个疑问,两个字符串中的uid;pwd;和user

id;

password;是否等价。根据网上我查到的资料是可以互换通用的。

vs2010中webconfig配置数据库连接

连接sql

server数据库的机制与连接access的机制没有什么太大的区别,只是改变了connection对象和连接字符串中的不同参数

首先,连接sql

server使用的命名空间不是"systemdataoledb",而是"systemdatasqlclient"

其次就是他的连接字符串了,我们一个一个参数来介绍(注意:参数间用分号分隔):

"user

id=sa":连接数据库的验证用户名为sa他还有一个别名"uid",所以这句我们还可以写成"uid=sa"

"password=":连接数据库的验证密码为空他的别名为"pwd",所以我们可以写为"pwd="

这里注意,你的sql

server必须已经设置了需要用户名和密码来登录,否则不能用这样的方式来登录如果你的sql

server设置为windows登录,那么在这里就不需要使用"user

id"和"password"这样的方式来登录,而需要使用"trusted_connection=sspi"来进行登录

initial

catalog=northwind":使用的数据源为"northwind"这个数据库他的别名为"database",本句可以写成"database=northwind"

"server=yoursqlserver":使用名为"yoursqlserver"的服务器他的别名为"data

source","address","addr"如果使用的是本地数据库且定义了实例名,则可以写为"server=(local)\实例名";如果是远程服务器,则将"(local)"替换为远程服务器的名称或ip地址

"connect

timeout=30":连接超时时间为30秒

在这里,建立连接对象用的构造函数为:sqlconnection

7

最后要保存你所更改的文件,右键

保存(ctrl+s)

ACCESS数据库是个文件来的,不用配置的了,在解决方案中添加你创建的ACCESS数据文件中,系统会提示你是否创建App_Data目录并将ACCESS文件添加到此目录中,选择"是"就可以了,再在程序中创建连接到此文件的连接字符串即可(此文后面有在webconfig中配置的方法)例如

String con = "PROVIDER=MicrosoftJetOLEDB40;DATA Source=" + SystemWebHttpContextCurrentServerMapPath("App_Data/YouAccessDatamdb");

然后就像用其它数据库一样用了

完全示例:

C#连接Access程序代码:

usingSystemData;

usingSystemDataOleDb; stringstrConnection="Provider=MicrosoftJetOleDb40;";

strConnection+=@"DataSource=C:\ASPNET\YouAccessDatamdb";

OleDbConnectionobjConnection=newOleDbConnection(strConnection);

//或

//stringstrConnection = "PROVIDER=MicrosoftJetOLEDB40;DATA Source=" + SystemWebHttpContextCurrentServerMapPath("App_Data/YouAccessDatamdb");

objConnectionOpen();

objConnectionClose();

解释:

C#连接Access数据库需要导入额外的命名空间,所以有了最前面的两条using命令,这是必不可少的。

strConnection这个变量里存放的是连接数据库所需要的连接字符串,指定了要使用的数据提供者和要使用的数据源。

“Provider=MicrosoftJetOleDb40;”是指数据提供者,这里使用的是Microsoft Jet引擎,也就是Access中的数据引擎,aspnet就是靠这个和Access的数据库连接的。

“Data Source=C:\BegASPNET\Northwindmdb”是指明数据源的位置,他的标准形式是“Data Source=MyDrive:MyPath\MyFileMDB”。

PS:

1“+=”后面的“@”符号是防止将后面字符串中的“\”解析为转义字符。

2如果要连接的数据库文件和当前文件在同一个目录下,还可以使用如下的方法连接:

strConnection+="Data Source=";strConnection+=MapPath("Northwindmdb");

3要注意连接字符串中的参数之间要用分号来分隔。

“OleDbConnection objConnection=new OleDbConnection(strConnection);”这一句是利用定义好的连接字符串来建立了一个链接对象,以后对数据库的操作我们都要和这个对象打交道。

“objConnectionOpen();”这用来打开连接。至此,与Access数据库的连接完成。

再来一个示例:

using SystemDataOleDb;

using SystemData;

//连接指定的Access数据库

String ConnString =@"Provider=MicrosoftJetOLEDB40;Data Source=App_Data\YouAccessDatamdb";

//SQL语句

String SQLString ="select from TestDB";

//创建一个OleDbConnection对象

SystemDataOleDbOleDbConnection OleDBConn1 = new SystemDataOleDbOleDbConnection(ConnString);

//创建一个DataSet对象

DataSet DataSet1 = new DataSet();

//创建一个OleDbDataAdapter对象

SystemDataOleDbOleDbDataAdapter OleDbDataAdapter1 = new SystemDataOleDbOleDbDataAdapter(SQLString,OleDBConn1);

//打开连接

OleDBConn1Open();

//通过OleDbDataAdapter对象填充数据集

OleDbDataAdapter1。Fill(DataSet1,"TT");

另外是在webconfig中如何使用access数据库连接了,估计就是所要的了:

一: 一种是通过使用 DataDirectory 目录的方法,但是 access 文件必须放在 ASPNET 的特殊目录中,如 app_data ;

<addname="access"connectionString="Provider=MicrosoftJetOledb40;

Data Source=|DataDirectory|dbmdb"/>

二:另外一种方法则比较灵活,具体方法是:在 webconfig 文件中保存两个字符串,一个是驱动字符串,另一个是 access 文件的相对路径;

使用时用 ServerMapPath 来获取绝对路径然后组合出来的连接字符串就可以使用了;

在webconfig中的写法如下:

<appSettings>

<add key="ConnStr" value="provider=microsoftjetoledb40;data source="/>

<add key="dbPath" value="/AppData/dbmdb"/>

</appSettings>

程序中的数据访问类中我把"ConnStr"和"dbPath"取出来再连接成一个字符串

代码如下:

/// <summary>

/// (静态)返回数据库连接串。

/// </summary>

protected static string GetConnString()

{

return

SystemConfigurationConfigurationSettingsAppSettings["ConnStr"]+ SystemWebHttpContextCurrentServerMapPath(SystemConfigurationConfigurationSettingsAppSettings["dbPath"])+";";

}

三:直接写数据库的物理路径

<connectionStrings>

<add name="qxConnectionString" connectionString="Provider=MicrosoftJetOLEDB40;Data Source=D:\Inetpub\wwwroot\web\App_Data\dbmdb"

providerName="SystemDataOleDb" />

</connectionStrings>

注意:Data Source字符的写法一定要正确,否则可能会出现“找不到可安装的ISAM”的错误。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 怎样把sql数据库和web服务器连接起来

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情