How to connect with a database on Access inside a intranet - c#

I have made connection with sql server but i have never done a connection with access and
now this isn't in the computer local, if not it is going to be in a server
users are going to full the form with their information, but the database will be in another computer, how is the connection class to be? and I have never worked in access
how do i for Add, Edit, delete, and queries?
in sql server it was so easy
it was my class connection in sql and i call it since form or another class called DAO
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Data;
using System.Windows.Forms;
namespace Proyecto1._0.Conexiones
{
class Conexion
{
public SqlConnection conectar()
{
return new SqlConnection(#"data source=.; integrated security=true; initial catalog=dbmeridajoven;");
}
public bool ejecutarConsulta(string consulta)
{
try
{
SqlCommand comando = new SqlCommand(consulta, this.conectar());
comando.Connection.Open();
comando.ExecuteNonQuery();
comando.Connection.Close();
return true;
}
catch
{
MessageBox.Show("Consulta mal formada");
return false;
}
}
public DataTable regresarTabla(string consulta)
{
try
{
SqlDataAdapter adapter = new SqlDataAdapter(consulta, this.conectar());
DataTable tabla = new DataTable("consulta");
adapter.Fill(tabla);
return tabla;
}
catch
{
MessageBox.Show("Consulta mal formada ");
return new DataTable();
}
}
}
}
I repeat now is with access and it is for intranet (in another computer is the server)

ConnectionStrings.com is a great resource for figuring out how to create a connection string for a variety of database engines. Here's one example of an Access connection string:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mydatabase.mdb;User Id=admin;Password=;
Once you generate a connection string, you'll notice that the file path is included in the string; to share the database among mulitple clients, you'll need to put the database file on a network share or drive. For example, your file path could be something like "\\dbserver\databases\mydb.mdb."

Related

Using Odbc driver query given result in database but not filling datatable in c#, there is no error

Just started using windows 11 and installed Oracle drivers for 32Bit and 64Bit, wrote program using C# to fetch data from Oracle database.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Data.Odbc;
using System.Data;
using System.Data.SqlClient;
namespace ApexAutoEmailConsol
{
static class ServiceLog
{
static String connectionString = "Dsn=Prod21_32;uid=ebseb;pwd=ebseb";
static string strQuery = string.Empty;
public static string OutstandingInvoices()
{
try
{
OdbcConnection oCon = new OdbcConnection();
oCon.ConnectionString = connectionString;
oCon.Open();
DataTable dtSales = new DataTable();
strQuery = "SELECT * from apps.org_organization_definitions HO";
// if I run above query in Toad it's giving result.
OdbcDataAdapter myAdp = new OdbcDataAdapter(strQuery, oCon);
myAdp.Fill(dtSales);
//Adapter not filling data to the datatable.
if (dtSales.Rows.Count <= 0)
{
return "";
}
return strReturn;
}
catch (Exception Ex)
{
WriteErrorLog(Ex.ToString());
return "";
}
}
}
When I copy strQuery and run on Toad, getting result but datatable is still empty.
What is the problem? The same code is working perfect on my Windows10 machine.
UnCOMMITted data is only visible within the session that created it (and will ROLLBACK at the end of the session if it has not been COMMITted). If you can't see the data from another session (C#) then make sure you have issued a COMMIT command in the SQL client (Toad).
If you have issued a COMMIT and still can't see the data then make sure that both the SQL Client (Toad) and the C# program are connecting to the same database and are querying the same user's schema of that database.
It's very unique problem, I had it around 2 years ago with my another machine, where I was not able to get some query result in Toad. Some queries are working but some of with specific table in joing was giving empty result. That time I added following language setting in my environment variable and was worked.
NLS_LANG = American_America.UTF8
Used same in my new machine and now am getting result with Visual Studio 2022.

How to connect windows CE c# application to database SQL Server2008r2

Please help.
I have device MC3200 Zebra(motorola)(Windows Embedded version 7, build 2864). This device is connecting to network and see SQL server(ping is OK). I used it Visual Studio 2008, c#, SmartDevicePrj, .NET CF 3.5
But after start application on device will be displayed message:
Unknown connection option in connection string: initial catalog.
Some idea how to repair it?
Many thanks for your help.
using System;
using System.Linq;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlServerCe;
namespace SmartDeviceProject1
{
public partial class Form1 : Form
{
public SqlCeConnection msConn;
public string strCon = "";
public SqlCeCommand command;
public Form1()
{
InitializeComponent();
strCon = "Data Source=server007; Initial Catalog=FMPredlis; User ID=mistr; Password=heslo;";
try
{
msConn = new SqlCeConnection(strCon);
msConn.Open();
MessageBox.Show("Připojeno");
}
catch (SqlCeException ex)
{
MessageBox.Show("Chyba" + ex.Message);
msConn.Close();
}
}
}
}
I think you are mixing 2 things.
Either use The SqlConnection object, then you can connect to a SQL Server using a connection string found on this page:
https://www.connectionstrings.com/sql-server/
Or use like in your code the SqlCEConnection, then you connect to a SQL Lite (local file), and your connection string should be like on this page:
https://www.connectionstrings.com/sqlite/
But in your sample you are using SqlCEConnection to connect to a sql server, that wont work.
Grtz

Unable to connect hosting provider MYSQL database in asp.net

I have MYSQL database from Hosting provider net4.in and i am unable to access database.
My code is as below :
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Data.Odbc;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
public partial class dummy : System.Web.UI.Page
{
OdbcConnection conn;
string Address = "Driver={MySql ODBC 5.1 Driver};Server=phpmyadmin7.net4india.com;Option=3;Port=3306;Stmt=;" +
"DataBase=test;Uid=demo;Pwd=demo123;";
protected void Page_Load(object sender, EventArgs e)
{
string sql = "Select * from test.testing limit 5";
DataSet rsDSet = new DataSet();
try
{
if (sql == "") throw new Exception("SQL input required");
conn = new OdbcConnection(Address);
if (conn.State == ConnectionState.Closed) conn.Open();
OdbcDataAdapter adp = new OdbcDataAdapter(sql, conn);
adp.Fill(rsDSet);
}
catch (Exception ee)
{
Response.Write(ee.ToString());
}
GridView1.DataSource = rsDSet;
GridView1.DataBind();
}
}
Pl let me know how can i connect MYSQL DB.
Thank you in advance
Are you sure your MySQL instance is hosted on a machine named phpmyadmin7? It seems unlikely. Phpmyadmin is the name of a chunk of client software, as I am sure you know.
Are you sure your hosting provider allows access from outside their data center to MySQL server instances? (Presuming you are running the sample code you provided from your own machine, which might not be the case.) Most hosting providers protect their MySQL instances from internet-wide access because it is easy to mount DDOS attacks against them otherwise.
In some hosting provider environments the MySQL authentication scheme only allows access to your MySQL instance from the particular machine upon which your web apps run.
In any case you need to have a conversation with your support crew about how to do this.

How to connect to MySql database on internet web server not on localhost using c#?

i have a web server on internet i am using php/mysql. for my website, now i want to connect to my mysql database on my webserver using my c# windows form application so that i will be able to view,create, update, delete the data on mysql database on webserver, i want to user same database for website and my desktop application. i want any one having my desktop application would be able to update my database on my webserver(i mean not only form some specific ip).
Here is my code when i try to run it shows error "Unable to connect to any of specified MySQL hosts."
can any one Guide me how to do it. Thanks.
The following code is working fine for localhost but not working for web-server which is on internet.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using MySql.Data.MySqlClient; // for mysql
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
string con_str = "SERVER=fdb4.biz.nf;Port=3306;DATABASE=1558711_zee;UID=1558711_zee;PASSWORD=multan321;compress=true;";
MySqlConnection connection = new MySqlConnection(con_str);
try {
connection.Open();
MySqlCommand cmd = connection.CreateCommand();
cmd.CommandText = "SELECT * FROM zeetable";
MySqlDataAdapter mda = new MySqlDataAdapter(cmd);
DataSet mds = new DataSet();
mda.Fill(mds);
dataGridView1.DataSource = mds.Tables[0].DefaultView;
}
catch(MySqlException ex){
MessageBox.Show(ex.Message);
}
}
}
}

