bonjour
y a t il une fonction qui permet d'eliminer le vide lors du stockage dans une base de données access via une application c#
merci
Version imprimable
bonjour
y a t il une fonction qui permet d'eliminer le vide lors du stockage dans une base de données access via une application c#
merci
Je ne te comprend pas bien mais si tu a par une exemple un string Var de type String tu peut faire Var.Trim(), cette fonction supprime les espace a gauche et a droite de la variable .
@++;)
En fait, tu cherche a compacter ta bdd en supprimant les lignes marquées effacées mais qui n'ont pas ecnore été zappée. Désolé, mais il me semble que ce genre de fonction n'existe qu'a partir de l'interface d'access lui même.
bonjour,
et non tu peux faire ça à partir du code en c# directement :
ça devrait bien fonctionner, c'est du code pris directement sur ici et optimisé très vite fait...Code:
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 using System; using System.IO; namespace CompactMDB { class Class1 { [STAThread] static void Main(string[] args) { // http://support.microsoft.com/kb/306287/ if (args.Length != 1) { Console.WriteLine(@"CompactMDB D:\path\database.mdb"); } else { string dbName = args[0].Trim(); string dbTemp = string.Concat(dbName, "_pak"); string provider = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="; try { JRO.JetEngine jet = new JRO.JetEngine(); jet.CompactDatabase(provider + dbName, provider + dbTemp); } catch (Exception ex) { Console.WriteLine(ex.Message); dbName = ""; } if (!string.IsNullOrEmpty(dbName )) { try { FileInfo fi = new FileInfo(dbName); string result = dbName + " : " + fi.Length.ToString(); File.Delete(dbName); File.Move(dbTemp, dbName); fi.Refresh(); result += " -> " + fi.Length.ToString(); Console.WriteLine(result); } catch (Exception ex) { Console.WriteLine(ex.Message); } } } } } }
j'ai pas compris le fait de compacter la base de donnée!!
mon pblem est le suivant:
quand j enregsitre dans une base de données acess ,y a le vide qui s ajoute a coté du string par exemple alors quand je fais la jointure suivant un champs communs qui normalement va donner un joiture parfaite,y a le null du coté du champs avec le blanc,alors j elimine le blanc manuellement et je refait la jointure et ça marche!!mais vu que c est tres fatigant de le faire manuellement surtt avec un base de données pesante!!
merci
tu dois utiliser des char(X) et non des varchar(X)... ça doit être tout.
Sinon je comprends pas du tout ce que tu dis...
Sois plus explicite. ;)