p
u
b
l
i
c
i
t
é
publicité
  1. #1
    Invité de passage
    Inscrit en
    janvier 2006
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : janvier 2006
    Messages : 5
    Points : 0
    Points
    0

    Par défaut [POSTGIS] : Problème avec la fonction MULTIPOLYGON

    Bonjour,

    Je viens de passer de Postgis 1.1 à Postgres 1.5.2 avec Postrgesql 9.1 ().

    Le code applicatif utilisé n'a pas été modifié et il s'avère que déosrmais, la fonction "MULTIPOLYGON" plante dans certains cas (pas toujours).

    Voici une des requêtes en question:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO sys_gis_topology_voronoi (na, na_value, p_voronoi) VALUES('lac', '18122', GeometryFromText('MULTIPOLYGON(((277377.5 1822137.4, 277377.5 1822137.4, 277377.5 1822137.4, 277377.5 1822137.4)), ((273853.7 1826091.8, 273853.7 1826091.8, 273853.7 1826091.8, 273853.7 1826091.8)), ((377749.22 1832631.8, 377749.22 1832631.8, 377749.22 1832631.8)), ((386498.12 1793824.4, 384141.47 1796951.9, 382782.38 1798752.8, 376386.06 1796562.8, 370138.75 1800217.8, 369760.03 1800805.2, 365628.94 1807206.9, 363324.12 1807836.6, 362677.78 1809296.8, 361467.16 1812029.5, 355106.47 1816186.8, 352112.22 1823570.5, 350784.75 1826838.6, 352925.0 1832990.8, 359494.97 1831246.0, 362394.78 1832021.4, 369750.7 1832540.1, 373541.38 1832810.4, 374773.4 1834360.5, 376414.06 1835104.8, 385469.1 1841718.2, 390456.75 1837533.4, 389680.22 1825556.0, 393519.22 1821542.1, 396719.78 1816641.2, 396714.47 1813718.1, 398340.84 1809577.6, 400019.53 1808013.0, 400103.3 1807680.4, 400734.28 1805177.9, 400092.25 1800367.2, 399929.94 1800109.9, 399893.22 1800051.6, 397471.3 1798781.6, 392734.5 1795052.2, 386498.12 1793824.4)), ((290956.12 1842052.9, 290956.12 1842052.9, 290956.12 1842052.9)), ((378620.78 1860382.4, 374800.5 1860744.1, 370538.9 1861146.8, 366598.28 1867972.2, 363053.6 1872706.0, 356619.16 1890026.6, 355549.56 1892903.5, 365325.72 1892903.5, 381256.28 1894643.5, 395914.84 1894643.5, 396028.2 1894318.4, 394855.6 1892288.2, 388594.56 1881443.6, 382421.44 1866965.4, 378620.78 1860382.4)), ((254948.5 1802376.6, 254948.5 1815831.2, 254353.81 1822463.4, 258216.58 1827150.5, 263016.22 1832981.6, 266207.4 1837677.4, 267451.72 1837532.9, 268636.47 1836917.5, 270541.38 1836515.2, 273493.38 1836425.4, 273535.1 1836427.2, 274820.2 1836552.0, 277896.84 1838764.6, 280456.2 1843318.4, 280623.0 1843774.8, 281014.28 1844087.4, 281062.03 1844119.0, 282915.38 1845345.2, 282935.56 1845369.4, 285397.94 1848218.1, 286074.0 1849470.8, 286099.0 1849565.2, 288404.3 1852789.6, 287258.06 1857935.4, 287258.06 1857935.4, 287258.06 1857935.4, 286255.6 1862421.6, 287487.22 1865500.9, 287985.8 1869035.4, 288134.25 1869256.4, 288231.47 1870247.6, 290210.3 1879593.2, 289116.78 1891928.6, 296721.7 1895238.0, 302326.1 1897678.8, 304622.25 1887587.0, 305453.94 1877621.9, 305453.94 1877621.9, 305453.94 1877621.9, 305681.66 1874925.5, 310924.38 1868546.6, 313199.6 1870628.4, 319257.84 1874417.4, 325839.97 1878538.5, 327758.38 1878450.5, 331468.7 1879003.8, 333824.84 1879355.8, 338356.44 1863276.6, 340389.53 1858900.0, 339790.56 1855503.5, 338584.6 1853987.1, 330022.1 1857247.0, 325126.56 1859105.1, 325231.06 1859814.8, 324694.72 1861974.1, 324290.9 1863585.0, 322929.62 1863402.1, 313534.66 1862115.6, 312146.72 1862611.5, 311650.03 1860158.2, 304560.75 1855510.0, 300438.56 1852797.0, 299692.34 1850466.5, 301391.78 1847270.5, 302114.84 1845912.6, 303719.12 1845251.2, 304735.78 1843701.0, 306599.0 1842055.0, 307270.06 1838595.5, 308219.44 1833721.9, 311114.56 1831652.4, 312622.2 1830576.1, 314067.2 1822275.8, 314038.94 1822167.1, 308993.22 1820387.2, 305580.5 1820844.8, 301277.9 1821418.9, 299149.16 1822048.4, 297199.88 1820898.2, 290893.25 1820060.4, 285520.0 1823791.2, 285069.1 1824104.0, 284910.8 1824114.1, 280117.25 1822172.6, 277564.62 1821759.6, 276753.84 1821002.5, 272894.4 1816367.4, 268923.25 1811593.0, 261730.52 1806744.4, 260900.11 1806280.5, 254948.5 1802376.6)), ((404365.47 1950966.5, 404365.47 1950966.5, 404365.47 1950966.5, 404365.47 1950966.5)), ((336266.22 1965572.8, 336266.22 1965572.8, 336266.22 1965572.8)), ((354366.22 1979269.1, 356749.34 1980310.5, 357616.3 1980691.4, 358059.88 1981413.8, 357380.94 1982684.5, 356322.84 1984648.9, 355220.62 1982711.8, 353406.97 1979488.1, 354366.22 1979269.1)), ((379115.7 1987537.1, 379115.7 1987537.1, 379115.7 1987537.1, 379115.7 1987537.1)), ((306307.62 1900162.8, 305595.16 1900198.6, 302565.12 1908523.4, 308806.5 1918927.5, 312816.88 1925623.4, 309990.88 1932051.6, 309473.3 1933227.5, 308719.22 1933558.6, 306160.75 1934680.6, 304357.66 1939284.0, 302122.22 1943766.2, 302927.78 1948334.2, 306767.4 1953319.5, 306868.9 1953403.1, 310670.84 1956536.0, 307244.53 1967680.5, 306037.0 1971600.6, 307305.94 1973229.0, 309249.1 1978786.5, 309467.97 1979413.5, 308666.75 1983460.5, 307121.84 1991244.4, 312486.34 1993314.2, 317930.44 1993734.6, 321206.6 1988842.6, 321249.44 1988778.8, 324449.03 1986547.1, 326840.88 1984882.5, 328484.06 1984481.0, 329405.2 1984256.6, 330122.53 1982929.1, 330090.72 1981257.2, 332030.94 1978631.0, 332068.12 1978580.8, 331078.75 1972415.0, 335289.5 1973042.0, 339316.88 1973646.6, 341851.0 1972185.4, 342434.53 1972140.4, 345108.84 1965149.8, 346248.75 1963874.9, 348163.62 1961736.2, 350222.62 1960942.6, 352030.03 1960246.9, 352566.03 1958780.9, 348564.9 1948150.1, 346648.97 1948610.5, 339194.3 1950397.1, 337153.2 1954616.8, 334757.97 1956244.8, 333354.88 1956457.5, 326431.34 1954860.1, 324246.97 1953736.9, 319529.75 1954814.9, 319180.7 1954894.5, 318676.4 1954860.0, 318177.44 1945375.0, 319947.62 1939806.8, 317879.72 1935391.1, 328543.84 1930528.6, 329814.78 1923241.0, 331373.3 1914328.2, 331792.75 1913565.1, 313627.75 1903077.0, 310043.22 1901772.1, 306307.62 1900162.8)), ((395498.16 1997667.9, 395498.16 1997667.9, 395498.16 1997667.9)), ((444742.3 1968907.8, 441460.12 1976798.4, 431996.38 1988348.5, 434759.78 1994793.5, 437194.6 2000477.2, 444282.72 1998748.4, 448278.12 1996107.0, 450887.8 1994160.9, 462517.56 1992184.0, 463323.75 1990662.4, 466767.62 1984168.8, 465603.78 1982152.9, 462062.22 1975276.1, 460019.78 1971738.5, 456836.47 1971127.9, 456288.9 1971078.5, 444742.3 1968907.8)), ((478204.4 2013496.9, 478204.4 2013496.9, 478204.4 2013496.9, 478204.4 2013496.9)), ((402284.1 1944647.8, 393157.34 1946799.0, 391441.2 1949656.1, 388475.03 1954582.0, 382910.97 1954195.9, 382167.56 1955359.8, 378431.03 1961202.1, 377471.12 1961534.9, 376924.53 1961724.0, 375127.28 1961691.4, 369855.4 1962359.6, 369830.12 1962401.4, 368786.44 1964126.1, 362542.25 1968400.2, 360395.66 1968582.0, 358083.72 1968432.0, 357632.9 1968213.6, 351703.28 1972743.1, 352408.5 1978219.6, 352572.94 1979511.6, 351391.2 1980311.1, 351203.0 1982274.4, 350887.06 1985541.4, 349909.8 1986222.9, 346024.06 1988927.1, 343616.44 1996721.0, 343414.3 1997135.0, 343540.03 1998503.9, 342724.25 1999826.5, 341379.0 2008646.8, 345159.75 2010480.6, 351877.56 2013743.9, 358110.28 2013120.4, 358782.44 2011783.6, 362212.03 2008498.4, 369643.53 2009162.6, 372062.5 2009380.5, 373453.3 2009156.8, 373804.66 2008832.5, 374106.1 2008872.0, 377400.44 2008356.4, 391200.8 2006206.6, 391627.44 2005586.5, 392087.7 2005408.8, 393760.94 2004763.5, 402757.06 2004797.4, 409083.1 2001414.9, 410102.62 1993900.5, 410462.62 1991254.4, 410752.25 1989611.9, 401289.25 1988309.8, 393663.38 1987255.4, 392211.62 1986928.2, 391622.28 1986426.4, 391422.12 1985567.1, 390212.88 1980362.8, 387205.1 1978214.2, 385487.7 1977673.4, 384215.56 1976107.5, 384541.28 1969995.6, 384617.53 1968589.2, 384551.3 1968180.2, 383466.16 1965206.1, 384282.56 1964867.6, 386157.6 1964092.2, 387245.4 1961230.5, 389441.94 1955539.5, 390891.94 1956647.8, 393816.7 1961668.4, 396870.5 1962819.2, 400829.62 1964314.6, 402890.9 1964223.6, 404038.22 1963309.2, 412419.53 1964762.1, 412852.53 1964801.8, 412852.53 1964801.8, 412852.53 1964801.8, 418433.0 1965314.4, 419008.1 1964925.4, 423437.3 1960340.0, 421856.53 1955973.1, 420186.66 1953328.4, 410024.38 1947832.8, 407015.94 1946204.5, 405587.94 1946587.1, 402284.1 1944647.8)), ((322332.3 1997066.0, 321195.9 2002826.2, 318302.78 2017421.9, 325080.5 2016930.9, 331462.44 2016471.0, 329068.9 2007438.5, 331256.53 2003828.2, 332091.4 2002480.6, 332359.1 2002050.8, 327520.22 2002989.5, 322837.34 1997137.8, 322332.3 1997066.0)), ((467374.2 2008164.6, 465849.34 2009444.0, 463345.94 2014099.8, 457293.78 2020662.6, 456554.7 2030177.0, 456231.38 2034317.9, 469769.56 2034206.6, 470197.38 2034374.2, 474878.8 2036209.9, 478054.53 2035447.8, 482600.9 2033326.2, 497737.53 2030716.2, 498493.9 2030483.0, 485507.06 2012352.1, 484722.94 2012166.8, 479244.34 2011261.9, 479140.5 2011225.0, 477104.7 2010158.2, 475236.8 2009027.5, 467774.5 2008186.5, 467374.2 2008164.6)), ((350006.8 2019458.1, 349201.25 2020576.1, 342337.5 2030076.4, 345827.28 2033004.5, 348129.12 2036350.9, 365567.75 2046418.9, 365567.75 2046418.9, 365196.22 2043441.4, 363255.53 2027858.0, 358957.4 2024277.6, 357061.8 2022694.5, 356130.38 2023184.5, 353226.8 2021423.5, 350006.8 2019458.1)))', 27582))
    L'erreur générée par cette requête:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ERROR:  geometry requires more points
    HINT:  "...9.22 1832631.8, 377749.22 1832631.8))" <-- parse error at position 246 within geometry
    Je ne comprends pas pourquoi celà fonctionnait avant et pourquoi il me demande un nouveau point ?

    Merci de votre aide.

    Postgresql 9.1 alpha3
    Postgis 1.5.2
    Red Hat EL 5.5 64 bits

  2. #2
    Rédacteur
    Avatar de SQLpro
    Homme Profil pro
    Expert SGBDR & SQL
    Inscrit en
    mai 2002
    Messages
    14 646
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Expert SGBDR & SQL
    Secteur : Conseil

    Informations forums :
    Inscription : mai 2002
    Messages : 14 646
    Points : 32 532
    Points
    32 532

    Par défaut

    Parce que avant PG maintenait des données non valides dans le SIG. Ce n'est plus le cas avec les version récentes de PostGIS.

    Vous allez comprendre pourquoi il existe une fonction MakeValid dans le standard OGC, que PostGreSL n'a pas encore implémenté (mais SQL Server oui).
    http://barendgehrels.blogspot.com/20...pentagram.html

    Bref, je pense que vous devriez reprendre vos objets géométriques et vérifier leur "légalité" au plans géodésique.

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
    http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
    * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *

  3. #3
    Invité de passage
    Inscrit en
    janvier 2006
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : janvier 2006
    Messages : 5
    Points : 0
    Points
    0

    Par défaut

    Merci pour vos lumières.

    Nous allons investiguer dans notre bdd pour trouver les éléments illégaux.

Discussions similaires

  1. Problème avec une fonction date.
    Par kmayoyota dans le forum ASP
    Réponses: 8
    Dernier message: 09/09/2004, 12h33
  2. Problème avec la fonction findfirst ()
    Par Angelico dans le forum Windows
    Réponses: 3
    Dernier message: 05/08/2004, 20h40
  3. [Requete SQL en VBA] Problème avec la fonction FLOOR
    Par zubral dans le forum Langage SQL
    Réponses: 4
    Dernier message: 13/07/2004, 13h24
  4. Problème avec les fonctions
    Par jvachez dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 13/01/2004, 12h06
  5. [Postgresql]Problème avec les fonctions ...
    Par fet dans le forum Requêtes
    Réponses: 4
    Dernier message: 02/10/2003, 09h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo