1. 程式人生 > >python3.6 與MYSQL的安裝與連接

python3.6 與MYSQL的安裝與連接

環境變量path cli .exe net 建立 數據表 錯誤 auto title

因為要做文本相似性對比,所以需要大量資料,也需要把這些資料進行存儲,進行比對時可以直接提取文本的id

首先對MYSQL進行安裝,我是從百度軟件庫中下載的MYSQL,

安裝

然後進行安裝,之前我從官網下載的,使用不了,可能是之前已經安裝了一遍MYSQL,百度軟件這個是安裝時自帶32/64位,你可以自己選擇,

雖然名字是5.6.24,可是安裝的MYSQL是5.7.17版的需要註意的是在安裝之前你需要下載並安裝一下Python4.3,因為安裝的軟件只有與python3.4的connector,所以需要實現安裝一下,我的安裝流程主要是看了一本叫《Python 3 基礎教程》裏面恰巧有這個安裝步驟

安裝需要註意:

1.在安裝之前你需要下載並安裝一下Python4.3,因為安裝的軟件只有與python3.4的connector

2.port :3306

3.MYSQL安裝完成後,將安裝目錄下的bin文件夾添加到系統環境變量path中,這樣輸入mysql -u root -p,才會啟動mysql

4.不需要對my-default.ini進行修改。

如何將python3.6與MYSQL進行連接?

1.PyMySQL 是在 Python3.x 版本中用於連接 MySQL 服務器的一個庫,Python2中則使用mysqldb。所以需要pip install PyMySQL

2.進行數據庫的連接,我們可以在CMD中啟動mysql,或者打開

來啟動,首先我們需要在mysql下新建一個database 如:mysql> create database mydb; 然後在mysql> use mydb; create table students(創建一個students表)

3.在python編譯下,對創建的表進行插入,修改,刪除等操作時需要啟動mysql,而且還有mysql> use mydb; (就是表所在的數據庫)

一下用一個實例進行說明:主要是參考了http://www.cnblogs.com/hank-chen/p/6624299.html,也對其裏面的一些bug進行了更改。

[html] view plain copy
  1. mysql> create database mydb;

剛開始測試這個例子時用創建了一個money的表,但是在python編譯時出現

所以重新對其創建了一個save.money(主要要把之前的表給刪了,不然會出現錯誤),我用了‘id‘,出現了語法錯誤,所以直接id就行,不要帶引號。
[python] view plain copy
  1. import pymysql
  2. # 連接數據庫
  3. connect = pymysql.Connect(
  4. host=‘localhost‘,
  5. port=3306,
  6. user=‘root‘,
  7. passwd=‘1234‘,
  8. db=‘save‘,
  9. charset=‘utf8‘
  10. )
  11. # 獲取遊標
  12. cursor = connect.cursor()
  13. # 插入數據
  14. sql = "INSERT INTO money (name, account, saving) VALUES ( ‘%s‘, ‘%s‘, %.2f )"
  15. data = (‘雷軍‘, ‘13512345678‘, 10000)
  16. cursor.execute(sql % data)
  17. connect.commit()
  18. print(‘成功插入‘, cursor.rowcount, ‘條數據‘)
  19. # 修改數據
  20. sql = "UPDATE money SET saving = %.2f WHERE account = ‘%s‘ "
  21. data = (8888, ‘13512345678‘)
  22. cursor.execute(sql % data)
  23. connect.commit()
  24. print(‘成功修改‘, cursor.rowcount, ‘條數據‘)
  25. # 查詢數據
  26. sql = "SELECT name,saving FROM money WHERE account = ‘%s‘ "
  27. data = (‘13512345678‘,)
  28. cursor.execute(sql % data)
  29. for row in cursor.fetchall():
  30. print("Name:%s\tSaving:%.2f" % row)
  31. print(‘共查找出‘, cursor.rowcount, ‘條數據‘)
  32. # 刪除數據
  33. sql = "DELETE FROM money WHERE account = ‘%s‘ LIMIT %d"
  34. data = (‘13512345678‘, 1)
  35. cursor.execute(sql % data)
  36. connect.commit()
  37. print(‘成功刪除‘, cursor.rowcount, ‘條數據‘)
  38. # 事務處理
  39. sql_1 = "UPDATE money SET saving = saving + 1000 WHERE account = ‘18012345678‘ "
  40. sql_2 = "UPDATE money SET expend = expend + 1000 WHERE account = ‘18012345678‘ "
  41. sql_3 = "UPDATE money SET income = income + 2000 WHERE account = ‘18012345678‘ "
  42. try:
  43. cursor.execute(sql_1) # 儲蓄增加1000
  44. cursor.execute(sql_2) # 支出增加1000
  45. cursor.execute(sql_3) # 收入增加2000
  46. except Exception as e:
  47. connect.rollback() # 事務回滾
  48. print(‘事務處理失敗‘, e)
  49. else:
  50. connect.commit() # 事務提交
  51. print(‘事務處理成功‘, cursor.rowcount)
  52. # 關閉連接
  53. cursor.close()
  54. connect.close()
結果如下:

附加MySQL相關知識:

如何用MySQL建立數據庫

啟動mysql
查看現有數據庫
mysql> show databases;

創建數據庫(假如數據庫名為 mydb)
mysql> create database mydb;

刪除數據庫(假如數據庫名為 mydb)
mysql> drop database accounts;

使用數據庫(假如使用數據庫 mydb)
mysql> use mydb;
執行完使用數據庫命令後,就可以對該數據庫進行創建、修改、插入、刪除表等操作,

mysql數據庫怎麽創建數據表並添加數據

使用 create table 語句可完成對表的創建, create table 的常見形式:
create table 表名稱(列聲明);
以創建 students 表為例, 表中將存放 學號(id)、姓名(name)、性別(sex)、年齡(age)、聯系電話(tel) 這些內容:
create table students

id int unsigned not null auto_increment primary key,
name char(8) not null,
sex char(4) not null,
age tinyint unsigned not null,
tel char(13) null default "-"
);

向表中插入數據
insert 語句可以用來將一行或多行數據插到數據庫表中, 使用的一般形式如下:
insert [into] 表名 [(列名1, 列名2, 列名3, ...)] values (值1, 值2, 值3, ...);
其中 [] 內的內容是可選的, 例如, 要給 samp_db 數據庫中的 students 表插入一條記錄, 執行語句:
insert into students values(NULL, "王剛", "男", 20, "13811371377");
按回車鍵確認後若提示 Query Ok, 1 row affected (0.05 sec) 表示數據插入成功。 若插入失敗請檢查是否已選擇需要操作的數據庫。

有時我們只需要插入部分數據, 或者不按照列的順序進行插入, 可以使用這樣的形式進行插入:
insert into students (name, sex, age) values("孫麗華", "女", 21);

python3.6 與MYSQL的安裝與連接