zoukankan      html  css  js  c++  java
  • 数据库连接

      Python初次连接数据库总结

      用JDBC访问Oracle,即java连接本机数据库的时候,地址用localhost和127.0.0.1都可以。但是这两者有什么区别?哪个更好?有很多人认为这两个是完全一样的,也有人认为127.0.0.1更好,因为是本地IP,不需要从域名解析。

    一. 两者区别

    1. localhost也叫local ,正确解释为:本地服务器;

       127.0.0.1在系统的正确解释是:本机地址(本机服务器)。

    2. localhot(local)是不经网卡传输!所以它不受网络防火墙和网卡相关的的限制。访问localhost也不会解析成ip,不会占用网卡、网络资源;

       127.0.0.1是需要通过网卡传输,依赖网卡,并受到网络防火墙和网卡相关的限制。

    3. 这就是为什么有时候用localhost可以访问,但用127.0.0.1就不可以的情况,所以还是尽量用localhost。

    二. 数据库默认端口号

    SQL Server 1433   ; Oracle  1521  ; MySQL  3306  。

    三. Python访问数据库实例

    1. 将数据原始文件“law.sql”导入数据库(windows环境下)

      1) 在设置过环境变量后,进入数据库:

      C:>MySQL -h hostname -u username -p

      按ENTER键,等待然后输入密码。这里hostname为服务器的名称,如localhost,username为MySQL的用户名,如root。

      2) 创建数据库:

      mysql->create database mydb1

      3) 退出MySQL:

      exit; 或quit;

      4) 导入数据:

      C:>MySQL -h hostname -u username -p mydb1 < law.sql

    2. Python访问数据库

     1 #!/usr/bin/env python
     2 #-*- coding:utf-8 -*-
     3 
     4 import pandas as pd 
     5 from sqlalchemy import create_engine  #create_engine建立连接
     6 
     7 engine=create_engine('mysql+pymysql://root:1234567890@localhost:3306/mydb1?charset=utf8')
     8 #engine=create_engine('mysql+pymysql://root:1234567890@127.0.0.1:3306/mydb1?charset=utf8')
     9 
    10 sql=pd.read_sql('all_gzdata',engine,chunksize=10000)  
    11 
    12 '''
    13 用create_engine建立连接,连接地址的意思依次为“数据库格式(mysql)+程序名(pymysql)+账号密码@地址端口/数据库名(mydb1)”,最后指定编码为utf8;
    14 all_gzdata是表名,engine是连接数据的引擎,chunksize指定每次读取1万条记录。这时候sql是一个容器,为真正读取数据。
    15 '''
  • 相关阅读:
    poj 3411 Paid Roads
    uva 111 A History Grading
    hdu 4248 A Famous Stone Collector
    阶乘模版
    uva Coin Change
    POJ图论分类
    求 组合数 dp
    判断点是否在三角形中(三角形的有向积计算)
    扩展欧几里德
    UVA 116 Unidirectional TSP (白书dp)
  • 原文地址:https://www.cnblogs.com/cygalaxy/p/7388932.html
Copyright © 2011-2022 走看看