Modifier un type de données dans une table existante

cs_volcelest Messages postés 4 Date d'inscription samedi 25 janvier 2003 Statut Membre Dernière intervention 24 mars 2011 - 24 mars 2011 à 15:15
cs_volcelest Messages postés 4 Date d'inscription samedi 25 janvier 2003 Statut Membre Dernière intervention 24 mars 2011 - 24 mars 2011 à 19:42
Bonjour,
J'essaie de modifier un type de données dans une table existante de ma BDD.
À l'origine le type de données est varchar(255) et je veux le transformer en type memo (TEXT)
Je ne pense pas qu'il s'agisse de l'accès à la base, ni du droit de modification car si je remplace la requête par
strRequete = "ALTER TABLE produits ADD liste1 TEXT";//ajout d'une autre colonne au type TEXT
cela fonctionne, par contre avec la requête qui suit,
strRequete = "ALTER TABLE produits MODIFY liste TEXT";//la colonne 'liste' existe déjà
le débogage saute après
oCommand.ExecuteNonQuery();
Quelqu'un aurait-il une idée de la raison ?
Merci

Voici le code:
string strConnexion = connectionbase;
string strRequete = "";
strRequete "ALTER TABLE produits MODIFY liste TEXT";//ancien varchar(255)
using (OleDbConnection oConnection = new OleDbConnection(strConnexion))
{
try
{
OleDbCommand oCommand = new OleDbCommand(strRequete, oConnection);
oConnection.Open();
oCommand.ExecuteNonQuery();
if (oConnection != null) oConnection.Close();
}
catch
{
if (oConnection != null) oConnection.Close();
}
}

3 réponses

cs_jopop Messages postés 1540 Date d'inscription lundi 26 mai 2003 Statut Membre Dernière intervention 1 août 2013 12
24 mars 2011 à 15:23
Salut,

T'utilises quoi comme SGBD ?
As-tu tenté ta requête sur un client de ton SGBD ?
T'as quoi comme erreur exactement (texte de l'exception) ?
0
cs_volcelest Messages postés 4 Date d'inscription samedi 25 janvier 2003 Statut Membre Dernière intervention 24 mars 2011
24 mars 2011 à 18:47
Merci Jopop de répondre à mon problème.

Je joints à mon appli les composants MDAC pour utiliser ma base access

Provider=Microsoft.Jet.OLEDB

L'erreur est :

"ex = {"Erreur de syntaxe dans l'instruction ALTER TABLE."}


VOLCELEST
0
cs_volcelest Messages postés 4 Date d'inscription samedi 25 janvier 2003 Statut Membre Dernière intervention 24 mars 2011
24 mars 2011 à 19:42
J'ai trouvé

Je n'utilisais pas la bonne syntaxe pour la requête ALTER TABLE [latable] modify [lacolonne] letype

Il fallait utiliser ceci :

ALTER TABLE [latable] ALTER COLUMN [lacolonne] letype

J'ai vu ça sur la doc Office 2007 http://msdn.microsoft.com/en-us/library/bb177883(v=office.12).aspx

Merci tout de même jopop
VOLCELEST
0
Rejoignez-nous