- 2013-03-03 - Licence Fondamentale d'Informatique
vendredi 8 mars 2013

Connecting to a MySQL Database in C#

Introduction
This tutorial will guide you on how to connectand query a MySql Database using SELECT, INSERT, UPDATE, and DELETE in C#.

Things Needed:
  • You should have installed MySQL and MySQL Connector/NET. You can download installers fromhttp://dev.mysql.com/downloads
  • Microsoft Visual C# or Visual Studio.
To use the methods in the MySQL Connector/NET you should add a reference to it. Right click your project in the Solution Explorer and click Add Reference… In the .NET tab, choseMySql.Data and click ok.
Posted Image
Posted Image

MySql Connector/NET enables developers to develop database applications using MySql in .NET.

In your code, you should add the line using MySql.Data.MySqlClient; in order to be able to use methods for accessing MySql.

To Connect to a MySql Database:
String str = @"server=localhost;database=yourDBname;userid=root;password=yourDBpassword;";
MySqlConnection con = null;
try
{
con = new MySqlConnection(str);
con.Open(); //open the connection
}
catch (MySqlException err) //We will capture and display any MySql errors that will occur
{
Console.WriteLine("Error: " + err.ToString());
}
finally
{
if (con != null)
{
  con.Close(); //safely close the connection
}
} //remember to safely close the connection after accessing the database


To code some MySQL commands using Prepared Statements:
String str = @"server=localhost;database=yourDBname;userid=root;password=yourDBpassword;";
MySqlConnection con = null;
try
{
con = new MySqlConnection(str);
con.Open(); //open the connection
//This is the mysql command that we will query into the db.
//It uses Prepared statements and the Placeholder is @name.
//Using prepared statements is faster and secure.
String cmdText = "INSERT INTO myTable(name) VALUES(@name)";
MySqlCommand cmd = new MySqlCommand(cmdText,con);
cmd.Prepare();
//we will bound a value to the placeholder
cmd.Parameters.AddWithValue("@name", "your value here");
cmd.ExecuteNonQuery(); //execute the mysql command
}
catch (MySqlException err)
{
Console.WriteLine("Error: " + err.ToString());
}
finally
{
if (con != null)
{
  con.Close(); //close the connection
}
} //remember to close the connection after accessing the database

*Note: You can also try this kind of cmdText, “INSERT INTO myTable VALUES(@name,@age,@contact)”;
Then add the cmd.Parameters.AddWithValue for each placeholder @name,@age,@contact.
If you wan't a column in your table to be bypassed you may use NULL. e.g. “INSERT INTO myTable VALUES(NULL,@name,@age,@contact)”;

To Retrieve Data using MySqlDataReader:
String str = @"server=localhost;database=yourDBname;userid=root;password=yourDBpassword;";
MySqlConnection con = null;
//MySqlDataReader Object
MySqlDataReader reader = null;
try
{
con = new MySqlConnection(str);
con.Open(); //open the connection
//We will need to SELECT all or some columns in the table
//via this command
String cmdText = "SELECT * FROM myTable";
MySqlCommand cmd = new MySqlCommand(cmdText,con);
reader = cmd.ExecuteReader(); //execure the reader
/*The Read() method points to the next record It return false if there are no more records else returns true.*/
while (reader.Read())
{
/*reader.GetString(0) will get the value of the first column of the table myTable because we selected all columns using SELECT * (all); the first loop of the while loop is the first row; the next loop will be the second row and so on...*/
  Console.WriteLine(reader.GetString(0));
}
}
catch (MySqlException err)
{
Console.WriteLine("Error: " + err.ToString());
}
finally
{
if (reader != null)
{
  reader.Close();
}
if (con != null)
{
  con.Close(); //close the connection
}
} //remember to close the connection after accessing the database


To Execute Some MySql Statements:
SELECT:
//This is the simple code of executing MySql Commands in C#
String cmdText = "SELECT id,name,contact FROM myTable"; //This line is the MySql Command
MySqlCommand cmd = new MySqlCommand(cmdText, con);
cmd.ExecuteNonQuery(); //Execute the command

UPDATE:
//example on how to use UPDATE
cmd = new MySqlCommand("UPDATE ab_data SET banned_from='" + from + "' , banned_until='" + until + "' WHERE name='" + name + "'", con);
cmd.ExecuteNonQuery();

DELETE:
//example on how to use DELETE
cmd = new MySqlCommand("DELETE FROM tbName WHERE colName = someValue",con);
cmd.ExecuteNonQuery();

*Note: before executing some Sql statements or accessing/manipulating the database, make sure that the connection to the MySql Database server is opened via con.Open(); Remember also to safely close it using con.Close();

Accessing the MySql database is made easier in .NET using MySQL Connector/NET. It should be installed in your system and should be an added reference in your project. Also, Do not forget to import or use it in your code using the statement in C#:
using MySql.Data.MySqlClient;

