Comment rechercher une colonne avec des valeurs NULL autorisées dans l'insertion dans la base de données entière?Recherche de toutes les colonnes Nullable dans la base de données SQL 2000
4
A
Répondre
8
Je n'ai pas sql à portée de main, mais la requête ressemble à ceci
SELECT * FROM information_schema.columns WHERE is_nullable = 'YES'
En général, la recherche de ce point de vue stardard, pour toutes les informations des métadonnées sur votre schéma et la structure de la base de données; il y en a beaucoup d'autres (information_schema.tables, information_schema.constraints, etc.)
0
Ceux qui ne veulent voir que les colonnes des tables de base (pas les vues) doivent se joindre à INFORMATION_SCHEMA.TABLES
. J'aime aussi exclure la table système sysdiagrams
.
Recherche
SELECT
c.TABLE_NAME,
COLUMN_NAME,
DATA_TYPE
FROM
INFORMATION_SCHEMA.COLUMNS AS c
JOIN INFORMATION_SCHEMA.TABLES AS t ON t.TABLE_NAME = c.TABLE_NAME
WHERE
is_nullable = 'YES' AND
TABLE_TYPE = 'BASE TABLE' AND
c.TABLE_NAME != 'sysdiagrams'
ORDER BY
c.TABLE_NAME,
COLUMN_NAME
Si vous avez des noms de table en double dans les catalogues de schémas ou de table, vous devez impliquer les champs dans la jointure et, comme le montrent les réponses ici:
Differentiating tables and views in INFORMATION_SCHEMA.COLUMNS.
Questions connexes
- 1. la taille des colonnes de base de données pour les données à base de caractères
- 2. Comment écrire une requête SQL qui recherche une valeur dans toutes les colonnes et toutes les tables de ma base de données?
- 3. MS Sql Server 2000: requête de base de données multiples
- 4. Comment restaurer les autorisations DTS après la restauration de la base de données sur SQL 2000
- 5. Comment afficher les requêtes précédentes dans la base de données SQL Server 2000
- 6. Comment puis-je migrer la base de données de SQL Server 2008 vers SQL Server 2000
- 7. Déplacement de la base de données BizTalk 2006 de SQL 2000 vers SQL 2005
- 8. Sélectionnez requête dans SQL + Toutes les valeurs dans les colonnes
- 9. Attribut de base de données Nullable dans une table distincte
- 10. Copie de base de données SQL 2000 vers les options SQL 2005
- 11. Sélectionner toutes les colonnes de toutes les tables dans SQL Server 2008
- 12. SQL: supprimer toutes les données de toutes les tables disponibles
- 13. FluentNHibernate - Définition de la valeur par défaut pour les colonnes de base de données (SQL Server)
- 14. Obtenir la liste des colonnes calculées dans la table de base de données (SQL Server)
- 15. Importation de colonnes de feuille de calcul Excel dans la base de données SQL Server
- 16. Base de données externe de recherche SharePoint
- 17. Trouver toutes les majuscules dans les colonnes?
- 18. SQL pour transposer des paires de lignes en colonnes dans la base de données MS ACCESS
- 19. SQL Server 2000 - Limiter par programme l'accès au propriétaire de la base de données?
- 20. Stockage des objets polymorphes dans la base de données SQL
- 21. Base de données de conception préférence: L'utilisation d'un DateTime et un TBI dans SQL 2000
- 22. Ai-je besoin de toutes les colonnes de base de données dans mon DataTable pour SqlBulkCopy WriteToServer?
- 23. Recherche de bases de données
- 24. Meilleure approche pour le développement de base de données Brownfield dans SQL Server 2000/2005
- 25. Base de données de réplication MSSQL 2000 à 2005
- 26. Base de données: Pagination SQL?
- 27. Données statiques SQL/listes de recherche IDENTIFICATEUR
- 28. Normalisation correcte de la base de données avec colonnes optionnelles
- 29. sélection de la première colonne de toutes les tables dans une base de données mysql
- 30. Zend sélectionne toutes les colonnes
Probablement devrait être is_nullable = 'OUI' (majuscules) pour éviter des problèmes si votre base de données est configurée pour être sensible à la casse. –
Le premier est le bon. – Juanma
Merci ... je viens de l'éditer –