Est-il possible d'exécuter une commande qui supprime toutes les tables de la base de données SQL?Supprimer toutes les tables de la base de données sql ce
grâce à l'aide
Est-il possible d'exécuter une commande qui supprime toutes les tables de la base de données SQL?Supprimer toutes les tables de la base de données sql ce
grâce à l'aide
Vous pouvez utiliser les informations SCHEMA pour générer un script:
select 'drop table ' || table_name || ';'
from information_schema.tables;
Ensuite, exécutez le script. Vous devrez peut-être exécuter le script plusieurs fois, car il n'existe aucune option CASCADE (AFAIK) dans SQLCE.
Vous pouvez également déposer une base de données et la créer à nouveau, mais elle effacera toute votre configuration, ce qui peut ne pas être la meilleure option.
System.IO.File.Delete puis exécutez le nécessite de créer des scripts TABLE
Vous voulez en savoir plus? Alors ... supprimer le fichier entier? Je veux juste reconstruire la base de données chaque fois que j'exécute des tests. Supprimer le fichier .sdf semble être une mauvaise idée. – vbullinger
Voici comment je le fais:
CreateTables.sqlce
Collez le texte suivant dans une console PowerShell:
function GenerateDropScript($DbSchemaFile)
{
function Reverse($inputArr)
{
$arr = @($inputArr)
[array]::Reverse($arr)
return $arr
}
$TableNames = Get-Content $DbSchemaFile |
? { $_.StartsWith('CREATE TABLE') } |
% { $_.Substring(14).Replace('] (', '') }
$ReverseNames = Reverse($TableNames)
"Generating DROP script for all tables in: `n`t$DbSchemaFile`n"
$ReverseNames | % { "DROP TABLE [$_]; GO;" }
}
Run GenerateDropScript CreateTables.sqlce
Cela va lire le script pour créer et générer des scripts DROP pour toutes les tables dans l'ordre inverse ils sont créés, de sorte que vous ne recevez pas d'erreur de dépendance.
1 - J'étais FAÇON l'enfer hors CE puisque est si différent de SQL Server – JNK
au cas où quelqu'un est toujours à la recherche en 2015 - «[ » script mis à jour pourrait être select « drop table » + t.TABLE_SCHEMA + + t.table_name + '];' à partir de information_schema.tables t; – torm
@torm SQL Compact n'a pas de schéma! – ErikEJ