{"id":7616,"date":"2022-05-10T07:41:00","date_gmt":"2022-05-10T05:41:00","guid":{"rendered":"https:\/\/expert-only.com\/?p=7616"},"modified":"2022-12-06T11:45:53","modified_gmt":"2022-12-06T10:45:53","slug":"impossible-de-trouver-l-objet-sql-server","status":"publish","type":"post","link":"https:\/\/expert-only.com\/fr\/erreurs\/impossible-de-trouver-l-objet-sql-server\/","title":{"rendered":"Impossible de trouver l&rsquo;objet car il n&rsquo;existe pas"},"content":{"rendered":"\n<h4 class=\"has-text-align-center wp-block-heading\">Comment \u00e9viter l&rsquo;erreur SQL Server Impossible de trouver l&rsquo;objet car il n&rsquo;existe pas ou vous n&rsquo;avez pas les autorisations n\u00e9cessaires ?<\/h4>\n\n\n\n<p>En T-SQL, pour effacer le contenu complet d&rsquo;une table, le moyen le plus rapide est d&rsquo;ex\u00e9cuter une requ\u00eate Truncate Table, qui g\u00e9n\u00e8re cette erreur: Impossible de trouver l&rsquo;objet car il n&rsquo;existe pas. La requ\u00eate Truncate est diff\u00e9rente de la requ\u00eate Delete From car elle vide toutes les lignes de la table sans clause where. C&rsquo;est une op\u00e9ration SQL en langage de d\u00e9finition de base de donn\u00e9es (LDD). En r\u00e9alit\u00e9, un niveau d&rsquo;acc\u00e8s plus important est n\u00e9cessaire pour effectuer un Truncate sur une table afin d&rsquo;\u00e9viter les erreurs.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-erreur-sql-server-impossible-de-trouver-l-objet-car-il-n-existe-pas-ou-vous-n-avez-pas-les-autorisations-necessaires\">Erreur SQL Server Impossible de trouver l&rsquo;objet car il n&rsquo;existe pas ou vous n&rsquo;avez pas les autorisations n\u00e9cessaires<\/h2>\n\n\n\n<p>Supposons que la table existe dans la base de donn\u00e9es. Dans ce cas, il s&rsquo;agit d&rsquo;une erreur de droits d&rsquo;acc\u00e8s. En effet, ce message d&rsquo;erreur s&rsquo;affiche si le niveau de permissions n&rsquo;est pas suffisant pour voir ou manipuler la table.<\/p>\n\n\n\n<p>L&rsquo;ex\u00e9cution de la requ\u00eate <em>TRUNCATE TABLE dbo.YourTable;<\/em> a \u00e9chou\u00e9 avec l&rsquo;erreur suivante : \u00ab\u00a0Impossible de trouver l&rsquo;objet \u00ab\u00a0YourTable\u00a0\u00bb car il n&rsquo;existe pas ou vous n&rsquo;avez pas les autorisations n\u00e9cessaires\u00a0\u00bb.<\/p>\n\n\n\n<p>Causes possibles de cet \u00e9chec&nbsp;: probl\u00e8mes li\u00e9s \u00e0 la requ\u00eate, propri\u00e9t\u00e9 ResultSet&nbsp;non d\u00e9finie correctement, param\u00e8tres non d\u00e9finis correctement ou connexion non \u00e9tablie correctement.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Accorder le privil\u00e8ge ALTER sur la table \u00e0 vider<\/h2>\n\n\n\n<p>La premi\u00e8re solution est de donner plus de privil\u00e8ges \u00e0 l&rsquo;utilisateur SQL, ou Windows qui ex\u00e9cute la requ\u00eate TRUNCATE TABLE.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">GRANT ALTER ON [dbo].[YourTable] TO [SQLUser]\nGO\n<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">La deuxi\u00e8me solution est d&rsquo;utiliser DELETE au lieu de TRUNCATE<\/h2>\n\n\n\n<p>Une autre alternative est de supprimer directement les donn\u00e9es de la table au lieu de la vider compl\u00e8tement. En effet l&rsquo;instruction TRUNCATE TABLE n\u00e9cessite plus de droit que l&rsquo;instruction DELETE FROM. Il existe en effet des <a href=\"https:\/\/www.c-sharpcorner.com\/blogs\/difference-between-truncate-delete-and-drop-in-sql-server1\" target=\"_blank\" rel=\"noreferrer noopener\">diff\u00e9rences<\/a> entre les 2 instructions.<\/p>\n\n\n\n<p>Si les performances du DELETE permettent de l&rsquo;utiliser, utilisez une instruction comme celle-ci.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"sql\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">DELETE FROM [dbo].[YourTable];\n<\/pre>\n\n\n\n<p>Enfin, cet article d\u00e9crit deux solutions simples pour \u00e9viter l&rsquo;erreur <em>SQL Server Truncate Table Error Cannot find the object<\/em>, sur les versions Anglaises de MS SQL. <\/p>\n\n\n\n<p>Consulter aussi d&rsquo;autres erreurs SQL Server courantes comme l&rsquo;<a href=\"https:\/\/expert-only.com\/base-sql-server\/impossible-supprimer-base-donnees-sql-server\/\">erreur SQL Server 3702 : Impossible de supprimer la base de donn\u00e9es<\/a> car elle est en cours d\u2019utilisation.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed is-provider-tutoriels-sql-et-it wp-block-embed-tutoriels-sql-et-it\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"ExzF1o8rOD\"><a href=\"https:\/\/expert-only.com\/fr\/erreurs\/nom-objet-non-valide-cte-sql-server\/\">Nom d&rsquo;objet non valide avec un CTE SQL Server<\/a><\/blockquote><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"\u00ab\u00a0Nom d&rsquo;objet non valide avec un CTE SQL Server\u00a0\u00bb &#8212; Tutoriels SQL et IT\" src=\"https:\/\/expert-only.com\/fr\/erreurs\/nom-objet-non-valide-cte-sql-server\/embed\/#?secret=EtrtzTlRsw#?secret=ExzF1o8rOD\" data-secret=\"ExzF1o8rOD\" width=\"500\" height=\"282\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n","protected":false},"excerpt":{"rendered":"<div class=\"mh-excerpt\"><p>Comment \u00e9viter l&rsquo;erreur SQL Server Impossible de trouver l&rsquo;objet car il n&rsquo;existe pas ou vous n&rsquo;avez pas les autorisations n\u00e9cessaires ? En T-SQL, pour effacer le contenu complet d&rsquo;une table, le moyen le plus rapide est d&rsquo;ex\u00e9cuter une requ\u00eate <a class=\"mh-excerpt-more\" href=\"https:\/\/expert-only.com\/fr\/erreurs\/impossible-de-trouver-l-objet-sql-server\/\" title=\"Impossible de trouver l&rsquo;objet car il n&rsquo;existe pas\">&#8230;<\/a><\/p>\n<\/div>","protected":false},"author":1,"featured_media":10707,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[485],"tags":[240],"class_list":{"0":"post-7616","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-erreurs","8":"tag-alter"},"_links":{"self":[{"href":"https:\/\/expert-only.com\/fr\/wp-json\/wp\/v2\/posts\/7616","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/expert-only.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/expert-only.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/expert-only.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/expert-only.com\/fr\/wp-json\/wp\/v2\/comments?post=7616"}],"version-history":[{"count":0,"href":"https:\/\/expert-only.com\/fr\/wp-json\/wp\/v2\/posts\/7616\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/expert-only.com\/fr\/wp-json\/wp\/v2\/media\/10707"}],"wp:attachment":[{"href":"https:\/\/expert-only.com\/fr\/wp-json\/wp\/v2\/media?parent=7616"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/expert-only.com\/fr\/wp-json\/wp\/v2\/categories?post=7616"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/expert-only.com\/fr\/wp-json\/wp\/v2\/tags?post=7616"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}