palestra mysql spatial(ingles)

Upload: jcunha88

Post on 05-Jul-2018

221 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    1/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 121

     Airton [email protected]

    10-abr-2013

    MySQL Spatial

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    2/56

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    3/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 123

    Alguns clientes MySQL

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    4/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 124

    Alguns clientes MySQL

    fonte: alexa.com/topsites  30-jan-2013

    http://www.alexa.com/topsiteshttp://www.alexa.com/topsites

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    5/56Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 125

    Alguns clientes MySQL

    mysql.com/customers 

    http://mysql.com/customershttp://mysql.com/customers

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    6/56Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 126

    Alguns clientes MySQL

    mysql.com/customers 

    http://mysql.com/customershttp://mysql.com/customers

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    7/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 127

    MySQL: casos de sucesso

    + de 20 

    mysql.com/cu

    http://mysql.com/customershttp://mysql.com/customers

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    8/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 129

    2008

    até 4 CPUMySQL 5.0

    MySQL AB

    até 16 CPUMySQL 5.1

    Sun

    até 32 CPUMySQL 5.5

    Oracle

    Evolução da escalabilidade do MySQL

    2009 2010

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    9/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1210

     MySQL Database Com MySQL Cluster

     MySQL Workbench

     MySQL Connectors

     MySQL Proxy Documentação não GP

     Forums, Lists, Bugs,

    Compromisso Oracle com MySQL ComPortfólio disponível para download e uso sob GPL

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    10/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1211

    Conectores: amplo suporte a várias lin

    Oracle

    • Connector/ODBC• Connector/Net (ADO.NET)• Connector/Python• Connector/J (JDBC)• Connector/C (C API)• Connector/C++ (C++ API)

    Comunid

    • PHP• Perl• Ruby• TCL• Eiffel• … 

    dev.mysql.com/doc/refman/5.5/en/connectors-apis.html 

    http://dev.mysql.com/doc/refman/5.5/en/connectors-apis.htmlhttp://dev.mysql.com/doc/refman/5.5/en/connectors-apis.htmlhttp://dev.mysql.com/doc/refman/5.5/en/connectors-apis.htmlhttp://dev.mysql.com/doc/refman/5.5/en/connectors-apis.html

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    11/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1212

    Oracle PremierLifetime Support

    Oracle ProductCertifications/Integrations

    MySQL EnterpriseHigh Availability

    MySQL EnterpriseSecurity

    MySQL EnterpriseScalability

    MySQL EnBack

    MySQL EnterpriseMonitor/Query Anal

    MySQL

    MySQL Enterprise EditionMaior produtividade e mitigação de riscos

    MySQL EnterpriseAudit

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    12/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1213

    Suporte às maisconhecidasplataformas/linguagensde desenvolvimento

    Parsing completoDML+DDL,ot imizador ,baseado em custo,caching de queriese resultados

    Várias opções deStorage Enginepara necessidadesespecíficas dasaplicações

    Olaf

    Arquitetura MySQL Database

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    13/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1214

    Qual Storage Engine usar?

    MyISAM InnoDB Archive NTransações

    Nível de Lock Tabela Linha Tabela

    Replicação Assíncrona ouSemi-síncrona

     Assíncrona ouSemi-síncrona

     Assíncrona ouSemi-síncrona

    Foreign Keys

    Full-text indexes a partir da v5.6

    Compressão de dados somente Leitura

    Caches somente Índices Dados e Índices

    Suporte GeospacialTipos de Dados e

    Índicessomente Tipos de

    Dadossomente Tipos de

    Dados

    Limite dearmazenamento

    256TB 64TB Ilimitado

    dev.mysql.com/doc/refman/5.5/en/storage-engines.html 

    http://dev.mysql.com/doc/refman/5.5/en/storage-engines.htmlhttp://dev.mysql.com/doc/refman/5.5/en/storage-engines.htmlhttp://dev.mysql.com/doc/refman/5.5/en/storage-engines.htmlhttp://dev.mysql.com/doc/refman/5.5/en/storage-engines.htmlhttp://dev.mysql.com/doc/refman/5.5/en/storage-engines.htmlhttp://dev.mysql.com/doc/refman/5.5/en/storage-engines.html

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    14/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1215

    MySQL Spatial Extensions

    Suporte à geração,

    armazenamento e análise de

    informações geográficas.

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    15/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1216

     Modelo conceitual para dados espaciais / geográficos

     propõe extensões para SGBDs SQL padronizado pelo Open Geospatial Consortium inclui SQL with Geometry Types , estendendo a ling

     MySQL é aderente ao OpenGIS implementa um subconjunto dos SQL with Geometr colunas podem possuir os Tipos Geométricos do Ope também estão disponíveis funções geométricas para

    OpenGISSimple Features Specification for SQL

    www.opengis.org/docs/99-049.pdf  

    http://www.opengis.org/docs/99-049.pdfhttp://www.opengis.org/docs/99-049.pdfhttp://www.opengis.org/docs/99-049.pdfhttp://www.opengis.org/docs/99-049.pdf

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    16/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1217

     geographic feature ou geospatial feature ou geometry

     algo com uma localização no mundo definido e representado por um ponto ou agregado d pode ser uma entity, space, definable location 

     entity uma montanha, um lago, uma cidade etc 

     space um distrito municipal, os trópicos etc

     definable location um cruzamento entre ruas, etc 

    TerminologiaOpenGIS Simple Features Specification for SQL

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    17/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1218

    OpenGIS Geometry ModelTipos de Dados propostos no SQL with Geometry Typ

    *apenas tipos em negrito podem

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    18/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1219

    OpenGIS Geometry ModelExemplos de utilização dos Tipos de Dados instanciáv

    Point Em um mapa mundi, cada Point poderia representar uma Em um mapa municipal, Points representariam paradas de

    Linestring Em um mapa mundi, poderia representar rios.Em um mapa municipal, poderia representar ruas.

    Polygon Em um mapa nacional, poderia representar florestas, estad

    MultiPoint Em um mapa mundi, poderia representar uma cadeia de pque formam um arquipélogo.Em um mapa municipal, poderia representar pontos de par

    linha de ônibus.

    MultiLineString Em um mapa nacional, poderia representar rodovias federconectados.

    MultiPolygon Em um mapa nacional, poderia representar lagos pertencesistema hídrico.

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    19/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1220

    OpenGIS Geometry ModelHierarquia das Propriedades – Geometry e Point

    Geometry

    typeSRIDcoordinatesinteriorboundaryexterior

    MBR //envelopesimpleclosedemptydimension

    Pointx-coordinatey-coordinate

    dimension = 0boundary = EMPT

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    20/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1221

     WKT (Well-Known Text Format)

     projetado para transportar dados em ASCII, fácil leitura, po POINT(15 20)

     LINESTRING(0 0, 10 10, 20 25, 50 60)

     POLYGON((0 0,10 0,10 10,0 10,0 0),(5 5,7 5,7 7,5 7, 5

     WKB (Well-Known Binary Format) OpenGIS e ISO SQL/MM Pa

     BLOBs contendo dados binários de informações geométric POINT(1 1) = 0101000000000000000000F03F0000000000

     1 byte (unsigned) para endianess

     4 bytes (unsigned) para Tipo de Dado de 1 a 7

     8 bytes (double-precision IEEE 754) para coordenadas

    OpenGIS Geometry ModelFormatos de Armazenamento

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    21/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1222

    Criando um BD MySQL SpatialTipos de Dados disponíveis

     GEOMETRY pode armazenar geometrias de qualquer tip POINT

     LINESTRING

     POLYGON

     GEOMETRYCOLLECTION pode armazenar coleções de  MULTIPOINT

     MULTILINESTRING

     MULTIPOLYGON

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    22/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1223

    Criando um BD MySQL SpatialExemplo: criando uma tabela

    CREATE TABLE mapamundi (cidade POINT 

    ) ENGINE=MyISAM;

    mapamundicidade

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    23/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1224

    Criando um BD MySQL SpatialExemplo: alterando uma tabela, adicionar coluna

     ALTER TABLE mapamundi ADD rio LINESTRING;

    mapamundicidade rio

    C i d BD M SQL S i l

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    24/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1225

    Criando um BD MySQL SpatialExemplo: alterando uma tabela, remover colunas

     ALTER TABLE mapamundi DROP rio;

     ALTER TABLE mapamundi ADD geometria GEOMETRY;

     ALTER TABLE mapamundi DROP cidade;

    mapamundigeometria

    C i d BD M SQL S ti l

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    25/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1226

    Criando um BD MySQL Spatial

     Criando objetos com funções WKT GeomFromText() ou funções específicas para cada Tipo, ex: PointFromTe

     Criando objetos com funções WKB GeomFromWKB() ou funções específicas para cada Tipo, ex: PointFromW

     Criando objetos com funções específicas do MySQL Point(), LineString(), Polygon() GeometryCollection(), MultiPoint(), MultiLineString(),

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    26/56

    C i d BD M SQL S ti l

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    27/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1228

    Criando um BD MySQL SpatialExemplo: removendo um Point

    DELETE FROM mapamundi

     WHERE geometria = GeomFromText('POINT(1 1)')

    mapamundigeometria

    C i d BD M SQL S ti l

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    28/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1229

    Criando um BD MySQL SpatialExemplo: inserindo um Point via WKB

    INSERT INTO mapamundi VALUES (

    GeomFromWKB(0x0101000000000000000000F03F00000000000);

    mapamundigeometria

    1 POINT(1 1)

    Criando m BD M SQL Spatial

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    29/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1230

    Criando um BD MySQL SpatialExemplo: inserindo um LineString

    mapamundi

    geometria

    1 POINT(1 1)

    2 LINESTRING(0 0,1 1,2 2)

    SET @g = 'LINESTRING(0 0,1 1,2 2)';INSERT INTO mapamundi VALUES (

    GeomFromText(@g)); SET @g = ‘LINESTRING(0

    INSERT INTO mapamundi VLineStringFromText

    );

    ou também… 

    Criando um BD MySQL Spatial

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    30/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1231

    Criando um BD MySQL SpatialExemplo: inserindo um Polygon

    mapamundi

    geometria1 POINT(1 1)

    2 LINESTRING(0 0,1 1,2 2)

    3 POLYGON((0 0,10 0,10 10,0 10,0 0),(5 5,7 5,7 7,5 7

    SET @g = 'POLYGON((0 0,10 0,10 10,0 10,0 0),(5 5,7 5,7 7,5 7INSERT INTO mapamundi VALUES (GeomFromText(@g));

    Criando um BD MySQL Spatial

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    31/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1232

    Criando um BD MySQL SpatialExemplo: consultando registros

    mapamundi

    geometria1 POINT(1 1)

    2 LINESTRING(0 0,1 1,2 2)

    3 POLYGON((0 0,10 0,10 10,0 10,0 0),(5 5,7 5,7 7,5 7

    SELECT AsText(geometria) FROM mapamundi;

    SELECT AsBinary(geometria) FROM mapamundi;

    Análise de dados com MySQL Spatial

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    32/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1233

    Análise de dados com MySQL SpatialFunções Disponíveis 1/2

     Conversão AsBinary(), AsText(), GeomFromText(), GeomFromW

     Propriedades Dimension(), Envelope(), GeometryType(), IsSimple( X(), Y() EndPoint(), GLenght(), NumPoints(), PointN(), StartP IsClosed() Area(), ExteriorRing(), InteriorRingN(), NumInteriorR Centroid() GeometryN(), NumGeometries() 

    Análise de dados com MySQL Spatial

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    33/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1234

    Análise de dados com MySQL SpatialFunções Disponíveis 2/2

     Relações MBRContains(), MBRDisjoint(), MBREqual(), MBRInMBROverlaps(), MBRTouches(), MBRWithin() Contains(), Crosses(), Disjoint(), Equals(), IntersectsTouches(), Within() ST_Contains(), ST_Crosses(), ST_Disjoint(), ST_Eq

    ST_Intersects(), ST_Overlaps(), ST_Touches, ST_Wit Clonagem

     Buffer() 

    Otimizações nos dados do MySQL Spa

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    34/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1235

    Otimizações nos dados do MySQL SpaÍndices SPATIAL para Range Scans

     Criando Índices Spatial

     ALTER TABLE mapamundi CHANGE geometria geometria GEOMETRY NOCREATE SPATIAL INDEX sp_index ON mapamundi(geometria);

     Usando Índices Spatial em Range Scans

    SET @g = 'POLYGON((0 0,9 0,9 9,0 9,0 0),(5 5,7 5,7 7,5 7, 5 SELECT AsText(geometria) FROM mapamundi WHERE MBRContains(GeomFromText(@g),geometria);

    …apenas deixe o trabalho de selecionar o índice para o

    Use o comando EXPLAIN para confirmar se o índice

    Nível de Conformidade do MySQL Spatial com

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    35/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1236

    Nível de Conformidade do MySQL Spatial comOpenGIS

     Funcionalidades não-padronizadas

     Lenght() implementada com o nome GLenght()

     Funcionalidades adicionais próximos slides

     Funcionalidades não-implementadas próximos slides

    Funcionalidades Adicionais do MySQL Spatia

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    36/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1237

     GeometryCollection(g1,g2,...)

     LineString( pt1,pt2,...) MultiLineString(ls1,ls2,...)

     MultiPoint( pt1,pt2,...)

     MultiPolygon( poly1,poly2,...)

     Point( x,y )

     Polygon(ls1,ls2,...)

    Funcionalidades Adicionais do MySQL Spatiadefinidas pelo OpenGIS

    Funcionalidades definidas pelo OpenGIS e nã

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    37/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1238

    Funcionalidades definidas pelo OpenGIS e nãimplementadas pelo MySQL

     BdPolyFromText() e BdMPolyFromText()

     BdPolyFromWKB() e BdMPolyFromWKB()

     Boundary() Buffer() implementada a partir do MySQL 5.6

     ConvexHull()

     Difference()

     Intersection()

     IsEmpty() e IsRing() 

     IsSimple() implementada a partir do MySQL 5.6  PointOnSurface()

     SymDifference()

     Union

     Metadata Views como GEOMETRY_COLUMNS

    Como começar

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    38/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1239

    Como começar

    Instalação básica, ambiente d

    desenvolvimento… 

    ...em 15 minutos, ou menos!

    http://dev.mysql.com/downloads/mysql/

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    39/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1240

    No Linux ou Mac, prefira os binários

    http://dev.mysql.com/downloads/mysql/http://dev.mysql.com/downloads/mysql/http://dev.mysql.com/downloads/mysql/http://dev.mysql.com/downloads/mysql/

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    40/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1241

    mysql.com/downloads/mysql 

    No Linux ou Mac, prefira os binários

    Cliente-Servidor

    http://www.mysql.com/downloads/mysqlhttp://www.mysql.com/downloads/mysql

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    41/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1242

    Clientmysql / mysql.exe

    Servermysqld / mysqld.exe

    Cliente Servidor  

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    42/56

    Iniciar ou Parar o servidor MySQL no L

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    43/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1244

    Iniciar ou Parar o servidor MySQL no L

    /usr/local/mysql/bin> mysqld_safe --defaults-file=/etc/my.cnf

    /usr/local/mysql/bin> mysqladmin shutdown

    Parar:

    Iniciar:

    dev.mysql.com/doc/refman/5.5/en/mysqld-safe.html 

    http://dev.mysql.com/doc/refman/5.5/en/mysqld-safe.htmlhttp://dev.mysql.com/doc/refman/5.5/en/mysqld-safe.htmlhttp://dev.mysql.com/doc/refman/5.5/en/mysqld-safe.htmlhttp://dev.mysql.com/doc/refman/5.5/en/mysqld-safe.html

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    44/56

    Teste via MySQL Workbench 1/2

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    45/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1246

    Teste via MySQL Workbench 1/2

    Teste via MySQL Workbench 2/2

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    46/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1247

    y Q

    Cliente-Servidor  

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    47/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1248

    App + ConnectorJDBC, ODBC, .Net, PHP, Python, Perl, Ruby, Native C API… 

    Servermysqld / mysqld.exe

    Mãos à obra!

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    48/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1249

    Hello World… 

    ...em Java

    Adicione o driver MySQL ao CLASSPA

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    49/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1250

    caminho completo do .jar

    C:\>set CLASSPATH

    CLASSPATH=.;C:\Program Files (x86)\Java\jre6\lib\ext\QTJava.zip;C:\PrFiles\MySQL\mysql-connector-java-5.1.22\mysql-connector-java-5.1.22

    Confira:

    HelloMysql.java 1/2 

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    50/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1251

    import java.sql.*;

     public class HelloMysql {

     public static void main(String args[]){

    System.out.println("Tentando conectar ao MySQL...");

    try {

    Class.forName("com.mysql.jdbc.Driver");

    String url = "jdbc:mysql://localhost:3306/mysql";

    String usuario = "root";

    String senha = "root";

    Connection con = DriverManager.getConnection(url, usuario

    System.out.println("URL: " + url);

    System.out.println("Connection: " + con); 

    C

    HelloMysql.java 2/2 

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    51/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1252

    Statement stmt = con.createStatement(); //objeto Statem

    ResultSet rs; //objeto ResultSet

    rs = stmt.executeQuery("SELECT * FROM world.country");

    System.out.println("Ola mundo!");

     while(rs.next()){

    String nomePais = rs.getString("Name");

    System.out.print(nomePais + ", ");

    }//end while

    con.close();

    } catch( Exception e ) {e.printStackTrace();

    }//end catch

    }//end main

    }//end class HelloMysql 

     java HelloMysql 

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    52/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1253

    C:\tutorial>javac HelloMysql.java

    C:\tutorial>java HelloMysql

    Tentando conectar ao MySQL...

    URL: jdbc:mysql://localhost:3306/mysql

    Connection: com.mysql.jdbc.JDBC4Connection@ed07f45

    Ola mundo!

    Aruba, Afghanistan, Angola, Anguilla, Albania, Andorra, Netherlands Antilles

    ited Arab Emirates, Argentina, Armenia, American Samoa, Antarctica, French S

    ern territories, Antigua and Barbuda, Australia, Austria, Azerbaijan, Burund

    elgium, Benin, Burkina Faso, Bangladesh, Bulgaria, Bahrain, Bahamas, Bosnia

    Herzegovina, Belarus, Belize, Bermuda, Bolivia, Brazil, Barbados, Brunei, Bh

    … 

    ietnam, Vanuatu, Wallis and Futuna, Samoa, Yemen, Yugoslavia, South Africa,

    ia, Zimbabwe, 

    Próximo passo: documentação

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    53/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1254

    Reference Manual

    1. Tutorial2. SQL Syntax

    3. Connectors & APIs, Memcached

    4. MySQL Spatial Extensions

    5. Functions, Views, Stored Programs6. Optimization

    dev.mysql.com/doc/refman/5.5/en/index.html 

    Sumário

    http://dev.mysql.com/doc/refman/5.5/en/index.htmlhttp://dev.mysql.com/doc/refman/5.5/en/index.html

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    54/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1255

    O MySQL é o banco de dados open source mais popul

    mundo, usado em grandes sites, aplicações mobile, eme sistemas de informações geográficas.

    Possui amplo suporte ao modelo OpenGIS, principalm

    Storage Engine MyISAM.

    Instale e comece a usar em menos de 15min. Use e abdocumentação!

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    55/56

    Copyright © 2012, Oracle and/or its affili ates. All rights reserved. Insert Information Protection Policy Classification from Slide 1256

    @MySQLBR

    meetup.com/MySQL-BR

    facebook.com/MySQLBR

    Obri

  • 8/15/2019 Palestra MySQL Spatial(Ingles)

    56/56