windows Application Database Connection c# - c#

Im facing problem with database connection on windows Application Database Connection c#... here is my connection ,,, PC2 is PCNAme
private static SqlConnection con = new SqlConnection(
"Data Source=PC2\\SQLEXPRESS; Initial Catalog=Database1;Integrated Security=True"
);
when I run the form I get this unhandled exception on con.Open();
sqlException was unhandeled:
A network-related or instance-specific error occurred while
establishing a connection to SQL Server. The server was not found or
was not accessible. Verify that the instance name is correct and that
SQL Server is configured to allow remote connections. (provider: SQL
Network Interfaces, error: 26 - Error Locating Server/Instance
Specified)
hope some one can help Im trying to solve it for many hours but not working.

Check this trouble shoot steps on MSDN:
The SQL Server client cannot connect to the server MSDN
And much better if you separate your connection string to your ado.net sql connection.
private const string _thisConnectionString = "Data Source=PC2\\SQLEXPRESS; Initial Catalog=Database1;Integrated Security=SSPI";
Use the "Using" Statement ensure that you always close your Connection.
Best Practices for Using ADO.NET MSDN
using (var conn = new SqlConnection(_thisConnectionString))
{
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = "Your SQL Query STuff";
conn.Open();
}
Regards

Try This:
private static SqlConnection con = new SqlConnection(
"Data Source=PC2\SQLEXPRESS; Initial Catalog=Database1;Integrated Security=True"
);

Go to SQL Server Configuration Management -> Click on SQL Server Services
Verify SQL Server and SQL Server browser both are running. you can see a Greed play button there. if it's not running right click on the service which shows Red, go to properties, Click Built in Account and Press Apply then OK, There try to start by right click.

Related

Connection string to SQL Server Express only works from the same server but not from other clients

