Access ou C#?

Darkrudandei Messages postés 6 Date d'inscription lundi 17 janvier 2005 Statut Membre Dernière intervention 19 janvier 2005 - 18 janv. 2005 à 15:13
cs_cathcath Messages postés 1 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 31 janvier 2005 - 31 janv. 2005 à 11:03
Premierement merci d'avoir répondu a ma première demande d'aide

Maintenant mon probleme est le suivant.

J'ai une base de donnée Access (non, pas SQL et je ne peux rien y faire)
Maintenant je doit choisir le logiciel qui sera utilisé pour fabriqué l'interface de communication avec la base de donnée (ex. pour les intrants). Je doit fournir a mon employeur (je suis en stage) une liste d'avantage désavantage afin que lui aussi puisse se faire une bonne idée.

Mon probleme est que le choix est entre Access et C#.. et que je n'ai jamais vraiment fait d'application avec Access et je commence en C#.

Ma question est la suivante, serait-il possible de m'aider en m'énumérant les avantages/désavantage d'Access et de C# lorsque vient le temps de faire de la programmation.

Pour vous aidez, mon programme servira a entrée des données numérique principalement afin d'obtenir a la fin des graphique et des tables.

Merci a l'avance

12 réponses

Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
19 janv. 2005 à 10:09
ouf vaste sujet...

bon deja access ...c pas top comme choix, sachant que microsoft met a disposition msde (gratuit mais un peu limite taille de bdd de 2Go max et perf optimal pour 5 requetes simultanee, mais ca gere les procedures stockes comme sql serveur et si jamais tu atteins les 2Go de données pouf tu passe a sql serveur 200 en payant la license simple...)
mais bon disons que tu n'as pas le choix et tu reste sur access
la prog en c# pour acceder au bdd est assez simple...qd tu comprend les mecanismes
en l'occurence en utilisant access tu a acces a l'ADO des objets qui te permettent de te connecter faire des requetes etc..sur ta base
l'avantage de l'ado par rapport a de l'odbc, c plus rapide...
donc mieux
:o)

maintenant si tu commence en c# tu peux deja regarder mes sources y a des exemple d'utilisation de l'ado vers une base sql serveur (northwind), le principe est exactement le meme pour access au lieu d'avoir des objet SqlConnection tu aura OledbConnection et voilou...

bref le premier conseil ca serait de changer de base et de passer a msde...au moins...gratuit et proche de sql serveur...avec de gros avantages et kkelques inconvenients
qd a l'utilisation de C# pour bosser avec tout les jours en accedant a des bdd ben ca marche nickel et c pas trop compliquer...fo rentrer dedans apres ca roule tout seul..


Arthenius

"Il n'y a pas de mauvais développeurs,...
mais uniquement de mauvais utilisateurs..."
0
Darkrudandei Messages postés 6 Date d'inscription lundi 17 janvier 2005 Statut Membre Dernière intervention 19 janvier 2005
19 janv. 2005 à 15:57
Merci pour ta réponse. Mais je n'ai vriament pas la possibilité de changer vers SQL.

Je travail pour un ministere.. et le temps qu'ils obtiennent les autorisations et tout pour que je puisse utiliser SQL.. ça serait environ de 3 semaines et ça c'est si j,ai l'autorisation alors...
comme je suis en stage je ne serias pas non plus là tres longtemps donc impossible pour moi un fois que le projet est en cours de changer leur serveur de BD d'access ou msde vers SQL.

Quel est la taille maximale d'une BD en Access? Je n,ai pas besoin de procédure stocké, ni de rien de trop puissant... l'important c'est la place.

Oh et pendant que j'y suis :P j'ai essayé quelque chose sur Access mais je n'y arrive pas.
Je veux passé une valeur dans un string pour créer une table.

code:

Option Compare Database
Dim nom As String

Private Sub Commande7_Click()

nom = Texte5.Text

sqlStr = "Create Table" & nom & "(depense TEXT);"

DoCmd.RunSQL sqlStr

End Sub

Si c'est possible j'aimerais aussi faire quelquechose dans le genre :
sqlStr = "Create Table depense" & nom & "(depense TEXT);"

pour que si la valeur nom soit 10. Le nom de ma table soit depense10.
0
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
19 janv. 2005 à 16:03
pour la taille access...
je sais pas trop..on evite d'utiliser ca...
j'avais un client qui l'avait avec une compta (y a longtemps) la base faisait 40Mo et de temps en temps fallait la reparer..... ??????
mais bon ca date d'y a 6 ans...

pour ton code c quoi le message d'erreur??


Arthenius

