连接到访问数据库

时间:2016-06-25 18:24:17

标签: asp.net database

为了简单起见,我说在Visual Studio(C#)中创建了一个非常简单的网站,可访问在SQL Server Management Studio中创建的1个数据库。有一个从SqlDataSource控件填充的DropDown菜单。该数据源的连接字符串只是我的本地PC作为服务器名称(所以pcname \ SQLEXPRESS):

Data Source=pcname\sqlexpress;Initial Catalog=Hardware;Integrated Security=True

当我测试网站时,它工作正常(F5),但是当我通过GoDaddy使用Web Deploy发布它并访问该网站时,它会在访问数据库的页面上出错。我假设这是因为该站点仅设置为在本地访问数据库。我有点想过,如果我刚将.mdf文件上传到我网站的文件管理器,它会起作用,但显然我错了。我错过了什么大事?感谢。

2 个答案:

答案 0 :(得分:0)

您正在使用连接到本地SqlExpress的连接字符串。 为什么不写一个连接字符串来使用Godaddy的MSSQL?检查一下它是否可以帮到你。 https://www.experts-exchange.com/questions/24571059/How-attach-SQL-Express-db-to-SQL-Server-GoDaddy-Hosting.html

如果您确实想远程访问SqlExpress,请查看此https://blogs.msdn.microsoft.com/sqlexpress/2005/05/05/how-to-configure-express-to-accept-remote-connections/

答案 1 :(得分:0)

嘿,我只是想回来说明我最终是如何完成这项工作以防万一其他人来看。再次重申,我使用Visual Studio 2015使用c#创建网站。我有一个MS SQL数据库通过SQL Server Management Studio连接到我的本地SQL Express服务器。我通过GoDaddy购买了一个域名和托管服务;这是在网站发布后让您的本地数据库工作的方式(I used this post as a guide)。

1)进入Management Studio,右键单击数据库,然后单击“任务”>“生成脚本”。

2)点击屏幕并将脚本保存到新查询窗口。

3)进入GoDaddy帐户,单击“虚拟主机”选项旁边的“管理”,单击“添加数据库”,然后填写相关信息。作为进一步步骤的示例,我们称之为数据库DB123,用户名为Aeternus,密码为Password123,服务器IP为111.222.333.444

4)创建完成后,记下您的数据库服务器IP地址,然后单击新创建的数据库行末的Webadmin。

5)现在您已进入MyLittleAdmin应用程序,单击左侧的“工具”,然后单击“新建查询”。现在,粘贴您在Management Studio中创建的查询窗口的所有内容,然后单击“提交”。它将创建所有表格(您可以转到数据库>用户数据库>数据库名称>表格进行确认。

6)返回Management Studio,右键单击数据库,然后单击“任务”>“导出数据”。 "选择数据源"屏幕应该是您通常使用的所有默认值。在下一个"选择目的地"屏幕,服务器名称是您以前记住的服务器IP地址,将单选按钮更改为"使用SQL Server身份验证"并填写您创建的用户名和密码。然后在"数据库:"中,选择您的数据库。从那里,完成向导,它将发送您的数据。如果您回到MyLittleAdmin,请单击其中一个表,然后单击"打开表" (数据库图标正下方的小图标)您可以确认您的表已填充。

7)最后,您需要更新Visual Studio连接字符串。打开你的web.config文件,你会看到像

这样的东西
<connectionStrings>
<add name="MyConnectionString" connectionString="Data Source=MyPCName\sqlexpress;Initial Catalog=Hardware;Integrated Security=True"
    providerName="System.Data.SqlClient" />

使用上述信息,您的连接字符串现在是

<connectionStrings>
<add name="MyConnectionString" connectionString="Server=111.222.333.444; Database=DB123; User ID=Aeternus; Password=Password123; Trusted_Connection=False"
    providerName="System.Data.SqlClient" />

那应该是它,好吧,它至少对我有用!