Attached is a sample project that you may try and learn from it.
Attached File  CSharpMySql.rar   23.21K   198 downloads

Questions and Comments are welcome!
Thanks! 
mercredi 6 mars 2013

Réseaux locaux : le modèle OSI et le transport des données TCP/IP


Réseaux locaux : compléments techniques : le modèle OSI et le transport des données

I/ Le modèle OSI

Pour établir une communication entre deux ordinateurs, il faut tenir compte des différences au niveaumatériel et logiciel de chaque machine. Ces difficultés pour établir une communication se multiplient lorsqu’il s’agit d’interconnecter des réseaux mettant en jeu des matériels et des systèmes informatiques très différents. Ainsi l’apparition de techniques de communication évoluées, de plus en plus performantes, et la mondialisation des transferts d’informations ont amené les constructeurs et les organismes internationaux à définir des architectures de réseaux plus ou moins « standards » : tout particulièrement le modèle OSI, mais également des modèles plus anciens tels que DSA (Bull) et SNA (IBM)…

Le modèle OSI (Open System Interconnection) a été mis au point par l’organisme de normalisation ISO (International Standard Organisation) en 1978, afin de fournir un modèle d’architecture permettant à des réseaux hétérogènes de communiquer. Il s'agit d'une norme officielle, ouverte à des développements ultérieurs.

Le modèle OSI est un modèle composé de 7 couches décrivant l'architecture des réseaux et les protocoles OSI correspondants. Chaque couche doit réaliser une fonction bien précise ; elles sont numérotées de la plus matérielle à la plus logicielle ; les fonctions propres à chaque niveau sont assurées par des "entités" (matériel et/ou logiciel).

Une architecture réseau qui respecte le modèle OSI offre une grande fiabilité et une transparence dans le fonctionnement du réseau

On distingue deux grands groupes de couches :

Les couches 1 à 3 ou couches basses orientées transmission

La couche 4 représentant la couche charnière entre les couches basses et les couches hautes qui gère le transfert de l'information

Les couches 5 à 7 ou couches hautes orientées traitement 

Le modèle ISO des 7 couches (voir illustration ci-dessus) définit, pour chaque couche, le protocole au moyen duquel les systèmes communiquent entre eux.

Les services des couches supérieures peuvent intervenir sur ceux des couches immédiatement inférieures. Les différentes couches (ou niveaux) sont : 


 REMARQUE : A chaque couche correspond une unité de données :

- couche physique : le bit
- couche liaison : la trame
- couche réseau : le paquet ou datagramme
- couche transport : message
- couche session : tâche

II/ Le modèle OSI et le protocole TCP/IP

Les réseaux locaux utilisent un protocole de communication qui garantit leur bon fonctionnement. Ces protocoles respectent plus ou moins les recommandations du modèle OSI :

-    Netbeui : protocole peu performant utilisé pour des réseaux Microsoft de très petite taille et ne nécessitant pas de connexions internet
-    IPX/SPX : protocole utilisé dans les réseaux Novell NetWare
-    TCP/IP : protocole le plus utilisé dans les réseaux Microsoft ou Unix, c’est le protocole utilisé en standard par le réseau Internet (voir fiche RES3)

Comparaison entre le modèle OSI et le protocole TCP/IP (Transport Control Protocol/Internet Protocol)


TCP/IP est plus ancien que la norme OSI, c’est pourquoi certaines couches d’OSI y sont regroupées (couches 1 et 2 et couches 5 à 7).

III/  Les réseaux, comment ça marche ?

Pour que deux ou plusieurs machines puissent communiquer via un réseau, il y a deux éléments :

- Au niveau physique et liaison de données (couches 1 et 2) : l’information émise est découpée en trames (groupes de bits permettant de transporter les données)


(1)    et (2) : il s’agit de l’adresse physique de la carte réseau de chacun des 2 ordinateurs.
Cette adresse, appelée adresse MAC (Medium Access Control) est unique au monde et est constituée de 6 nombres (codification hexadécimale : 16 chiffres de 0 à 9 puis A, B, C, D, E, F). Exemple : 00 :00 :0C :1B :22 :3A.. L’adresse FF.FF.FF.FF.FF.FF est une adresse de diffusion (broadcast) (voir plus loin)

- au niveau réseau et transport (couches 3 et 4), il faut recourir à un protocole de transport : TCP/IP (ou IPX/SPX pour les réseaux Novell…). Le protocole IP repose sur une autre identification desordinateurs : l’adresse IP (constituée de 4 octets : voir fiche RES3).  Le format d’un paquet IP (datagramme) est le suivant :


Code protocole : 17 pour UDP ou 6 pour TCP (UDP=User Datagram Packet : ce protocole est plus rapide mais moins fiable que TCP)

Les datagrammes IP sont eux-mêmes encapsulés dans une trame Ethernet :


