我在mi pc上安装了SQL Server,然后创建数据库和表:
Create database DatabaseX;
CREATE TABLE MainTable
(
Product varchar(255),
ProductDescription varchar(255),
ProductPrce int
);
并添加sime信息,当我在SQL Managmend Studio工作时,我通过windows autentication登录。所以我创建了WPF来连接这个数据库:
try
{
SqlConnection myConnection = new SqlConnection("user id=" + DatabaseUsernameTextBox.Text + ";" +
"password=" + DatabasePasswordTextBox.Text + ";server=" + DatabaseServerTextBox.Text + ";" +
"Trusted_Connection=" + DatabaseTrustedConectionComboBox.SelectedItem + ";" +
"database=" + DatabaseNameTextBox.Text + "; " +
"connection timeout=" + DatabaseConectionTimeouTextBox.Text + "");
myConnection.Open();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
通过:localhost,DatabaseX工作,没有例外,但....无论我粘贴为用户ID和密码它总是conect,不要exackly geting如何?因此,当我尝试:时,连接已经开启
SqlDataReader myReader = null;
SqlCommand myCommand = new SqlCommand("select * from MainTable;", myConnection);
myReader = myCommand.ExecuteReader();
while (myReader.Read())
{
Console.WriteLine(myReader["ProductName"].ToString());
//Console.WriteLine(myReader["Column2"].ToString());
}
“无效的对象名称'MainTable'有例外。”知道为什么吗?
答案 0 :(得分:4)
我无法从上面的代码中看出,但听起来你在主数据库上创建了表。
您可能只需要在创建表之前添加USE语句:
Create database DatabaseX;
use database DatabaseX;
CREATE TABLE MainTable
(
Product varchar(255),
ProductDescription varchar(255),
ProductPrce int
);
另一种选择是在表create:
中指定数据库名称CREATE TABLE DatabaseX.dbo.MainTable
(
Product varchar(255),
ProductDescription varchar(255),
ProductPrce int
);
您是否尝试在Management Studio中找到该表?
答案 1 :(得分:2)
我的猜测是你已连接到服务器但可能不是正确的数据库。您是否尝试过设置初始目录?