INSÉRER dans la table, sans préciser les noms de Colonnes
J'ai INVOICE
TABLE
Je veux insérer la valeur en ne spécifiant les noms de colonnes
à l'aide de SQL Server
, j'ai essayé ceci mais ça ne fonctionne pas..s'il vous plaît aider
INSERT INTO INVOICE
VALUES( 1,1,KEYBOARD,1,15,5,75)
sans votre structure de la table, nous ne serons pas en mesure de l'aider...
et l'erreur est? Qu'est-ce que
INSERT INTO nom_table (colonne1,colonne2,colonne3,...) VALUES (valeur1,valeur2,valeur3,...);
C'est ce que l'OP est d'essayer d'éviter.
l'homme désolé, j'ai eu u, mais j'ai eu ça avant, et c'était à cause de la valeur par défaut pour la date, de sorte que vous pouvez prêter attention à cela.
et l'erreur est? Qu'est-ce que
KEYBOARD
? Avez-vous spécifié toutes les colonnes? Son bien documenté msdn.microsoft.com/en-us/library/ms174335.aspxINSERT INTO nom_table (colonne1,colonne2,colonne3,...) VALUES (valeur1,valeur2,valeur3,...);
C'est ce que l'OP est d'essayer d'éviter.
l'homme désolé, j'ai eu u, mais j'ai eu ça avant, et c'était à cause de la valeur par défaut pour la date, de sorte que vous pouvez prêter attention à cela.
OriginalL'auteur user2393171 | 2013-06-19
Vous devez vous connecter pour publier un commentaire.
Aussi longtemps que vous avez le bon nombre de colonnes dans votre instruction INSERT, et aussi longtemps que toutes les valeurs à l'exception du CLAVIER sont un type de données numérique, et aussi longtemps que vous avez adapté les autorisations, cela devrait fonctionner.
SQL nécessite des guillemets simples autour des valeurs de texte.
Mais de ne pas utiliser des noms de colonne n'est pas une bonne pratique. Il n'est pas rare pour les gens à changer l'ordre des colonnes dans une table. Modification de l'ordre des colonnes n'est pas une bonne pratique, soit, mais certaines personnes insistent sur le faire de toute façon.
Si quelqu'un le fait, et les swaps de la 5e et de la 7e colonnes de votre table, votre instruction INSERT va encore réussir ces deux colonnes sont numériques, mais celle de l'INSERTION de la vis de vos données.
Je veux juste ajouter que de ne pas utiliser des noms de colonnes est appelé
"blind insert"
ant, il est courant de SQL antipattern. Le pire, c'est quand INSÉRER des œuvres, mais des données va à la mauvaise colonne (conversions implicites et ainsi de suite).Je viens d'ajouter une nouvelle colonne nullable à une table où nous sommes certains que les Aveugles de l'Insertion de passe et la production a démarré erroring, parce que le nombre de champs de la non-concordance avec le nombre de valeurs dans l'angle de l'Insertion. Je ne savais pas que nous avions à l'Aveugle Inserts. Mon conseil, ne soyez pas paresseux! Faire une bonne insertion et de vous épargner les maux de tête.
Modification de l'ordre ou des colonnes peut être une mauvaise pratique, mais il peut être une simple erreur. Il peut arriver lorsque vous ajoutez des colonnes avec alter table et vous avez oublié d'ajouter Une colonne avant d'ajouter la colonne B. d'autre part, d'INSÉRER des sans noms de champ est de 99,99% du temps d'une mauvaise pratique. Il va arrêter de travailler avec colonne de swaps, mais aussi si j'ajoute une colonne à la table. Il aggrave la lisibilité si la table est grande, et vous oblige à insérer la valeur null dans tous non initialisé colonnes.
OriginalL'auteur Mike Sherrill 'Cat Recall'
Pourquoi voudriez-vous faire cela? Ne pas spécifier de nom de colonne est de mauvaises pratiques de codage.
Dans votre cas, cependant,
keyboard
doit être entouré de guillemets simples:Si vous ne voulez pas taper les noms de colonne, vous pouvez les obtenir facilement dans SQL Server Management Studio. Ouvrez le Navigateur d'Objet", ouvrez la base de données, et choisissez "Tables". Choisissez le
Invoice
table. Une des options est "Colonnes".Suffit de cliquer sur "Colonnes" nom (pas besoin de l'ouvrir) et faites-la glisser dans une fenêtre de requête. Il va insérer la liste des colonnes.
OriginalL'auteur Gordon Linoff
oui, vous pouvez directement insérer des valeurs dans le tableau comme suit:
OriginalL'auteur Parvez Khan
vous oubliez d'inclure les guillemets simples dans le clavier,le texte nécessaire des guillemets simples dans sql
OriginalL'auteur Brian lee