2010-10-27 5 views
0

Am enregistrer un nom de table dans une chaînevb.net manipulation de nombreux nom de la table en utilisant la chaîne

ugad = "INSERT INTO tb (Ugname, Ugdob, Uggender)"

c'est la requête ordinaire qui fonctionne bien .

Mais je dois enregistrer un Tablename dans une chaîne appelée « département »

et cette chaîne aura le nom de table diff parfois diff. Comment dois-je l'exécuter, Wat requête devrais-je donner.

ugad = "INSERT INTO dept (Ugname, Ugdob, Uggender)" Je sais que cette requête n'est pas valide. Puis-je savoir la requête correcte

+0

Je ne comprends pas votre question. Est-ce que chaque table que vous voulez insérer dans la même structure –

Répondre

2

Utilisation:

ugad = "INSERT INTO " & dept & "(Ugname,Ugdob,Uggender)" 

N.B. Il y a sans doute des façons plus sûres et plus sûres de composer du SQL (si vous vous inquiétez d'une interférence malveillante ou accidentelle avec vos données sous-jacentes par injection SQL) que ce qui précède, mais j'espère que cela vous permettra de démarrer.

1

Si je vous comprends bien, vous NEET essayer quelque chose comme

ugad = "INSERT INTO " + dept + "(Ugname,Ugdob,Uggender)" 

Avoir un llok à Operators in VB.NET

Rappelez-vous simplement que la concaténation de chaîne peut être très lent une fois que vous commencez à concaténer dans les boucles, ont donc toujours à l'arrière de votre esprit que le StringBuilder Class existe et est beaucoup plus rapide que la concaténation normale ...

2

Ou

ugad = String.Format("INSERT INTO {0}(Ugname,Ugdob,Uggender)", dept) 

Ce que je pense est plus facile à lire et plus facile à entretenir.