Hướng dẫn how do i import an excel file into postgresql using python? - làm cách nào để nhập tệp excel vào postgresql bằng python?

Xem thảo luận

Show

Cải thiện bài viết

Lưu bài viết

  • Đọc
  • Bàn luận
  • Xem thảo luận

    Cải thiện bài viết

    Lưu bài viết

    Đọc

    Bàn luận

    '''CREATE TABLE DETAILS(employee_id int NOT NULL,
                            employee_name char(20), 
                            employee_email varchar(30),
                            employee_salary float);'''

    Trong bài viết này, chúng ta sẽ thấy cách nhập các tệp CSV vào PostgreSQL bằng gói Python PsyCopg2.

    Hướng dẫn how do i import an excel file into postgresql using python? - làm cách nào để nhập tệp excel vào postgresql bằng python?

    Đầu tiên, chúng tôi nhập gói psycopg2 và thiết lập kết nối với cơ sở dữ liệu PostgreSQL bằng phương thức pysCopg2.connect (). Trước khi nhập tệp CSV, chúng tôi cần tạo bảng. Trong ví dụ dưới đây, chúng tôi đã tạo một bảng bằng cách thực hiện lệnh Creing Created Bảng SQL bằng cách sử dụng phương thức con trỏ.execute ().

    Chế độ xem bảng trống:

    Mô tả bảng

    Hướng dẫn how do i import an excel file into postgresql using python? - làm cách nào để nhập tệp excel vào postgresql bằng python?

    Sau khi tạo bảng, chúng tôi cần thực thi lệnh sao chép trên mẫu SQL. Trong lệnh sao chép, chúng ta cần chỉ định đường dẫn của tệp CSV. & NBSP;

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''

    Tệp CSV được sử dụng:

    Python3

    Tệp CSV được sử dụng

    Dưới đây là việc thực hiện:

    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    8
    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    9
    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    3
    import psycopg2
    import xlrd
    
    book = xlrd.open_workbook("pytest.xlsx")
    sheet = book.sheet_by_name("Source")
    
    database = psycopg2.connect (database = "RunP", user="postgres", password="", host="localhost", port="5432")
    
    cursor = database.cursor()
    
    query = """INSERT INTO orders (Daily_Date, Days, First, Second, Leader) VALUES (%s, %s, %s, %s, %s)"""
    
    for r in range(1, sheet.nrows):
        Daily_Date = sheet.cell(r,0).value
        Days = sheet.cell(r,1).value
        First = sheet.cell(r,2).value
        Second = sheet.cell(r,3).value
        Leader = sheet.cell(r,4).value
    
        values = (Daily_Date, Days, First, Second, Leader)
    
        cursor.execute(query, values)
    
    cursor.close()
    
    database.commit()
    
    database.close()
    
    print ""
    print ""
    columns = str(sheet.ncols)
    rows = str(sheet.nrows)
    print "I just imported Excel into postgreSQL" 
    
    1
    import psycopg2
    import xlrd
    
    book = xlrd.open_workbook("pytest.xlsx")
    sheet = book.sheet_by_name("Source")
    
    database = psycopg2.connect (database = "RunP", user="postgres", password="", host="localhost", port="5432")
    
    cursor = database.cursor()
    
    query = """INSERT INTO orders (Daily_Date, Days, First, Second, Leader) VALUES (%s, %s, %s, %s, %s)"""
    
    for r in range(1, sheet.nrows):
        Daily_Date = sheet.cell(r,0).value
        Days = sheet.cell(r,1).value
        First = sheet.cell(r,2).value
        Second = sheet.cell(r,3).value
        Leader = sheet.cell(r,4).value
    
        values = (Daily_Date, Days, First, Second, Leader)
    
        cursor.execute(query, values)
    
    cursor.close()
    
    database.commit()
    
    database.close()
    
    print ""
    print ""
    columns = str(sheet.ncols)
    rows = str(sheet.nrows)
    print "I just imported Excel into postgreSQL" 
    
    2
    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    3
    import psycopg2
    import xlrd
    
    book = xlrd.open_workbook("pytest.xlsx")
    sheet = book.sheet_by_name("Source")
    
    database = psycopg2.connect (database = "RunP", user="postgres", password="", host="localhost", port="5432")
    
    cursor = database.cursor()
    
    query = """INSERT INTO orders (Daily_Date, Days, First, Second, Leader) VALUES (%s, %s, %s, %s, %s)"""
    
    for r in range(1, sheet.nrows):
        Daily_Date = sheet.cell(r,0).value
        Days = sheet.cell(r,1).value
        First = sheet.cell(r,2).value
        Second = sheet.cell(r,3).value
        Leader = sheet.cell(r,4).value
    
        values = (Daily_Date, Days, First, Second, Leader)
    
        cursor.execute(query, values)
    
    cursor.close()
    
    database.commit()
    
    database.close()
    
    print ""
    print ""
    columns = str(sheet.ncols)
    rows = str(sheet.nrows)
    print "I just imported Excel into postgreSQL" 
    
    4
    import psycopg2
    import xlrd
    
    book = xlrd.open_workbook("pytest.xlsx")
    sheet = book.sheet_by_name("Source")
    
    database = psycopg2.connect (database = "RunP", user="postgres", password="", host="localhost", port="5432")
    
    cursor = database.cursor()
    
    query = """INSERT INTO orders (Daily_Date, Days, First, Second, Leader) VALUES (%s, %s, %s, %s, %s)"""
    
    for r in range(1, sheet.nrows):
        Daily_Date = sheet.cell(r,0).value
        Days = sheet.cell(r,1).value
        First = sheet.cell(r,2).value
        Second = sheet.cell(r,3).value
        Leader = sheet.cell(r,4).value
    
        values = (Daily_Date, Days, First, Second, Leader)
    
        cursor.execute(query, values)
    
    cursor.close()
    
    database.commit()
    
    database.close()
    
    print ""
    print ""
    columns = str(sheet.ncols)
    rows = str(sheet.nrows)
    print "I just imported Excel into postgreSQL" 
    
    5

    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    0
    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    1

    pip install psycopg2
    3

    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    2
    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    3
    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    4
    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    3
    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    6
    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    7

    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    8
    import psycopg2
    import xlrd
    
    book = xlrd.open_workbook("pytest.xlsx")
    sheet = book.sheet_by_name("Source")
    
    database = psycopg2.connect (database = "RunP", user="postgres", password="", host="localhost", port="5432")
    
    cursor = database.cursor()
    
    query = """INSERT INTO orders (Daily_Date, Days, First, Second, Leader) VALUES (%s, %s, %s, %s, %s)"""
    
    for r in range(1, sheet.nrows):
        Daily_Date = sheet.cell(r,0).value
        Days = sheet.cell(r,1).value
        First = sheet.cell(r,2).value
        Second = sheet.cell(r,3).value
        Leader = sheet.cell(r,4).value
    
        values = (Daily_Date, Days, First, Second, Leader)
    
        cursor.execute(query, values)
    
    cursor.close()
    
    database.commit()
    
    database.close()
    
    print ""
    print ""
    columns = str(sheet.ncols)
    rows = str(sheet.nrows)
    print "I just imported Excel into postgreSQL" 
    
    7
    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    3
    import psycopg2
    import xlrd
    
    book = xlrd.open_workbook("pytest.xlsx")
    sheet = book.sheet_by_name("Source")
    
    database = psycopg2.connect (database = "RunP", user="postgres", password="", host="localhost", port="5432")
    
    cursor = database.cursor()
    
    query = """INSERT INTO orders (Daily_Date, Days, First, Second, Leader) VALUES (%s, %s, %s, %s, %s)"""
    
    for r in range(1, sheet.nrows):
        Daily_Date = sheet.cell(r,0).value
        Days = sheet.cell(r,1).value
        First = sheet.cell(r,2).value
        Second = sheet.cell(r,3).value
        Leader = sheet.cell(r,4).value
    
        values = (Daily_Date, Days, First, Second, Leader)
    
        cursor.execute(query, values)
    
    cursor.close()
    
    database.commit()
    
    database.close()
    
    print ""
    print ""
    columns = str(sheet.ncols)
    rows = str(sheet.nrows)
    print "I just imported Excel into postgreSQL" 
    
    9
    pip install psycopg2
    0
    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    3
    pip install psycopg2
    2

    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    0
    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    3

    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    2

    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    3
    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    3

    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    5

    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    6
    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    3

    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    8

    pip install psycopg2
    4
    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    3
    pip install psycopg2
    6

    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    
    3
    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    
    4
    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    
    5

    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    
    6

    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    
    7

    Output:

    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)

    Tôi chưa quen với Python và tôi đang cố gắng xuất Excel trực tiếp vào PostgreSQL mà không có tệp CSV.

    Tôi không biết nếu điều đó có thể.

    Tôi tiếp tục chạy vào lỗi

    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    
    8.

    import psycopg2
    import xlrd
    
    book = xlrd.open_workbook("pytest.xlsx")
    sheet = book.sheet_by_name("Source")
    
    database = psycopg2.connect (database = "RunP", user="postgres", password="", host="localhost", port="5432")
    
    cursor = database.cursor()
    
    query = """INSERT INTO orders (Daily_Date, Days, First, Second, Leader) VALUES (%s, %s, %s, %s, %s)"""
    
    for r in range(1, sheet.nrows):
        Daily_Date = sheet.cell(r,0).value
        Days = sheet.cell(r,1).value
        First = sheet.cell(r,2).value
        Second = sheet.cell(r,3).value
        Leader = sheet.cell(r,4).value
    
        values = (Daily_Date, Days, First, Second, Leader)
    
        cursor.execute(query, values)
    
    cursor.close()
    
    database.commit()
    
    database.close()
    
    print ""
    print ""
    columns = str(sheet.ncols)
    rows = str(sheet.nrows)
    print "I just imported Excel into postgreSQL" 
    

    Ngày 30 tháng 9 năm 2017

    Hướng dẫn how do i import an excel file into postgresql using python? - làm cách nào để nhập tệp excel vào postgresql bằng python?

    Giới thiệu về Postgres với Python

    Lưu trữ dữ liệu là một trong (nếu không) các phần không thể thiếu nhất của hệ thống dữ liệu. Bạn sẽ tìm thấy hàng trăm hướng dẫn SQL trực tuyến chi tiết cách viết các truy vấn phân tích SQL điên rồ, cách chạy các thuật toán học máy phức tạp trên petabyte dữ liệu đào tạo và cách xây dựng các mô hình thống kê trên hàng ngàn hàng trong cơ sở dữ liệu. Vấn đề duy nhất là: Không ai đề cập đến cách bạn nhận được dữ liệu được lưu trữ ngay từ đầu.the most integral parts of a data system. You will find hundreds of SQL tutorials online detailing how to write insane SQL analysis queries, how to run complex machine learning algorithms on petabytes of training data, and how to build statistical models on thousands of rows in a database. The only problem is: no one mentions how you get the data stored in the first place.

    Cho dù bạn là nhà phân tích dữ liệu, nhà khoa học dữ liệu, kỹ sư dữ liệu hay thậm chí là nhà phát triển web, điều quan trọng là phải biết cách lưu trữ và truy cập dữ liệu của bạn. Trong bài đăng trên blog này, chúng tôi sẽ tập trung vào một loại lưu trữ dữ liệu được gọi là cơ sở dữ liệu quan hệ. Cơ sở dữ liệu quan hệ là bộ lưu trữ phổ biến nhất được sử dụng cho nội dung web, lưu trữ doanh nghiệp lớn và phù hợp nhất cho các nền tảng dữ liệu.relational database. Relational databases are the most common storage used for web content, large business storage, and, most relevant, for data platforms.

    Cụ thể, chúng tôi sẽ tập trung vào Postgres (hoặc PostgreSQL), một trong những cơ sở dữ liệu quan hệ nguồn mở lớn nhất. Chúng tôi thích Postgres do sự ổn định cao, dễ tiếp cận trong các nhà cung cấp đám mây (AWS, Google Cloud, v.v.) và thực tế nó là nguồn mở! Sử dụng thư viện Python,

    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    1, chúng tôi sẽ chạy qua một ví dụ về cách bạn có thể tạo bảng của riêng mình từ đầu và sau đó tải một tập dữ liệu vào máy chủ Postgres đang chạy cục bộ.Postgres (or PostgreSQL), one of the biggest open source relational databases. We like Postgres due to its high stability, ease of accessbility in cloud providers (AWS, Google Cloud, etc), and the fact it is open source! Using the Python library,
    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    1, we will run through an example of how you can create your own table from scratch and then load a data set into a local running Postgres server.

    Trước khi chúng tôi bắt đầu, bạn nên đảm bảo rằng bạn đã cài đặt các công cụ cần thiết. Điều quan trọng nhất là có một phiên bản postgres cục bộ được cài đặt trên máy tính của bạn. Wiki Postgres có một trang cài đặt với các hướng dẫn trên các hệ điều hành phổ biến nhất.

    Tiếp theo, bạn nên đảm bảo rằng bạn đã cài đặt thư viện

    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    1. Nếu không, bạn có thể chạy:

    pip install psycopg2

    Trong các ví dụ mã của chúng tôi, chúng tôi sẽ sử dụng Python phiên bản 3.6 trên hệ điều hành Mac hoặc Linux. Nếu bạn đang chạy phiên bản 2.7 hoặc trên máy Windows, các lệnh vẫn tương tự nhau. Với tất cả mọi thứ được thiết lập, hãy để Lướt đi kết nối với máy chủ Postgres cục bộ của bạn!

    Postgres và mô hình máy chủ khách hàng

    Nếu bạn đã từng sử dụng một công cụ SQL trong quá khứ, rất có thể bạn đã được giới thiệu cho SQLite, vì đây là một trong những động cơ cơ sở dữ liệu phổ biến nhất. Tất cả dữ liệu của bạn được lưu vào một tệp duy nhất, làm cho nó di động và dễ phát triển. Hơn nữa, SQLite chứa hầu hết các lệnh SQL được sử dụng với các động cơ lớn hơn, vì vậy nếu bạn biết sqlite thì bạn biết những điều cơ bản của mọi cơ sở dữ liệu SQL khác

    Tuy nhiên, có những nhược điểm khi sử dụng SQLite trong hệ thống sản xuất dữ liệu. Do trường hợp sử dụng đơn giản của nó, SQLite không được xây dựng cho nhiều kết nối. SQLite chỉ cho phép một quy trình ghi vào cơ sở dữ liệu, gây khó khăn cho việc chia sẻ với nhiều người và dịch vụ.

    Mặt khác, Postgres là một công cụ mạnh mẽ hơn nhiều, được triển khai như một máy chủ chứ không phải là một tệp. Là một máy chủ, Postgres chấp nhận các kết nối từ các máy khách có thể yêu cầu

    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    one = cur.fetchone()
    all = cur.fetchall()
    1,
    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    one = cur.fetchone()
    all = cur.fetchall()
    2 hoặc bất kỳ loại truy vấn SQL nào khác. Loại thiết kế này được gọi là mô hình máy khách-máy chủ, nơi khách hàng có thể tương tác với máy chủ.server rather than a single file. As a server, Postgres accepts connections from clients who can request a
    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    one = cur.fetchone()
    all = cur.fetchall()
    1,
    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    one = cur.fetchone()
    all = cur.fetchall()
    2, or any other type of SQL query. This type of a design is called a client-server model, where clients can interact with the server.

    Mô hình này đã không xảy ra một cách tình cờ, nó thực sự là một mô hình rất phổ biến mà bạn đang sử dụng ngay bây giờ để kết nối với DQ-staging.t79ae38x-liquidwebsites.com/blog. Máy tính, máy tính xách tay của bạn hoặc bất kỳ thiết bị nào bạn đang sử dụng để đọc bài đăng này là

    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    one = cur.fetchone()
    all = cur.fetchall()
    3 đang yêu cầu thông tin từ DQ-staging.t79ae38x-liquidwebsites.com
    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    one = cur.fetchone()
    all = cur.fetchall()
    4. Bất cứ khi nào bạn đang truy cập một trang web, trình duyệt của bạn (máy khách) sẽ liên tục yêu cầu dữ liệu trang web từ máy chủ.

    Tuy nhiên, trong trường hợp Postgres, thay vì yêu cầu dữ liệu trang web, máy khách kết nối với dịch vụ Postgres sẽ sử dụng cơ sở dữ liệu = các yêu cầu cụ thể. Các loại yêu cầu này được thực hiện theo một giao thức được xác định, đây là một bộ quy tắc mà cả máy khách và máy chủ đều đồng ý. Bạn có thể nghĩ về một giao thức là ngôn ngữ mà cả máy khách và máy chủ sẽ sử dụng khi máy khách yêu cầu và máy chủ phản hồi với dữ liệu.protocol, which is a set of rules that both the client and server have agreed to. You can think of a protocol as the language that both the client and server will use when the client requests and the server responds with data.

    Sử dụng mô hình này, Postgres có thể xử lý nhiều kết nối với cơ sở dữ liệu, giải quyết thách thức kết nối nhiều người dùng với một cơ sở dữ liệu. Ngoài ra, với tư cách là một máy chủ, Postgres có thể triển khai các tính năng truy vấn nâng cao hơn với các biện pháp bảo mật. Tất cả những lý do này làm cho Postgres trở thành một lựa chọn tuyệt vời để phân tích dữ liệu.

    Kết nối với Postgres

    Nếu chúng tôi muốn liên lạc với máy chủ Postgres, chúng tôi cần sử dụng một loại máy khách nói về giao thức cơ sở dữ liệu được mô tả trước đó. Chúng tôi sẽ sử dụng PSYCOPG2, một thư viện nguồn mở thực hiện giao thức Postgres. Bạn có thể nghĩ về psycopg2 tương tự như kết nối với cơ sở dữ liệu SQLite bằng SQLite3.

    Sử dụng ví dụ sau để kết nối với cơ sở dữ liệu Postgres bằng PsyCopg2

    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")

    Hãy để mô tả ba tham số này mà chúng tôi đã chuyển sang phương pháp

    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    one = cur.fetchone()
    all = cur.fetchall()
    5. Đầu tiên, cần phải chỉ định tên máy chủ
    import psycopg2
    import xlrd
    
    book = xlrd.open_workbook("pytest.xlsx")
    sheet = book.sheet_by_name("Source")
    
    database = psycopg2.connect (database = "RunP", user="postgres", password="", host="localhost", port="5432")
    
    cursor = database.cursor()
    
    query = """INSERT INTO orders (Daily_Date, Days, First, Second, Leader) VALUES (%s, %s, %s, %s, %s)"""
    
    for r in range(1, sheet.nrows):
        Daily_Date = sheet.cell(r,0).value
        Days = sheet.cell(r,1).value
        First = sheet.cell(r,2).value
        Second = sheet.cell(r,3).value
        Leader = sheet.cell(r,4).value
    
        values = (Daily_Date, Days, First, Second, Leader)
    
        cursor.execute(query, values)
    
    cursor.close()
    
    database.commit()
    
    database.close()
    
    print ""
    print ""
    columns = str(sheet.ncols)
    rows = str(sheet.nrows)
    print "I just imported Excel into postgreSQL" 
    
    7 mô tả nơi máy chủ Postgres của bạn đang chạy. Bởi vì chúng tôi đang chạy một phiên bản Postgres cục bộ, chúng tôi sử dụng tên máy chủ mặc định
    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    one = cur.fetchone()
    all = cur.fetchall()
    7.

    Sau đó, chúng ta cần truyền trong tên cơ sở dữ liệu

    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    one = cur.fetchone()
    all = cur.fetchall()
    8 và người dùng
    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    9. Do nhiều kết nối, Postgres sử dụng nhiều người dùng và cơ sở dữ liệu như một cách để cải thiện bảo mật và phân chia dữ liệu. Chúng tôi sử dụng
    
    CREATE TABLE tableName(
        column1 dataType1 PRIMARY KEY,
        column2 dataType2,
        column3 dataType3,
        ...
    );
    0 cho cả hai giá trị vì đây là các giá trị mặc định mà Postgres được cài đặt.

    Nếu không có các giá trị này trong

    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    1, Postgres sẽ không biết nơi bạn muốn kết nối và sẽ thất bại. Hãy nhớ rằng, bất cứ lúc nào bạn muốn kết nối với máy chủ Postgres, cho dù trên web hoặc cục bộ, bạn sẽ phải vượt qua các tham số kết nối phù hợp. Bây giờ chúng tôi được kết nối, đã đến lúc tận dụng các tính năng của Postgres!

    Tương tác với cơ sở dữ liệu

    Trong ví dụ trước, chúng tôi đã mở kết nối với Postgres bằng cách sử dụng phương thức

    
    CREATE TABLE tableName(
        column1 dataType1 PRIMARY KEY,
        column2 dataType2,
        column3 dataType3,
        ...
    );
    2 của mô -đun
    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    1. Phương thức
    
    CREATE TABLE tableName(
        column1 dataType1 PRIMARY KEY,
        column2 dataType2,
        column3 dataType3,
        ...
    );
    2 có một chuỗi các tham số mà thư viện sử dụng để kết nối với máy chủ Postgres. Giá trị trả về của phương thức
    
    CREATE TABLE tableName(
        column1 dataType1 PRIMARY KEY,
        column2 dataType2,
        column3 dataType3,
        ...
    );
    2 là một đối tượng kết nối.

    Đối tượng kết nối tạo một phiên khách với máy chủ cơ sở dữ liệu khởi tạo một máy khách liên tục nói chuyện. Để phát hành các lệnh chống lại cơ sở dữ liệu, bạn cũng sẽ cần tạo một đối tượng khác được gọi là đối tượng con trỏ.

    
    CREATE TABLE tableName(
        column1 dataType1 PRIMARY KEY,
        column2 dataType2,
        column3 dataType3,
        ...
    );
    6 được tạo bởi đối tượng
    
    CREATE TABLE tableName(
        column1 dataType1 PRIMARY KEY,
        column2 dataType2,
        column3 dataType3,
        ...
    );
    7 và sử dụng đối tượng
    
    CREATE TABLE tableName(
        column1 dataType1 PRIMARY KEY,
        column2 dataType2,
        column3 dataType3,
        ...
    );
    6, chúng tôi sẽ có thể thực thi các lệnh của mình.session with the database server that instantiates a persistant client to speak with. To issue commands against the database, you will also need to create another object called the Cursor object.
    
    CREATE TABLE tableName(
        column1 dataType1 PRIMARY KEY,
        column2 dataType2,
        column3 dataType3,
        ...
    );
    6 is created by the
    
    CREATE TABLE tableName(
        column1 dataType1 PRIMARY KEY,
        column2 dataType2,
        column3 dataType3,
        ...
    );
    7 object and using the
    
    CREATE TABLE tableName(
        column1 dataType1 PRIMARY KEY,
        column2 dataType2,
        column3 dataType3,
        ...
    );
    6 object we will be able to execute our commands.

    Để thực thi các lệnh trên cơ sở dữ liệu Postgres, bạn gọi phương thức

    
    CREATE TABLE tableName(
        column1 dataType1 PRIMARY KEY,
        column2 dataType2,
        column3 dataType3,
        ...
    );
    9 trên đối tượng
    
    CREATE TABLE tableName(
        column1 dataType1 PRIMARY KEY,
        column2 dataType2,
        column3 dataType3,
        ...
    );
    6 bằng lệnh SQL được chuỗi. Dưới đây, một ví dụ về cách bạn có thể chạy nó trên bảng
    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute("""
        CREATE TABLE users(
        id integer PRIMARY KEY,
        email text,
        name text,
        address text
    )
    """)
    1 giả:

    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    

    Trong ví dụ này, đối tượng

    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute("""
        CREATE TABLE users(
        id integer PRIMARY KEY,
        email text,
        name text,
        address text
    )
    """)
    2 gọi phương thức
    
    CREATE TABLE tableName(
        column1 dataType1 PRIMARY KEY,
        column2 dataType2,
        column3 dataType3,
        ...
    );
    9 và, nếu nó thành công, sẽ trả về
    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute("""
        CREATE TABLE users(
        id integer PRIMARY KEY,
        email text,
        name text,
        address text
    )
    """)
    4. Để có được giá trị được trả về (hoặc giá trị) từ truy vấn của bạn, bạn cần gọi một trong hai phương thức:
    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute("""
        CREATE TABLE users(
        id integer PRIMARY KEY,
        email text,
        name text,
        address text
    )
    """)
    5 hoặc
    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute("""
        CREATE TABLE users(
        id integer PRIMARY KEY,
        email text,
        name text,
        address text
    )
    """)
    6. Phương thức
    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute("""
        CREATE TABLE users(
        id integer PRIMARY KEY,
        email text,
        name text,
        address text
    )
    """)
    5 trả về kết quả hàng đầu tiên hoặc
    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute("""
        CREATE TABLE users(
        id integer PRIMARY KEY,
        email text,
        name text,
        address text
    )
    """)
    4 và phương thức
    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute("""
        CREATE TABLE users(
        id integer PRIMARY KEY,
        email text,
        name text,
        address text
    )
    """)
    6 trả về danh sách của mỗi hàng trong bảng hoặc danh sách trống
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    00 nếu không có hàng.

    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    one = cur.fetchone()
    all = cur.fetchall()

    Thật không may, với cơ sở dữ liệu hiện tại của chúng tôi, thật không may, chúng tôi không có bảng nào được tạo. Không có bất kỳ bảng, không có gì thú vị để truy vấn trên. Để khắc phục điều đó, hãy để Lừa đi trước và tạo bảng đầu tiên của chúng tôi!

    Tạo một bảng

    Bây giờ chúng tôi có một sự hiểu biết cơ bản về cách kết nối và thực hiện các truy vấn với cơ sở dữ liệu, đó là thời gian để tạo bảng Postgres đầu tiên của bạn. Từ tài liệu Postgres, ở đây, cách thức bạn có thể tạo một bảng trong Postgres:

    
    CREATE TABLE tableName(
        column1 dataType1 PRIMARY KEY,
        column2 dataType2,
        column3 dataType3,
        ...
    );

    Mỗi

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    01 là một trình giữ chỗ cho tên cột,
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    02 là loại dữ liệu bạn muốn lưu trữ cho cột đó và
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    03 là một ví dụ về một tham số tùy chọn để thêm vào bảng. Trong Postgres, mỗi bảng yêu cầu ít nhất một cột
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    03 chứa một tập hợp các giá trị duy nhất. Bây giờ chúng ta hãy xem tệp CSV mà chúng ta muốn tải vào cơ sở dữ liệu (lưu ý rằng CSV không chứa người dùng thực nhưng được tạo ngẫu nhiên người dùng sử dụng thư viện Python có tên là Faker).

    Tôie-mailTênđịa chỉ
    0 [Email & NBSP; được bảo vệ]Anna Jackson22871 Hannah Camp Armstrongton, NE 30037
    1 [Email & NBSP; được bảo vệ]Anna Jackson22871 Hannah Camp Armstrongton, NE 30037
    2 Natalie Holloway7357 Barbara Bài học Mooremouth, HI 03826[Email & NBSP; được bảo vệ]

    Aaron Hull

    362 Cox Bypass Suite 052 New Darrenmouth, IA 67749-2829

    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute("""
        CREATE TABLE users(
        id integer PRIMARY KEY,
        email text,
        name text,
        address text
    )
    """)

    Bạn có thể tải xuống tệp CSV này từ các máy chủ DataQuest, tại đây. Trong tệp CSV bạn vừa tải xuống, '''COPY table_name FROM 'C:\folder\file.csv' DELIMITER ',' CSV HEADER;'''05, có vẻ như chúng ta về cơ bản chúng ta có hai loại dữ liệu khác nhau mà chúng ta cần tính đến. Đầu tiên là loại số nguyên cho mỗi ID và phần còn lại sẽ là loại chuỗi. Postgres, giống như các cơ sở dữ liệu quan hệ khác, là loại nhạy cảm - có nghĩa là bạn phải khai báo các loại cho mỗi cột của bảng bạn tạo. Bạn có thể tìm thấy một danh sách tất cả các loại trong tài liệu Postgres.

    Để tạo một bảng phù hợp với bộ dữ liệu của chúng tôi, chúng tôi sẽ phải chạy lệnh

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    06 với các cột theo cùng thứ tự với tệp CSV và các loại tương ứng của chúng. Tương tự như chạy truy vấn
    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    one = cur.fetchone()
    all = cur.fetchall()
    1, chúng tôi sẽ viết lệnh dưới dạng chuỗi và chuyển nó sang phương thức
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    08. Đây là cách mà nó sẽ tìm kiếm bảng này:SQL transactions. In contrast with SQLite, every query made in that engine is executed and immediately reflected as a change on the database.

    Giao dịch SQL

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    0

    Nếu bạn đã kiểm tra cơ sở dữ liệu

    
    CREATE TABLE tableName(
        column1 dataType1 PRIMARY KEY,
        column2 dataType2,
        column3 dataType3,
        ...
    );
    0, bạn sẽ nhận thấy rằng thực sự không có bảng
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    10 bên trong nó. Đây là một lỗi - nó vì một khái niệm gọi là giao dịch SQL. Ngược lại với SQLite, mọi truy vấn được thực hiện trong động cơ đó được thực thi và ngay lập tức được phản ánh như một sự thay đổi trên cơ sở dữ liệu.

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    1

    Với Postgres, chúng tôi đã xử lý nhiều người dùng có thể thay đổi cơ sở dữ liệu cùng một lúc. Hãy để tưởng tượng một kịch bản đơn giản trong đó chúng tôi theo dõi các tài khoản cho các khách hàng khác nhau của ngân hàng. Chúng tôi có thể viết một truy vấn đơn giản để tạo bảng cho điều này:

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    2

    Bảng của chúng tôi có hai hàng sau trong bảng:

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    1

    Hãy để nói

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    11 cho
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    12 đô la cho
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    13. Chúng tôi có thể mô hình hóa điều này với hai truy vấn:

    Trong ví dụ trên, chúng tôi loại bỏ

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    12 đô la từ
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    11 và thêm
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    12 đô la vào
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    13. Điều gì sẽ xảy ra nếu câu lệnh
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    18 thứ hai có lỗi trong đó, cơ sở dữ liệu không thành công hoặc người dùng khác có truy vấn mâu thuẫn? Truy vấn đầu tiên sẽ chạy đúng, nhưng lần thứ hai sẽ thất bại. Điều đó sẽ dẫn đến những điều sau đây:

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    13 sẽ được ghi có
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    12 đô la, nhưng
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    12 đô la sẽ không bị xóa khỏi
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    11. Điều này sẽ khiến ngân hàng mất tiền.

    Các giao dịch ngăn chặn loại hành vi này bằng cách đảm bảo rằng tất cả các truy vấn trong một khối giao dịch được thực hiện cùng một lúc. Nếu bất kỳ giao dịch nào thất bại, toàn bộ nhóm đều thất bại và không có thay đổi nào được thực hiện đối với cơ sở dữ liệu.

    Bất cứ khi nào chúng tôi mở kết nối trong PSYCOPG2, một giao dịch mới sẽ tự động được tạo. Tất cả các truy vấn chạy lên cho đến khi phương thức cam kết được gọi sẽ được đặt vào cùng một khối giao dịch. Khi cam kết được gọi, động cơ PostgreSQL sẽ chạy tất cả các truy vấn cùng một lúc.

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    4

    Nếu chúng tôi không muốn áp dụng các thay đổi trong khối giao dịch, chúng tôi có thể gọi phương thức rollback để xóa giao dịch. Không gọi cam kết hoặc rollback sẽ khiến giao dịch ở trong trạng thái chờ xử lý và sẽ dẫn đến những thay đổi không được áp dụng cho cơ sở dữ liệu.

    Để thực hiện các thay đổi của chúng tôi và tạo bảng

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    10 từ trước, tất cả những gì chúng tôi cần làm là chạy phương thức
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    24 khi kết thúc giao dịch của chúng tôi. Đây là những gì nó sẽ trông như bây giờ:

    Chèn dữ liệu

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    5

    Với bảng của chúng tôi được tạo và cam kết, đó là thời gian để tải tệp CSV vào cơ sở dữ liệu!

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    6

    Một cách phổ biến để tải dữ liệu vào bảng Postgres là ban hành lệnh

    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    one = cur.fetchone()
    all = cur.fetchall()
    2 trên bảng. Lệnh chèn yêu cầu một tên bảng để chèn vào và chuỗi các giá trị cần chèn. Ở đây, một ví dụ về một truy vấn chèn trên bảng
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    10:

    May mắn thay,

    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    1 cung cấp một cách khác để thực hiện nội suy chuỗi mà không cần
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    32. Đây là cách được khuyến nghị để gọi
    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    one = cur.fetchone()
    all = cur.fetchall()
    2 bằng cách sử dụng
    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    1:

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    7

    Loại chèn này tự động chuyển đổi từng loại thành kiểu dữ liệu thích hợp được mong đợi bởi bảng. Một lợi ích khác là các truy vấn chèn của bạn thực sự được tăng tốc vì câu lệnh

    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    one = cur.fetchone()
    all = cur.fetchall()
    2 được chuẩn bị trong cơ sở dữ liệu. Trong khóa học Postgres của chúng tôi, chúng tôi đề cập đến việc tối ưu hóa này nếu bạn quan tâm, nhưng bây giờ hãy để Lôi chỉ làm việc để chèn tệp CSV.prepared in the database. In our Postgres course, we cover this optimization if you are interested, but for now let’s just work on inserting the CSV file.

    Chúng tôi bắt đầu bằng cách tải tệp CSV trong Python bằng mô -đun

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    39. Sau đó, chúng tôi sẽ chạy truy vấn
    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    one = cur.fetchone()
    all = cur.fetchall()
    2 cho mỗi hàng và sau đó thực hiện việc chuyển đổi:

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    8

    Mặc dù điều này hoàn thành nhiệm vụ tải trong dữ liệu của chúng tôi, nhưng nó thực sự không phải là cách thực hiện hiệu quả nhất. Như bạn có thể thấy, chúng tôi đã phải lặp qua từng hàng từ tệp chỉ để chèn chúng vào cơ sở dữ liệu! May mắn cho chúng tôi, Postgres có một lệnh cụ thể để tải các tệp vào bảng.

    Sao chép dữ liệu

    Lệnh Postgres để tải các tệp trực tiếp vào các bảng được gọi là

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    41. Nó có trong một tệp (như CSV) và tự động tải tệp vào bảng Postgres. Thay vì tạo truy vấn và sau đó chạy nó qua
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    08 như
    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    one = cur.fetchone()
    all = cur.fetchall()
    2,
    (1, 'rajesh              ', '', 60000.0)
    (2, 'pratyusha           ', '', 75000.0)
    (3, 'pratibha            ', '', 65000.0)
    1, có một phương thức chỉ được viết cho truy vấn này.

    Phương thức tải một tệp vào bảng được gọi là

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    45. Giống như phương thức
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    08, nó được gắn vào đối tượng
    
    CREATE TABLE tableName(
        column1 dataType1 PRIMARY KEY,
        column2 dataType2,
        column3 dataType3,
        ...
    );
    6. Tuy nhiên, nó khác nhau khá nhiều so với phương pháp
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    08 do các tham số của nó.

    Các đối số

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    45 yêu cầu một tệp để tải (không có tiêu đề), tên table mà nó sẽ tải vào, cũng như dấu phân cách (đối số chính
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    50). Sau đó, chạy
    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    24, tệp được chuyển vào Ths là cách hiệu quả nhất và được khuyến nghị để tải các tệp CSV vào bảng Postgres.

    Đây là cách chúng tôi sử dụng

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    52 để tải tệp của chúng tôi thay vì lặp lại các lệnh
    
    import psycopg2
    conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
    cur = conn.cursor()
    cur.execute('SELECT * FROM notes')
    one = cur.fetchone()
    all = cur.fetchall()
    2:

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    9

    Nó đơn giản mà! Cuối cùng, chúng tôi đã tải thành công tệp

    '''COPY table_name
    FROM 'C:\folder\file.csv' 
    DELIMITER ',' 
    CSV HEADER;'''
    05 vào bảng của chúng tôi bằng cách sử dụng cách thức postgres tối ưu. Hãy để một giây để nhìn lại những gì chúng tôi đã học được cho đến nay.

    Bản tóm tắt

    • Postgres sử dụng mô hình máy chủ máy khách để cho phép nhiều kết nối vào cơ sở dữ liệu.
    • Sử dụng thư viện
      (1, 'rajesh              ', '', 60000.0)
      (2, 'pratyusha           ', '', 75000.0)
      (3, 'pratibha            ', '', 65000.0)
      1 phổ biến, chúng ta có thể sử dụng Python để kết nối với Postgres.
    • Postgres là loại nhạy cảm vì vậy chúng tôi phải khai báo các loại trên mỗi cột của chúng tôi.
    • Postgres sử dụng các giao dịch SQL để lưu trạng thái của cơ sở dữ liệu.
    • Khi chèn dữ liệu, sử dụng nội suy chuỗi
      (1, 'rajesh              ', '', 60000.0)
      (2, 'pratyusha           ', '', 75000.0)
      (3, 'pratibha            ', '', 65000.0)
      1 thay vì
      '''COPY table_name
      FROM 'C:\folder\file.csv' 
      DELIMITER ',' 
      CSV HEADER;'''
      57.
    • Cách hiệu quả nhất để tải các tệp vào các bảng Postgres là sử dụng phương thức
      '''COPY table_name
      FROM 'C:\folder\file.csv' 
      DELIMITER ',' 
      CSV HEADER;'''
      41 hoặc phương thức
      '''COPY table_name
      FROM 'C:\folder\file.csv' 
      DELIMITER ',' 
      CSV HEADER;'''
      59.

    Bước tiếp theo

    Nếu bạn muốn tìm hiểu thêm, hướng dẫn này dựa trên phần giới thiệu DataQuest của chúng tôi về khóa học Postgres, đây là một phần trong con đường học tập kỹ thuật dữ liệu của chúng tôi. Khóa học mở rộng trên mô hình từ bài đăng này và cung cấp việc học thực hành khi bạn làm theo mã viết.

    Nếu bạn muốn tiếp tục làm việc với bảng này, đây là một vài điều bạn có thể làm:

    • Xóa dữ liệu và sau đó tải lại nó bằng lệnh
      '''COPY table_name
      FROM 'C:\folder\file.csv' 
      DELIMITER ',' 
      CSV HEADER;'''
      60.
    • Sử dụng các loại hiệu quả hơn cho dữ liệu mà bạn đang tải. Ví dụ, Postgres có nhiều loại hơn chỉ là
      '''COPY table_name
      FROM 'C:\folder\file.csv' 
      DELIMITER ',' 
      CSV HEADER;'''
      61 cho dữ liệu chuỗi. Chúng tôi bao gồm các loại Postgres, trong một bài học khóa học, nếu bạn quan tâm.
    • Cố gắng xuất bảng vào một tệp khác bằng phương thức
      '''COPY table_name
      FROM 'C:\folder\file.csv' 
      DELIMITER ',' 
      CSV HEADER;'''
      62 hoặc
      '''COPY table_name
      FROM 'C:\folder\file.csv' 
      DELIMITER ',' 
      CSV HEADER;'''
      63. Trong khóa học, chúng tôi đề cập đến các tùy chọn này và bổ sung
      
      import psycopg2
      conn = psycopg2.connect("host=localhost dbname=postgres user=postgres")
      cur = conn.cursor()
      cur.execute('SELECT * FROM notes')
      one = cur.fetchone()
      all = cur.fetchall()
      2 và
      '''COPY table_name
      FROM 'C:\folder\file.csv' 
      DELIMITER ',' 
      CSV HEADER;'''
      41 để tải dữ liệu của bạn.

    Trở thành một kỹ sư dữ liệu!

    Tìm hiểu các kỹ năng bạn cần để làm việc như một kỹ sư dữ liệu ngày hôm nay. Đăng ký tài khoản miễn phí và có quyền truy cập vào nội dung khóa học Kỹ thuật dữ liệu Python tương tác của chúng tôi.

    Hướng dẫn how do i import an excel file into postgresql using python? - làm cách nào để nhập tệp excel vào postgresql bằng python?

    Làm thế nào để bạn nhập dữ liệu từ excel vào postgres?

    Các phương pháp để kết nối Excel với PostgreSQL..
    Bước 1: Cài đặt trình điều khiển ODBC cho PostgreSQL ..
    Bước 2: Định cấu hình trình điều khiển ODBC của Postgres trong Excel ..
    Bước 3: Kết nối ủy quyền với PostgreSQL ..
    Bước 4: Tải dữ liệu trong Microsoft Excel ..

    Làm cách nào để nhập tệp CSV vào PostgreSQL bằng Python?

    Đầu tiên, chúng tôi nhập gói psycopg2 và thiết lập kết nối với cơ sở dữ liệu PostgreSQL bằng phương thức pysCopg2.connect (). Trước khi nhập tệp CSV, chúng tôi cần tạo bảng. Trong ví dụ dưới đây, chúng tôi đã tạo một bảng bằng cách thực hiện lệnh Creing Created Bảng SQL bằng cách sử dụng con trỏ.import the psycopg2 package and establish a connection to a PostgreSQL database using the pyscopg2. connect() method. before importing a CSV file we need to create a table. In the example below, we created a table by executing the “create table” SQL command using the cursor.

    Làm cách nào để nhập tập dữ liệu từ Excel sang Python?

    Các bước để nhập một tệp Excel vào Python bằng Pandas..
    Bước 1: Chụp đường dẫn tệp.Đầu tiên, bạn sẽ cần ghi lại đường dẫn đầy đủ nơi lưu trữ tệp Excel trên máy tính của bạn.....
    Bước 2: Áp dụng mã Python.Và đây là mã Python phù hợp với ví dụ của chúng tôi.....
    Bước 3: Chạy mã Python để nhập tệp Excel ..

    Làm cách nào để nhập các tệp XLSX vào pgadmin 4?

    Di chuyển công tắc nhập/xuất sang vị trí nhập để chỉ định rằng máy chủ nên nhập dữ liệu vào bảng từ tệp.Mặc định là nhập khẩu.Nhập tên của tệp nguồn hoặc tệp đích vào trường tệp.Tùy chọn, chọn biểu tượng trình duyệt (Ellipsis) ở bên phải để điều hướng vào một thư mục và chọn một tệp.. The default is Import. Enter the name of the source or target file in the Filename field. Optionally, select the Browser icon (ellipsis) to the right to navigate into a directory and select a file.