Mysql
 sql >> база данни >  >> RDS >> Mysql

Свързване към Mysql DB с C# - Трябват някои с набори от данни

Ето един прост пример, който трябва да следвате, за да коригирате грешките във вашия подход:

SQL неща

drop table if exists users;
create table users
(
user_id int unsigned not null auto_increment primary key,
username varbinary(32) unique not null
)
engine=innodb;

insert into users (username) values ('f00'),('bar');

Метод на C# DataAdapter

Забележете, че не отварям изрично db връзката - DataAdpater прави това вместо мен.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

// addded these
using MySql.Data;
using MySql.Data.MySqlClient;
using System.Data;

namespace mysql
{
    class Program
    {
        static void Main(string[] args)
        {
            const string DB_CONN_STR = "Server=127.0.0.1;Uid=foo_dbo;Pwd=pass;Database=foo_db;";

            MySqlConnection cn = new MySqlConnection(DB_CONN_STR);

            try {

                string sqlCmd = "select * from users order by user_id";

                MySqlDataAdapter adr = new MySqlDataAdapter(sqlCmd, cn);
                adr.SelectCommand.CommandType = CommandType.Text;
                DataTable dt = new DataTable();
                adr.Fill(dt); //opens and closes the DB connection automatically !! (fetches from pool)

                foreach (DataRow dr in dt.Rows){
                    Console.WriteLine(string.Format("user_id = {0}", dr["user_id"].ToString()));
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("{oops - {0}", ex.Message);
            }
            finally
            {
                cn.Dispose(); // return connection to pool
            }
            Console.WriteLine("press any key...");
            Console.ReadKey();
        }
    }
}

Пример на C# DataReader

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

// addded these
using MySql.Data;
using MySql.Data.MySqlClient;
using System.Data;

namespace mysql
{
    class Program
    {
        static void Main(string[] args)
        {
            const string DB_CONN_STR = "Server=127.0.0.1;Uid=foo_dbo;Pwd=pass;Database=foo_db;";

            MySqlConnection cn = new MySqlConnection(DB_CONN_STR);

            try {

                string sqlCmd = "select * from users order by user_id";

                cn.Open(); // have to explicitly open connection (fetches from pool)

                MySqlCommand cmd = new MySqlCommand(sqlCmd, cn);
                cmd.CommandType = CommandType.Text;
                MySqlDataReader rdr = cmd.ExecuteReader();

                while (rdr.Read()){
                    Console.WriteLine(string.Format("user_id = {0}", rdr["user_id"].ToString()));   
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("{oops - {0}", ex.Message);
            }
            finally
            {
                cn.Dispose(); // return connection to the pool
            }
            Console.WriteLine("press any key...");
            Console.ReadKey();
        }
    }
}



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Когато mysql_query връща false

  2. Как да покажа съпоставянето на таблица в MySQL

  3. бърз избор на произволен ред от голяма таблица в mysql

  4. Как да изчислим маржа в MySQL

  5. изберете всички колони, които не са в друга таблица laravel 5.5