I have this connection string and working well when I test my aplication from the same SQL Express, I have an instance called DOKUSTAR.
using (SqlConnection conn = new SqlConnection(#"server=.\DOKUSTAR;Database=RdaDB10;Trusted_Connection=Yes"))
using (SqlCommand comm = new SqlCommand(#"select top(1) pais, clase, operation from Document_Class where codigoafip = #codafip", conn))
The problem is when I tried to connect from outside of the server does not works the connection and show me the following messages:
A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections.(provider: SQL Network interfaces, error:26 - Error Locating Server/Instance Specified).
Any suggestions will be greatly appreciated.
.\DOKUSTAR refers to an instance of DOKUSTAR on the current machine.
You need to change it to MACHINE_NAME\DOKUSTAR

Sql connection string via SqlClient

I have an issue trying to manually connect to a sql server on my network.
I have a web API with a conn string that works fine, I have a VS2015 winforms project i set up to test the conn using the VS tool to connect, this also works fine.
However when i try to connect via SQLconnection it fails and says the server cannot be found or isnt accessable.
So heres the test code...
string connectionString = #"Data Source=test1\test1;Initial Catalog=my_test;Integrated Security=True;";
using (SqlConnection connection =
new SqlConnection(connectionString))
{
// Create the Command and Parameter objects.
SqlCommand command = new SqlCommand("", connection);
// Open the connection in a try/catch block.
// Create and execute the DataReader, writing the result
// set to the console window.
try
{
connection.Open();
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
Console.WriteLine("\t{0}\t{1}\t{2}",
reader[0], reader[1], reader[2]);
}
reader.Close();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
Console.ReadLine();
}
Now i dont really care about results or anything i simply need to establish a connection. I cant figure out why it throws this error, when my Web API works and the VS tool for connection to DBs works fine too.
I have checked the server and enabled named pipes too just to make sure.
Any ideas?
EDIT:The error i catch...
{"A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)"}
happens after about 15 seconds trying to open the connection.
The thing is this connectiin string i tried is the exact same string used via the SQL tool, I did this so i knew i had a valid string.
ODBC connection also falls over with the same message.
I checked from my machinbe is i can listen to port 1433 but it says the server isnt listening.
However looking at the server its set to dynamic ports with a range of any to 41934, so im at a loss as to why it says its not listening evenb though its to dynamic ports
EDIT2: Well, must be permissions or drivers... just tried the exact same code and worked instantly...
This is diving into the realm of the unknown i feel. might ask for deletion of the question if no solution is found
I think that i see the problem:
string connectionString = #"Data Source=test1\test1;Initial Catalog=my_test;Integrated Security=True;";
Integrated Security is used for local logins, You could make an account in the database and change the connection string to:
string connectionString = #"Data Source=test1\test1;Initial Catalog=my_test;User id=<Username>;Password=<Password>;";
I hope this helps!

Can't create connection to an sqlite DB

I've made a code that create the database automatically in the folder where the software is executed. The DB was created succesfull, but when I create the object for the connection this exception is displayed:
System.Data.SqlClient.SqlException (0x80131904): There was a network error or specific instance while trying to establish a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server) ---> System.ComponentModel.Win32Exception (0x80004005): Can not find the file specified
on this line:
con.Open();
but the problem I think is on this declaration of the connection:
static SqlConnection con = new SqlConnection(
"Server=localhost;Database=AppDB.sqlite;");
What am I doing wrong?
UPDATE Details:
SqlCommand command = new SqlCommand(#"INSERT INTO Team (name,code, shortName, squadMarketValue,
crestUrl, link_self, link_fixtures, link_players, caption) VALUES (#name,
#code,#shortName,#squadMarketValue,#crestUrl,#link_self,#link_fixtures,
#link_players,#caption)", con);
How you can see I'm using parametizer query, and if I use this object:
static SQLiteConnection m_dbConnection = new SQLiteConnection("Data Source=SoccerForecast.sqlite;Version=3;");
the con variable is underlined in red, an the compilers tell me:
it is not possible to convert SqliteConnection in SqlConnection
Your connection is wrong. You didn't specified the kind of database you're trying to connect to in your question. There's a mention of SQLite while your are using an sql connection object. The sql connection object is for connection to the ms sql server database. If you really want to connect to an ms sql server database, you'll need to change the connection string to provide a username / password or a Trusted_Connection=True to use your windows account.
However, if the database you are trying to connect to is an SQLite DB, you will have to use a different connection object. This and this SO question has answers about available libraries and examples that will explain how to create a connection to a SQLite database.
The site connectionstring.com is also a good resource when you need to generate a connection string.

Can not connect to local database with c# System.Data.SqlClient

I have some problems with connecting to my local DB using c# System.Data.SqlClient.
Information:
DB parameters: Name:baza Host:localhost Instance:baza Port:3306 Schema:world
My connection string: #"server=localhost\baza;password=pass;User Id=root;database=world;Persist Security Info=True"
using: c#, System.Data.SqlClient, MySQL Workbench
firewall off
succesfull conection with JDBC, so server is working
JDBC parameters:
String url = "jdbc:mysql://localhost:3306/";
String driver = "com.mysql.jdbc.Driver";
String dbName = "world";
String username = "root";
String pass = "pass";
Problem:
when I use conn.Open(); this happen => (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)
Tried:
server=localhost then it gives => error: 40 - Could not open a connection to SQL Server
many other stupid combinations like server=baza
http://blogs.msdn.com/b/sql_protocols/archive/2007/05/13/sql-network-interfaces-error-26-error-locating-server-instance-specified.aspx
ASP.NET beginner question: How to get rid of this error?
Connection to freesql.org server also failed
I have no idea what to do... Sth is probably with server name.
EDIT:
code:
string connstr = #"Data Source=localhost\baza;password=qspass;User Id=root;"+
"Initial Catalog=world;Persist Security Info=True";
Console.WriteLine(connstr);
SqlConnection conn = new SqlConnection(conbuild.ConnectionString);
conn.Open();
Console.WriteLine("YO!");
Some more code...
Never reached YO! :P
I suppose I should put my answer in the answer section, rather than a comment :)
I see from your JDBC connection string that you are using MySQL rather than SQL Server.
The System.Data.SqlClient namespace is the.NET Framework Data Provider for SQL Server, not MySQL.
If you are using MySQL, you will need to use the MySQL ADO.NET driver available here:
Download Connector/Net

Error trying to establish connection to SQL Server Express

I created a web site in Visual Studio 2012 that interacts with a SQL Server Express database table where the database was created beforehand with SQL Server 2008. I added the connection with the database to the site, and all of this worked fine.
Now I am doing exactly the same with a new website but now get the error message.
System.Data.SqlClient.SqlException (0x80131904): Login failed for user ''
The error happens as I am trying to make the connection and with my previous project everything was fine and still is, exactly the same connection string was used in both cases. From where does this exception come from all of a sudden?
try
{
connectionString = "Data Source=.\\SQLEXPRESS;Initial Catalog=Employee,Integrated Security=True;";
using (conn = new SqlConnection(connectionString))
{
conn.Open();
.....
}
}
How can I resolve this?
you have invalid connection string, you have used , instead of ;
connectionString = "Data Source=.\\SQLEXPRESS;Initial Catalog=Employee;Integrated Security=True;";
// ^ here
List of Connection Strings for SQL Server 2008

Categories

Resources