2010-08-16 9 views
0

J'essaie de renommer une table en utilisant la syntaxe suivanteAppel sp_rename sur une table tue la connexion de base de données dans Sybase

sp_rename [oldname],[newname] 

mais chaque fois que je cours, j'obtiens ce qui suit [en utilisant Aqua DataStudio]:

Command was executed successfully 

Warnings: ---> 
    W (1): The SQL Server is terminating this process. 
      <--- 
[Executed: 16/08/10 11:11:10 AM] [Execution: 359ms] 

Ensuite, la connexion est interrompue (ne peut rien faire d'autre dans l'analyseur de requête en cours (SPID unique pour chaque fenêtre))

Ai-je besoin d'utiliser les master quand je exécuter ces commandes, ou est-ce que je fais quelque chose d'autre?

+0

Est-ce ASA ou ASE? Et quelle version? – Tim

+0

@Tim Adaptive Server Enterprise 12.5.3 – glasnt

Répondre

0

Vous ne devriez pas avoir le comportement que vous voyez. Il doit soit générer une erreur (par exemple, si vous n'avez pas d'autorisation), soit fonctionner correctement. Je soupçonne que quelque chose ne va pas sous les couvertures.

Avez-vous vérifié le journal des erreurs pour le serveur ASE? Typiquement, ces types de problèmes (les connexions étant fermées de force) seront accompagnés d'une entrée dans le journal des erreurs avec un peu plus d'informations. Le journal des erreurs sera sur l'hôte qui exécute le serveur ASE et sera probablement dans le même emplacement que celui dans lequel ASE est installé. Quelque chose comme /opt/sybase/ASE-12_5/install/errorlog_MYSERVER

0

essayez d'éviter d'utiliser "sp_rename". Parce que certaines références dans les tables système restent comme un ancien nom. Un jour cela peut causer quelques fautes si vous oubliez ce changement.

Je suggère;

select * into table_backup from [tableRecent] 
go 
select * into [tableNew] from table_backup 
go 
drop table [tableRecent] -- in case of backup you may not drop that table 
go 
drop table table_backup -- in case of backup you may not drop that table 
go 
  • pour atteindre cet; votre base de données a une option "select into/bulkcopy/pllsort"
  • Si votre ata est énorme, vérifiez votre espace libre sur cette base de données.

et profiter :)