How do I create a MySql database connection that returns results to a text file?

I want to write a MySql statement that will connect to the database, select a column from the table, then output that data to a text file to a specific location on my computer. I have searched the internet for a couple days now and don't seem to find the answer I am looking for. I am fairly new to c#, MySql, and Visual Studio. I am just trying to learn how to write the correct statements and get the desired result. Any help would be greatly appreciated.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MySql.Data.MySqlClient;
using MySql.Data;
using System.Windows.Forms;
using System.IO;
namespace NewPractice
{
public class Connect
{
static void Main()
{
string results = #"server=111.111.11.111; userid=anyone;
password=anypassword; database=anydatabase";
MySqlConnection conn = null;
try
{
conn = new MySqlConnection(results);
conn.Open();
//Console.WriteLine(
File.WriteAllLines(
#"C:\Documents and Settings\anyone\My Documents\Tests\testoutput.txt",
results.ToArray());
}
catch (MySqlException ex)
{
Console.WriteLine("Error: (0)", ex.ToString());
}
finally
{
if (conn != null)
{
conn.Close();
}
}
}
}
}
You're writing the contents of the result string to the file, not the data you're attempting to select. You need to run a sql command and get a SqlDataReader object to write your data to the file.
string results = #"server=111.111.11.111; userid=anyone;
password=anypassword; database=anydatabase";
MySqlConnection connection = new MySqlConnection(results);
MySqlCommand command = connection.CreateCommand();
MySqlDataReader reader;
command.CommandText = "select * from mycustomers";
connection.Open();
reader = command.ExecuteReader();
using(var sw = new StreamWriter("C:\MyPath\MyFile.txt"))
{
while (reader.Read())
{
var row = (IDataRecord)reader;
sw.WriteLine(row["myColumn"]);
}
}
connection.Close();
If the database is on your local machine you can use 'select .. into outfile'. http://dev.mysql.com/doc/refman/5.1/en/select-into.html. This will write to a folder on the server so it's not v useful if it's a different machine and you can't copy from there.
There are plenty of tutorials out there for accessing MySQL from .NET.
This is one: http://zetcode.com/db/mysqlcsharptutorial/
In any language, there are a few simple steps to read from a database:
1. connect to the database.
2. execute a query
3. iterate through the results of the query
4. close the connection.
What you are doing in your code is connecting to the database and then trying to write the connection information to a file.

Categories