"Il n'y a pas de mauvais développeurs,...
mais uniquement de mauvais utilisateurs..."
0
Darkrudandei Messages postés 6 Date d'inscription lundi 17 janvier 2005 Statut Membre Dernière intervention 19 janvier 2005
19 janv. 2005 à 16:36
voici l'erreur que ca affiche

Erreur d'exécution '2185':

Impossible de faire référence à une propriété ou de la définir
pour un contrôle si ce dernier n'est pas activé.

L'erreur se fait au niveau de nom = Texte5.Text

Si je change Texte5.Text pour Texte5.Value cette erreur disparait mais une autre fait son apparition

Erreur d'exécution '3290':

Erreur de syntaxe dans l'instruction CREATE TABLE
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
19 janv. 2005 à 16:50
j'avais pas vu mais c du vb ton truc...
mais bon moi je ferais

Option Compare Database

Private Sub Commande7_Click()

Dim nom As String
nom = Texte5.Text

sqlStr = "Create Table" & nom & "(depense TEXT);"

DoCmd.RunSQL sqlStr

End Sub


Arthenius

"Il n'y a pas de mauvais développeurs,...
mais uniquement de mauvais utilisateurs..."
0
Darkrudandei Messages postés 6 Date d'inscription lundi 17 janvier 2005 Statut Membre Dernière intervention 19 janvier 2005
19 janv. 2005 à 18:42
Merci pour l'info mais ca ne change absoluement rien.. l'erreur est la meme

Si je laisse Texte5.Text j'obtien encore la premiere erreur

Si je le change pour .Value.. j'obtient encore la 2 eme erreur
0
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
19 janv. 2005 à 18:47
Texte5 est de quelle type ???

combo textbox ???listbox ??


Arthenius

"Il n'y a pas de mauvais développeurs,...
mais uniquement de mauvais utilisateurs..."
0
Darkrudandei Messages postés 6 Date d'inscription lundi 17 janvier 2005 Statut Membre Dernière intervention 19 janvier 2005
19 janv. 2005 à 18:58
Texte 5 est un simple textbox (ou zone de texte :P je l'ai en francais)

Access.. est merdique pour la programmation... je le fais la dessus parce que je n'ai pas le choix pour l'instant.

Ca fait.. au moins 2 heure que je cherche comment faire un datagrid avec Access.
0
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
20 janv. 2005 à 09:05
jette un oeuil a mes source y a des exemple de prog pour les datagrid...
mais c du C#...pas du vb....


Arthenius

"Il n'y a pas de mauvais développeurs,...
mais uniquement de mauvais utilisateurs..."
0
Xysyo Messages postés 2 Date d'inscription vendredi 5 décembre 2003 Statut Membre Dernière intervention 20 janvier 2005
20 janv. 2005 à 21:29
Salut



Comparer access à C# ça revient à chercher les différences entre une
pelle et un tractopelle (bon j'ai rien d'autre sous le coude). Access
te permet de développer des petites solutions rapidement sans trop te
fatiguer (max 2 Go). C# c'est beaucoup plus gros et complexe. Si tu
débutes sous C# tu n'auras pas assez de temps (3 semaines) pour
developper ta solution. Je te conseillerai de te pencher sur Access.



Oublies access en réseau, c'est vraiement merdique par contre tu peux
l'utiliser pour développer ton interface sans problème. Avec l'ODBC tu
pourras attaquer n'importe quel SGBD et utiliser pleinement les
assistants automatiques.



Tu pourras développer en t'approchant un peu de l'orienté objet avec
les modules de classe. C'est pas génialissime mais ça structure
grandement ton code et améliore sa compréhension.



Un dernier point de taille, si tu dois développer en réseau : tu verras
vite que pour garder des performances honorables il te faut absolument
une interface locale qui se connecte au fichier des données. Enfin,
gardes tous tes objets indépendants. Ne lie rien à la base, va plutôt
chercher tes données avec du SQL.



Ouala

Bye
0
Xysyo Messages postés 2 Date d'inscription vendredi 5 décembre 2003 Statut Membre Dernière intervention 20 janvier 2005
20 janv. 2005 à 21:43
pour ton problème de code, crée ta table avec l'assistant c'est simple et rapide



pour le sql :

CREATE TABLE MaTable ( MonChampID COUNTER, MonAutreChamp Text(10))


Ouala

Bye
- -
0
cs_cathcath Messages postés 1 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 31 janvier 2005
31 janv. 2005 à 11:03
text5="toto"
pas de .text, c une des incohérences d'access :-)

cathcath
0
Rejoignez-nous