Asp.net 无效的对象名称';dbo.stream';

Asp.net 无效的对象名称';dbo.stream';,asp.net,.net,sql-server,Asp.net,.net,Sql Server,我制作了一个网站,它在本地机器上运行得非常好,但当我将其上传到web服务器时,它给出了一个错误 无效的对象名称“dbo.stream” 代码 private void BindStreamDropDown() { string query = " Select * from stream"; DataTable dt = c.getData(query); DDLStream.DataSource = dt; DDLStream.DataValueFiel

我制作了一个网站,它在
本地
机器上运行得非常好,但当我将其上传到
web服务器
时,它给出了一个错误

无效的对象名称“dbo.stream”

代码

private void BindStreamDropDown() { 
    string query = " Select * from stream"; 
    DataTable dt = c.getData(query); 
    DDLStream.DataSource = dt; 
    DDLStream.DataValueField = "StreamId"; 
    DDLStream.DataTextField = "stream"; 
    DDLStream.DataBind(); 
    DDLStream.Items.Insert(0, new ListItem("--Select--", "")); 
}

您的连接是错误的,您必须在连接中有db名称,否则它将首先从主db尝试,在主db中找不到任何表

请将您的C.字符串更新为

Data Source=(IP address of my DB);Integrated Security=False;User ID=USERNAME;Password=MYPASSWORD;Initial Catalog=YOURDATABASENAMEHERE;Connect Timeout=15;Encrypt=False;Packet Size=4096

正如我在上面的评论中提到的,您的连接字符串中缺少要连接的数据库。如果您不提供此选项,并且不使用数据库更新SqlConnection,则将使用用户的默认数据库,如果您从未设置此数据库,则它将默认为
master
。缺少的部分是:

Initial Catalog=YOUR_DATABASE_NAME_HERE
工具、网站和代码有很多方法可以帮助您构建正确的连接字符串。示例:

  • -Ivan Starostin在评论中发表
将此部分添加到您在注释中提供的连接字符串后,其外观类似于:

Data Source=(IP address of my DB);Integrated Security=False;User ID=USERNAME;Password=MYPASSWORD;Initial Catalog=YOURDATABASENAMEHERE;Connect Timeout=15;Encrypt=False;Packet Size=4096

注意:连接字符串部分的顺序无关紧要

请显示您拥有的内容-代码、代码片段等。OTTOMH,听起来你有一些URL问题。您的代码中是否有
localhost
?这是一个sql server错误,表示该数据库中没有与dbo架构关联的名称流的视图或表。因此,您指向了错误的数据库,或者该表/视图存在于不同的架构(不是dbo)下,或者该表或视图不存在,因为可能是您拼错了它(streams而不是stream),或者它从未创建过。@NawazKhan-前缀是架构名称,您应该仔细阅读它的含义。您必须尽可能地查看“该数据库中没有与dbo模式关联的名为Stream的视图或表”。因此,您指向了错误的数据库,或者该表/视图存在于不同的架构(不是dbo)下,或者该表或视图不存在,因为您可能拼写错误(streams而不是stream),或者该表或视图从未创建过。关于您的连接字符串,您应该在该连接字符串中包含数据库名称,否则它将转到与该用户的默认数据库关联的名称,如
master
<代码>数据源=(我的数据库的IP地址);综合安全=假;用户ID=用户名;密码=我的密码;初始目录=此处的数据库名;连接超时=15;加密=假;Packet Size=4096@NawazKhan我试图登录您的站点,但由于未找到网络路径,因此出现错误。我使用
数据源=(我数据库的IP地址);综合安全=假;用户ID=用户名;密码=我的密码;初始目录=此处的数据库名;连接超时=15;加密=假;数据包大小=4096
connection.open()执行,这意味着它成功地建立了与数据库的连接,但当我更改
数据源=STech时;综合安全=假;用户ID=用户名;密码=我的密码;初始目录=此处的数据库名;连接超时=15;加密=假;数据包大小=4096
连接.open()也无法执行,这意味着无法更改数据源helpful@NazirUllahi在myLittleAdmin中有我的DB,这是我从初始目录=您的数据库\名称\购买主机和域名时得到的。这解决了问题,非常感谢@Igor