Problème : La communication physique se fait grâce aux adresses MAC. Or la machine qui émet une trame connaît généralement l’adresse IP du destinataire (serveur, routeur ou une station de travail ordinaire). Pour obtenir l’adresse MAC, la station émettrice envoie à l’ensemble du réseau une trame ARP contenant l’adresse IP du destinataire en utilisant l’adresse MAC de diffusion (FF :FF :FF :FF :FF :FF). Lorsque le poste destinataire reconnaît son adresse IP il retourne aussitôt son adresse MAC à l’expéditeur, qui peut alors envoyer les données. 


A retenir : 

La communication entre les machines dans un réseau local s’établit grâce à un protocole de transport (TCP/IP par exemple) qui garantit un acheminement fiable des données.

Une augmentation sensible des délais d’attente peut s’expliquer :

-    soit par un trafic important sur le réseau
-    soit par une montée en charge du (des) serveur(s) qui sont alors fortement sollicités.

Les données émises sont découpées en paquets pour permettre un meilleur trafic  : toutes les stations du réseau peuvent envoyer des données sans que l’une d’elle ne monopolise la bande passante, ce qui obligerait les autres stations à attendre la fin de son envoi de données.
                         

RESULTATS DE LA SESSION PRINCIPALE (2010/2011) LFI 1


L'année 2010/2011 , c'est l"année de 1 année dans faculté de science (LFI1), 
sur tu oublié cette année  voila  la liste de resulta de moyene de fin d'année 2010/2011
aller voir votre  moyenne w moyenne de votre ami(e)s :D



mardi 5 mars 2013

Adobe Dreamweaver 8


Macromedia Dreamweaver is one of the most popular web-design programs in the industry. It allows you to develop professional websites and its user-friendly interface, tools and features have made it the must-have package for web designers.
Dreamweaver uses both Cascading Style Sheets (CSS) and Hyper Text Markup Language (HTML) and it has good code-editing support features that will help you to write the CSS and HTML. Alongside writing the code, you can use the visual layout tools to build your sites and make them look exceptional.
You can use plug-ins to place videos, music and other media into web pages. If you want a site that is easy to update, then you can embed a live stream of content by using RSS.
Macromedia DreamweaverThe price of Macromedia Dreamweaver 8 is $399 all over the internet. we are giving the full version with serial keys Free here.


Download Dreamweaver 8 Documentation

Download the complete documentation set to print or to search across all the manuals.


Lien pour telechagement : 
ou 

Keygen :


lien ou il ya tutoriel  comment utliser

๑۩۞۩๑ دروس الدريم ويفر Dream Weaver

dimanche 3 mars 2013

Exercice Algorithme : Le Tri à Bulles


  • Réaliser l'Algorithme du Tri à Bulles 
Principe de la méthode : Sélectionner le minimum du tableau en parcourant le tableau de la Fin au début et en échangeant tout couple d'éléments consécutifs non ordonnés.

Exemple: 
Tri__B


Procédure TriBulles (E/S t : Tableau [1..MAX] d'Entiers, nbElements : Naturel)
Déclaration i,k : Naturel
 
Début
 
    Pour i <-- 0 à nbElements-1 faire
    Pour k <-- nbElements-1 à i+1 faire
       si t[k]
       Echanger(t[k],t[k-1])
       Fin si
    Fin pour
    Fin pour
 
Fin

Exercice langage C adressage des composantes d'un tableau avec les pointeurs


Ecrire un programme qui lit deux tableaux A et B et leurs dimensions N et M au clavier et qui ajoute les éléments de B à la fin de A. Utiliser le formalisme pointeur à chaque fois que cela est possible.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include <stdio.h>
main()
{
 /* Déclarations */
 int A[100], B[50]; /* tableaux */
 int N, M;  /* dimensions des tableaux */
 int I;     /* indice courant */
 
 /* Saisie des données */
 printf("Dimension du tableau A (max.50) : ");
 scanf("%d", &N );
 for (I=0; I<N; I++)
     {
      printf("Elément %d : ", I);
      scanf("%d", A+I);
     }
 printf("Dimension du tableau B (max.50) : ");
 scanf("%d", &M );
 for (I=0; I<M; I++)
     {
      printf("Elément %d : ", I);
      scanf("%d", B+I);
     }
 /* Affichage des tableaux */
 printf("Tableau donné A :\n");
 for (I=0; I<N; I++)
      printf("%d ", *(A+I));
 printf("\n");
 printf("Tableau donné B :\n");
 for (I=0; I<M; I++)
      printf("%d ", *(B+I));
 printf("\n");
 /* Copie de B à la fin de A */
 for (I=0; I<M; I++)
       *(A+N+I) = *(B+I);
 /* Nouvelle dimension de A */
 N += M; 
  /* Edition du résultat */
 printf("Tableau résultat A :\n");
 for (I=0; I<N; I++)
       printf("%d ", *(A+I));
 printf("\n");
 return 0;
}
 
-