Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách lấy dữ liệu từ cơ sở dữ liệu oracle trong python. Ngoài ra, chúng tôi sẽ bao gồm các chủ đề này
- Điều kiện tiên quyết - Chi tiết cơ sở dữ liệu
- Cách lấy dữ liệu từ cơ sở dữ liệu Oracle bằng Python
- Cách đọc dữ liệu từ cơ sở dữ liệu Oracle bằng Python
- Cách lấy dữ liệu từ cơ sở dữ liệu Oracle bằng Python
- Cách lấy dữ liệu lớn từ cơ sở dữ liệu Oracle bằng Python
- Cách lấy dữ liệu từ cơ sở dữ liệu Oracle bằng Python mà không cần cx_oracle
- Cách trích xuất dữ liệu từ cơ sở dữ liệu Oracle bằng Python
- Cách lấy dữ liệu từ cơ sở dữ liệu Oracle bằng Python
Mục lục
- Điều kiện tiên quyết - Chi tiết cơ sở dữ liệu
- Cách lấy dữ liệu từ cơ sở dữ liệu Oracle bằng Python
- Cách đọc dữ liệu từ cơ sở dữ liệu Oracle bằng Python
- Cách lấy dữ liệu từ cơ sở dữ liệu Oracle bằng Python
- Cách lấy dữ liệu lớn từ cơ sở dữ liệu Oracle bằng Python
- Cách lấy dữ liệu từ cơ sở dữ liệu Oracle bằng Python mà không cần cx_oracle
- Cách trích xuất dữ liệu từ cơ sở dữ liệu Oracle bằng Python
- Cách lấy dữ liệu từ cơ sở dữ liệu Oracle bằng Python
Điều kiện tiên quyết - Chi tiết cơ sở dữ liệu
Trong hướng dẫn này, chúng ta sẽ sử dụng bảng gift_store có 6 cột với các kiểu dữ liệu khác nhau
- Python cung cấp một mô-đun cx_Oracle để chúng ta có thể kết nối cơ sở dữ liệu Oracle với python
- Sử dụng mã bên dưới để tạo bảng gift_store trong cơ sở dữ liệu Oracle, chèn một vài bản ghi vào đó để bạn có thể tìm nạp dữ liệu từ cơ sở dữ liệu Oracle bằng python
- Trong các phần tiếp theo, chúng ta sẽ viết code bằng python trên vscode editor
create table gift_store[
product_id INTEGER NOT NULL,
product_name VARCHAR[20],
product_qty INTEGER,
cost_price FLOAT,
sell_price FLOAT,
shop_status VARCHAR[20]
];
Đây là dữ liệu mà chúng tôi đã chèn vào bảng gift_store
[1, 'toy gun', 1, 18.0, 20.0, 'open']
[2, 'doll', 1, 10.0, 12.0, 'open']
[3, 'drum', 3, 30.0, 40.0, 'open']
[4, 'guitar', 1, 150.0, 155.0, 'open']
[5, 'skipping rope', 5, 90.0, 100.0, 'open']
[6, 'toy crossbow', 1, 150.0, 170.0, 'open']
[7, 'chess board', 1, 7.0, 10.0, 'open']
[8, 'no sale', 0, 0.0, 0.0, 'closed']
Cũng kiểm tra. Cài đặt Oracle 19c trên Windows 10
Cách lấy dữ liệu từ cơ sở dữ liệu Oracle bằng Python
Trong phần này, chúng ta sẽ tìm hiểu cách lấy dữ liệu từ cơ sở dữ liệu oracle trong python
- Chủ yếu có ba bước liên quan để lấy dữ liệu từ cơ sở dữ liệu oracle trong python
- nhập mô-đun oracle
- thiết lập kết nối bằng cách cung cấp thông tin cần thiết
- thực hiện truy vấn để lấy dữ liệu
- Cài đặt mô-đun oracle bằng lệnh
0. Sau khi cài đặt hoàn tất, hãy nhập mô-đun oracle[1, 'toy gun', 1, 18.0, 20.0, 'open'] [2, 'doll', 1, 10.0, 12.0, 'open'] [3, 'drum', 3, 30.0, 40.0, 'open'] [4, 'guitar', 1, 150.0, 155.0, 'open'] [5, 'skipping rope', 5, 90.0, 100.0, 'open'] [6, 'toy crossbow', 1, 150.0, 170.0, 'open'] [7, 'chess board', 1, 7.0, 10.0, 'open'] [8, 'no sale', 0, 0.0, 0.0, 'closed']
1[1, 'toy gun', 1, 18.0, 20.0, 'open'] [2, 'doll', 1, 10.0, 12.0, 'open'] [3, 'drum', 3, 30.0, 40.0, 'open'] [4, 'guitar', 1, 150.0, 155.0, 'open'] [5, 'skipping rope', 5, 90.0, 100.0, 'open'] [6, 'toy crossbow', 1, 150.0, 170.0, 'open'] [7, 'chess board', 1, 7.0, 10.0, 'open'] [8, 'no sale', 0, 0.0, 0.0, 'closed']
- Chúng tôi cần tên người dùng, mật khẩu và dsn [host & sid] để kết nối với python với cơ sở dữ liệu oracle
- tên tài khoản. cung cấp tên của người dùng mà bạn muốn kết nối. Trong trường hợp của chúng tôi, chúng tôi đang kết nối bằng cách sử dụng 'c##sqlserverguides' của người dùng thông thường
- mật khẩu mở khóa. Cung cấp mật khẩu cho tên người dùng đã nhập
- dsn. Nó bao gồm hai thứ, thông tin máy chủ và sid. Thông tin máy chủ trong trường hợp của chúng tôi là localhost nhưng trong trường hợp bạn đang kết nối với máy chủ thì hãy nhập địa chỉ IP của máy chủ đó tại đây. Sid mặc định là 'orcl', trong trường hợp bạn đã thay đổi nó hoặc tạo một cái mới thì hãy nhập cái đó thay cho orcl
- Trong cú pháp dưới đây, chúng tôi đã tạo một kết nối và sau đó hiển thị kết nối đó. Nếu kết nối được thiết lập thành công thì bạn sẽ thấy thông báo như bên dưới
# module
import cx_Oracle
# establish connection
con = cx_Oracle.connect[
user="c##sqlserverguides",
password="sqlserver",
dsn="localhost/orcl"
]
# print connection status
print[con]
- Con trỏ là đối tượng cơ sở dữ liệu giúp lấy dữ liệu từ cơ sở dữ liệu oracle. Khi đối tượng được tạo, bạn sử dụng phương thức thực thi của con trỏ để đặt truy vấn
- Để lấy dữ liệu từ cơ sở dữ liệu oracle, chúng ta có thể truyền truy vấn
2 hoặc chúng ta có thể sử dụng các phương thức[1, 'toy gun', 1, 18.0, 20.0, 'open'] [2, 'doll', 1, 10.0, 12.0, 'open'] [3, 'drum', 3, 30.0, 40.0, 'open'] [4, 'guitar', 1, 150.0, 155.0, 'open'] [5, 'skipping rope', 5, 90.0, 100.0, 'open'] [6, 'toy crossbow', 1, 150.0, 170.0, 'open'] [7, 'chess board', 1, 7.0, 10.0, 'open'] [8, 'no sale', 0, 0.0, 0.0, 'closed']
3[1, 'toy gun', 1, 18.0, 20.0, 'open'] [2, 'doll', 1, 10.0, 12.0, 'open'] [3, 'drum', 3, 30.0, 40.0, 'open'] [4, 'guitar', 1, 150.0, 155.0, 'open'] [5, 'skipping rope', 5, 90.0, 100.0, 'open'] [6, 'toy crossbow', 1, 150.0, 170.0, 'open'] [7, 'chess board', 1, 7.0, 10.0, 'open'] [8, 'no sale', 0, 0.0, 0.0, 'closed']
4 ,[1, 'toy gun', 1, 18.0, 20.0, 'open'] [2, 'doll', 1, 10.0, 12.0, 'open'] [3, 'drum', 3, 30.0, 40.0, 'open'] [4, 'guitar', 1, 150.0, 155.0, 'open'] [5, 'skipping rope', 5, 90.0, 100.0, 'open'] [6, 'toy crossbow', 1, 150.0, 170.0, 'open'] [7, 'chess board', 1, 7.0, 10.0, 'open'] [8, 'no sale', 0, 0.0, 0.0, 'closed']
5,[1, 'toy gun', 1, 18.0, 20.0, 'open'] [2, 'doll', 1, 10.0, 12.0, 'open'] [3, 'drum', 3, 30.0, 40.0, 'open'] [4, 'guitar', 1, 150.0, 155.0, 'open'] [5, 'skipping rope', 5, 90.0, 100.0, 'open'] [6, 'toy crossbow', 1, 150.0, 170.0, 'open'] [7, 'chess board', 1, 7.0, 10.0, 'open'] [8, 'no sale', 0, 0.0, 0.0, 'closed']
6. Các phương pháp này được giải thích chi tiết sau trong hướng dẫn này[1, 'toy gun', 1, 18.0, 20.0, 'open'] [2, 'doll', 1, 10.0, 12.0, 'open'] [3, 'drum', 3, 30.0, 40.0, 'open'] [4, 'guitar', 1, 150.0, 155.0, 'open'] [5, 'skipping rope', 5, 90.0, 100.0, 'open'] [6, 'toy crossbow', 1, 150.0, 170.0, 'open'] [7, 'chess board', 1, 7.0, 10.0, 'open'] [8, 'no sale', 0, 0.0, 0.0, 'closed']
Mã nguồn
Trong mã này, chúng tôi đã kết nối với cơ sở dữ liệu tiên tri bằng python với tên người dùng là 'c##sqlserverguides'. Tên bảng là gift_store và chúng tôi đã thực hiện một truy vấn để hiển thị tất cả các bản ghi từ bảng. Tất cả mã này được viết bằng Python phiên bản 3 và thông tin được lấy từ cơ sở dữ liệu tiên tri
[1, 'toy gun', 1, 18.0, 20.0, 'open']
[2, 'doll', 1, 10.0, 12.0, 'open']
[3, 'drum', 3, 30.0, 40.0, 'open']
[4, 'guitar', 1, 150.0, 155.0, 'open']
[5, 'skipping rope', 5, 90.0, 100.0, 'open']
[6, 'toy crossbow', 1, 150.0, 170.0, 'open']
[7, 'chess board', 1, 7.0, 10.0, 'open']
[8, 'no sale', 0, 0.0, 0.0, 'closed']
0đầu ra
Trong đầu ra này, Tất cả dữ liệu được lấy từ cơ sở dữ liệu oracle bằng python
Đọc. Cách lấy danh sách tất cả các bảng trong cơ sở dữ liệu Oracle
Cách đọc dữ liệu từ cơ sở dữ liệu Oracle bằng Python
Trong phần này, cách đọc dữ liệu từ cơ sở dữ liệu oracle trong python
- Để đọc dữ liệu, chúng tôi phải tìm nạp dữ liệu trước. Chúng tôi đã giải thích cách lấy dữ liệu từ cơ sở dữ liệu oracle bằng python
- Chúng tôi sẽ thực hiện tương tự ở đây nhưng lần này chúng tôi sẽ sử dụng phương pháp
6,[1, 'toy gun', 1, 18.0, 20.0, 'open'] [2, 'doll', 1, 10.0, 12.0, 'open'] [3, 'drum', 3, 30.0, 40.0, 'open'] [4, 'guitar', 1, 150.0, 155.0, 'open'] [5, 'skipping rope', 5, 90.0, 100.0, 'open'] [6, 'toy crossbow', 1, 150.0, 170.0, 'open'] [7, 'chess board', 1, 7.0, 10.0, 'open'] [8, 'no sale', 0, 0.0, 0.0, 'closed']
8 và[1, 'toy gun', 1, 18.0, 20.0, 'open'] [2, 'doll', 1, 10.0, 12.0, 'open'] [3, 'drum', 3, 30.0, 40.0, 'open'] [4, 'guitar', 1, 150.0, 155.0, 'open'] [5, 'skipping rope', 5, 90.0, 100.0, 'open'] [6, 'toy crossbow', 1, 150.0, 170.0, 'open'] [7, 'chess board', 1, 7.0, 10.0, 'open'] [8, 'no sale', 0, 0.0, 0.0, 'closed']
9 trong python[1, 'toy gun', 1, 18.0, 20.0, 'open'] [2, 'doll', 1, 10.0, 12.0, 'open'] [3, 'drum', 3, 30.0, 40.0, 'open'] [4, 'guitar', 1, 150.0, 155.0, 'open'] [5, 'skipping rope', 5, 90.0, 100.0, 'open'] [6, 'toy crossbow', 1, 150.0, 170.0, 'open'] [7, 'chess board', 1, 7.0, 10.0, 'open'] [8, 'no sale', 0, 0.0, 0.0, 'closed']
tìm nạp []
Sử dụng phương thức
# module
import cx_Oracle
# establish connection
con = cx_Oracle.connect[
user="c##sqlserverguides",
password="sqlserver",
dsn="localhost/orcl"
]
# print connection status
print[con]
0 trong python, chúng ta có thể tìm nạp tất cả các bản ghi từ cơ sở dữ liệu oracle. Trong ví dụ của chúng tôi, chúng tôi đã đặt điều kiện để tìm nạp tất cả các bản ghi có số lượng sản phẩm lớn hơn 1[1, 'toy gun', 1, 18.0, 20.0, 'open']
[2, 'doll', 1, 10.0, 12.0, 'open']
[3, 'drum', 3, 30.0, 40.0, 'open']
[4, 'guitar', 1, 150.0, 155.0, 'open']
[5, 'skipping rope', 5, 90.0, 100.0, 'open']
[6, 'toy crossbow', 1, 150.0, 170.0, 'open']
[7, 'chess board', 1, 7.0, 10.0, 'open']
[8, 'no sale', 0, 0.0, 0.0, 'closed']
5đầu ra
Trong lần xuất này, chỉ có 2 bản ghi có số lượng sản phẩm lớn hơn 1. Chỉ những hồ sơ đã được hiển thị ở đây
tìm nạp []
Trong
# module
import cx_Oracle
# establish connection
con = cx_Oracle.connect[
user="c##sqlserverguides",
password="sqlserver",
dsn="localhost/orcl"
]
# print connection status
print[con]
1, chúng tôi phải cung cấp số lượng hàng mà chúng tôi muốn hiển thị từ cơ sở dữ liệu. Nó chấp nhận n làm tham số trong đó n là tổng số bản ghi cần tìm nạp. Trong ví dụ dưới đây, chúng tôi chỉ tìm nạp 4 bản ghi[1, 'toy gun', 1, 18.0, 20.0, 'open']
[2, 'doll', 1, 10.0, 12.0, 'open']
[3, 'drum', 3, 30.0, 40.0, 'open']
[4, 'guitar', 1, 150.0, 155.0, 'open']
[5, 'skipping rope', 5, 90.0, 100.0, 'open']
[6, 'toy crossbow', 1, 150.0, 170.0, 'open']
[7, 'chess board', 1, 7.0, 10.0, 'open']
[8, 'no sale', 0, 0.0, 0.0, 'closed']
7đầu ra
Trong kết quả này, cơ sở dữ liệu oracle có tổng cộng 8 bản ghi nhưng chỉ có 4 bản ghi được hiển thị vì chúng ta đã chuyển 4 làm tham số trong phương thức
# module
import cx_Oracle
# establish connection
con = cx_Oracle.connect[
user="c##sqlserverguides",
password="sqlserver",
dsn="localhost/orcl"
]
# print connection status
print[con]
2tìm nạp []
Sử dụng phương thức python fetchone[], chúng ta chỉ có thể truy xuất 1 bản ghi từ cơ sở dữ liệu oracle bằng python
[1, 'toy gun', 1, 18.0, 20.0, 'open']
[2, 'doll', 1, 10.0, 12.0, 'open']
[3, 'drum', 3, 30.0, 40.0, 'open']
[4, 'guitar', 1, 150.0, 155.0, 'open']
[5, 'skipping rope', 5, 90.0, 100.0, 'open']
[6, 'toy crossbow', 1, 150.0, 170.0, 'open']
[7, 'chess board', 1, 7.0, 10.0, 'open']
[8, 'no sale', 0, 0.0, 0.0, 'closed']
9đầu ra
Trong đầu ra này, chỉ có một bản ghi được hiển thị nhưng truy vấn đã được chuyển để tìm nạp tất cả dữ liệu
Đọc. Kết nối Excel với cơ sở dữ liệu Oracle
Cách lấy dữ liệu từ cơ sở dữ liệu Oracle bằng Python
Trong phần này, chúng ta cách lấy dữ liệu từ cơ sở dữ liệu oracle trong python
- Trong hai phần trước của chúng tôi, chúng tôi đã hiển thị cách lấy dữ liệu từ cơ sở dữ liệu oracle trong python
- tìm nạp, đọc, truy xuất và trích xuất dữ liệu, tất cả những thứ này đều có ý nghĩa tương tự hoặc gần giống nhau. và chúng chỉ ngụ ý việc sử dụng lệnh chọn
- Sử dụng mô-đun python cx_Oracle, chúng ta có thể kết nối cơ sở dữ liệu oracle với python. Trong các phần trước, chúng tôi đã giải thích nó bằng một ví dụ
- Trong ví dụ của chúng tôi, chúng tôi đã truy xuất dữ liệu với điều kiện để hiển thị các bản ghi nơi cửa hàng mở cửa
[1, 'toy gun', 1, 18.0, 20.0, 'open']
[2, 'doll', 1, 10.0, 12.0, 'open']
[3, 'drum', 3, 30.0, 40.0, 'open']
[4, 'guitar', 1, 150.0, 155.0, 'open']
[5, 'skipping rope', 5, 90.0, 100.0, 'open']
[6, 'toy crossbow', 1, 150.0, 170.0, 'open']
[7, 'chess board', 1, 7.0, 10.0, 'open']
[8, 'no sale', 0, 0.0, 0.0, 'closed']
0đầu ra
Trong đầu ra này, dữ liệu được lấy từ cơ sở dữ liệu oracle bằng python. vì chúng tôi đã áp dụng một điều kiện để hiển thị dữ liệu với trạng thái cửa hàng là mở cửa
Cũng kiểm tra. Cách kiểm tra phiên bản cơ sở dữ liệu Oracle
Cách lấy dữ liệu lớn từ cơ sở dữ liệu Oracle bằng Python
Trong phần này, chúng ta sẽ tìm hiểu cách lấy dữ liệu lớn từ cơ sở dữ liệu oracle trong python
- Cơ sở dữ liệu Oracle có khả năng xử lý dữ liệu ở mọi kích cỡ. Nhưng khi chúng tôi tìm nạp dữ liệu lớn từ cơ sở dữ liệu oracle bằng python thì quá trình này sẽ mất nhiều thời gian
- Dữ liệu lớn có hơn 1000 cột và hàng triệu hàng. Tìm nạp dữ liệu lớn từ cơ sở dữ liệu oracle bằng python là không
- Sử dụng phương thức python ________ 43 để tìm nạp dữ liệu theo khối. Mọi số bạn sẽ cung cấp thay cho n là gì mà nhiều bản ghi sẽ được tìm nạp trong một lần
- Áp dụng điều này với vòng lặp for để tìm nạp lượng dữ liệu khổng lồ theo cách tối ưu
Đọc. Cách tạo bảng trong Oracle
Cách lấy dữ liệu từ cơ sở dữ liệu Oracle bằng Python mà không cần cx_oracle
Trong phần này, chúng ta sẽ tìm hiểu cách lấy dữ liệu từ cơ sở dữ liệu oracle trong python mà không cần mô-đun cx_oracle
- Mô-đun cx_oracle của Python rất quan trọng để làm việc với cơ sở dữ liệu oracle bằng python
- Không thể kết nối với cơ sở dữ liệu Oracle bằng python mà không sử dụng mô-đun cx_oracle
- Cách khác chúng ta có thể là bạn có thể thêm mô-đun cx_oracle vào môi trường. Bằng cách này, chúng tôi không phải cài đặt mô-đun cx_oracle để sử dụng nó
Cách trích xuất dữ liệu từ cơ sở dữ liệu Oracle bằng Python
Trong phần này, cách trích xuất dữ liệu từ cơ sở dữ liệu oracle bằng python
- Thông tin chi tiết đã được chia sẻ ở các phần trên. Ở đây chúng tôi sẽ hiển thị một ví dụ khác về trích xuất dữ liệu từ cơ sở dữ liệu oracle bằng python
- Trong ví dụ của chúng tôi, chúng tôi sẽ tìm nạp tất cả các bản ghi từ bảng gift_store nơi trạng thái cửa hàng đang mở và số lượng là 1
[1, 'toy gun', 1, 18.0, 20.0, 'open']
[2, 'doll', 1, 10.0, 12.0, 'open']
[3, 'drum', 3, 30.0, 40.0, 'open']
[4, 'guitar', 1, 150.0, 155.0, 'open']
[5, 'skipping rope', 5, 90.0, 100.0, 'open']
[6, 'toy crossbow', 1, 150.0, 170.0, 'open']
[7, 'chess board', 1, 7.0, 10.0, 'open']
[8, 'no sale', 0, 0.0, 0.0, 'closed']
2đầu ra
Trong đầu ra này, tất cả các bản ghi được tìm nạp bằng python từ cơ sở dữ liệu oracle. Các bản ghi này có trạng thái cửa hàng là mở và số lượng mua sản phẩm là 1
Đọc bảng thay đổi Thêm cột Oracle
Cách lấy dữ liệu từ cơ sở dữ liệu Oracle bằng Python
Trong phần này, chúng ta sẽ tìm hiểu cách lấy dữ liệu từ cơ sở dữ liệu oracle bằng python
- Trong các phần trước của chúng tôi, chúng tôi đã giải thích cách truy xuất dữ liệu từ cơ sở dữ liệu oracle bằng python
- Trong hai phần trước của chúng tôi, chúng tôi đã hiển thị cách lấy dữ liệu từ cơ sở dữ liệu oracle trong python
- tìm nạp, đọc, truy xuất và trích xuất dữ liệu, tất cả những thứ này đều có ý nghĩa tương tự hoặc gần giống nhau. và chúng chỉ ngụ ý việc sử dụng lệnh chọn
- Sử dụng mô-đun python cx_Oracle, chúng ta có thể kết nối cơ sở dữ liệu oracle với python. Trong các phần trước, chúng tôi đã giải thích nó bằng một ví dụ
- Trong ví dụ của chúng tôi, chúng tôi đã truy xuất dữ liệu với điều kiện để tính tổng lợi nhuận do gift_store tạo ra. Tổng lợi nhuận sẽ bằng giá bán – giá vốn
[1, 'toy gun', 1, 18.0, 20.0, 'open']
[2, 'doll', 1, 10.0, 12.0, 'open']
[3, 'drum', 3, 30.0, 40.0, 'open']
[4, 'guitar', 1, 150.0, 155.0, 'open']
[5, 'skipping rope', 5, 90.0, 100.0, 'open']
[6, 'toy crossbow', 1, 150.0, 170.0, 'open']
[7, 'chess board', 1, 7.0, 10.0, 'open']
[8, 'no sale', 0, 0.0, 0.0, 'closed']
3đầu ra
Trong kết quả này, dữ liệu được lấy từ cơ sở dữ liệu oracle bằng python và lợi nhuận của gift_store được tính toán
Trong hướng dẫn này, chúng ta đã học cách lấy dữ liệu từ cơ sở dữ liệu oracle trong python. Ngoài ra, chúng tôi đã đề cập đến các chủ đề này
- Điều kiện tiên quyết - Chi tiết cơ sở dữ liệu
- Cách lấy dữ liệu từ cơ sở dữ liệu Oracle bằng Python
- Cách đọc dữ liệu từ cơ sở dữ liệu Oracle bằng Python
- Cách lấy dữ liệu từ cơ sở dữ liệu Oracle bằng Python
- Cách lấy dữ liệu lớn từ cơ sở dữ liệu Oracle bằng Python
- Cách lấy dữ liệu từ cơ sở dữ liệu Oracle bằng Python mà không cần cx_oracle
- Cách trích xuất dữ liệu từ cơ sở dữ liệu Oracle bằng Python
- Cách lấy dữ liệu từ cơ sở dữ liệu Oracle bằng Python
Bijay
Tôi là Bijay có hơn 15 năm kinh nghiệm trong ngành công nghiệp phần mềm. Trong thời gian này, tôi đã làm việc trên MariaDB và sử dụng nó trong rất nhiều dự án. Hầu hết độc giả của chúng tôi đến từ Hoa Kỳ, Canada, Vương quốc Anh, Úc, New Zealand, v.v.
Bạn muốn tìm hiểu MariaDB? . Ngoài ra, tôi là MVP của Microsoft